Subject ufd library works with FB 1.5.x superserver but not with classic server
Author vincent_kwinsey

I have my proprietary udf library and it is working with FB 1.5.x superserver but is not working with classic server. Any select which uses some function from my library results in:

*** IBPP::SQLException ***
Context: Database::Statistics
Message: isc_database_info failed

SQL Message : -902
Unsuccessful execution caused by a system error that precludes
successful execution of subsequent statements

Engine Code : 335544721
Engine Message :
Unable to complete network request to host "localhost".
Error writing data to the connection.
An existing connection was forcibly closed by the remote host.

And the firebird.log contains:
MYNAME (Client) Mon Mar 22 08:49:49 2010
INET/inet_error: send errno = 10054

Nothing like this happens (even on classic server) when I am issuing select that uses function from library supplied with Firebird installation like ib_udf.dll.

I found that send 'errno = 10054' usualy indicates some unreported error which makes server unavailable and not the root cause of the problem.

What can be the cause of these problems? I am following all the guidelines for udf development (like use of special IB memory allocation functions etc.). And there is said that development of udf's for superserver is a bit harder than for classic server, this time the opposite is true.