|Subject||*** possible bug in FB 2.5.2 supperclassic with UDF ***|
Hi to all.
I use for years a udf lib compiled in delphi (initially only in 32bit version and last 2years also in 64bit version)
I hadn't any problem until recently when i changed some of Firebird installations from Superserver (32 or 64 bit) to SuperClassic (also 32 or 64 bit).
From then, i started notice firebird random shutdowns with this message in log
The user defined function: FICAM_ANSI_GR_UPPERCASE
referencing entrypoint: icam_ansi_gr_uppercase
in module: ICAM_FB_LIB
caused the fatal exception: Access violation.
The code attempted to access a virtual
address without privilege to do so.
This exception will cause the Firebird server
to terminate abnormally.
The collapse happens some times the same day or never for 1 week.
Finally i managed to reproduce the problem in my devel. pc BUT ***only*** in superclassic version of firebird.
I mean that with exactly the same database and queries the SS and Classic version run fine but SuperClassic breaks down.
From that, i consider that the implementation of UDF is Ok and the problem is in Firebird itself
Problem happens in Firebird 18.104.22.168540 (fb_inet_server) in both 32 and 64 bit only in SuperClassic mode
I tried also snapshot 22.214.171.124715 and the problem is still there
Windows OS: 2003 Server 32bit, 2008 64bit, Windows7 64bit
USD declaration: (return mechanism: by reference)
DECLARE EXTERNAL FUNCTION FICAM_ANSI_GR_UPPERCASE CSTRING(8192)
RETURNS CSTRING(8192) FREE_IT
ENTRY_POINT 'icam_ansi_gr_uppercase' MODULE_NAME 'ICAM_FB_LIB';
Any thoughts or advice? Is the declaration ok for superclassic also?
Is possible to exist something wrong in the implementation of UDF that create problem only in super classic mode?
Thanks in advance