I need some clarification on Interbase 5.5 Connectivity and Licensing scheme...
My problem is this, we have previously installed client with a Delphi 5 app using native Delphi data-centri controls using the BDE/ODBC DSN connecting to Interbase 5.5 GDBs. Historically, this client have a user that uses an app analysis-based functionality that spams DB connections.
Now since they hired one other that has the same task as this user using this piece of functionaly that they now exhibit EDBEngine Error exception-handled delphi errors only stating "connection lost to the Database". Naturally, we have checked the IB Guardian and Server Services if running or not. If we try to restart or shut down these services, we get the famous "The Interbase Server services terminated with the following error. Overlapped I/O operation is in progress".
We have seen this behavior before, and the last time I was looking for solution it ultimately led me to a WinsockXPFix utility. But I do not think Winsock is the problem here.
I examined the actual server's task manager and I have seen two instances of IB guardian running in there, so what I did is, shut down the Guardian and Server services completely off even if it errors out with the "..Overlapped I/O operation in progress", looked at the task manager again to make sure there aren't anymore instances of the IB guardian running in there, then manually starting the IB Guardian in "Start-->Programs-->Interbase-->IB Guardian", not even checking if the Guardian Win services is physically running or not just this manual Guardian startup, and sure enough, the app is running normal again with this one user using this piece of functionality, JUST ONE USER. Now as soon as we had another user cliked on this pice of functionality and BOOM! This problem occurred all over again.
Because of this behavior it makes me validate the license counter underneath the Guardian or the server. Seems like we might be maxing the x number of connections allowed on this Delphi / Interbase 5.5 embedded license stuff. I do not think that this counter is resetting properly, but not absolutely certain if this is the case or not so I came here looking for some answers, validation and possible guidance on what I needed to do short of upgrading to Interbase 7.5. I don't even know for certain if Interbase 7.5 already addressed this issue or not, supposedly it did, but have not certified it yet.
Can someone shed a little light on this subject? Is there a workaround on this? Or are we stuck with the solution of upgrading this client with Interbase 7.5? Is there any guarantee that this will not happen in Interbase 7.5?
My cause is lost on tweaking the Delphi app further to accommodate this shortcoming since our tech management is not willing to shed DEV time on this product since its old.