Subject Interbase connection problem. - MORE INFO
Author Johannes Pretorius
Good day

I have sat down and looked at the source of the Delphi program that works
with the database as the idea that the trigger on the database is giving a
problem does not
make sense and this is the result.

I have a Delphi server program and a Delphi client program that runs on the
same database. Client is Delphi 3 and Server is Delphi 5.
The client program starts a business trigger and the server then tries to
act on this trigger, but its connection that is setup in the BDE as
localhost:d:\db\promed.gdb is then dropped. in the sense that I get a 10054
error locally at the server. It seems this is happening at a other client also
but from the client machines also. Will the server program really have a
problem if there is a problem with the networkcard as locahost is the
loopback device that
is ???

Note the following :

This is a server that we have written our selves that will on bussines
events (adding a account for instance) be notified by the client via a custom
socket protocol that runs on port 4220 and then the server connects as a
client to the database and does whatever is registered to do on that event.

This is a all custom thing , but in the end it is only a socket
notification to the server program that the event has trigger and then the
server will act on it as a client
again. So in short both programs connects to the database as a client

The reason we did this is that the program in D3 was written by contractors
who used a lot of freeware components and we cannot find them to upgrade ,
and the code is
hard to convert to NATIVE interbase components , so we are using BDE. This
the trigger server idea came to play.

I hope this gives more information on the subject

Any help will be apreciated.

Interbase version : 5.6
Database sizes from : 250 - 830 MB

Other strange events :

When trying to get the connection user list of the interbase database I get
a connection lost to database. After that the server crashes and need to be