In our web-client we have abouth 20 different databaseservers which we use. All of these have Active Connections 0/30 as setting.
Now with one databaseserver we have problems that the active connections aren’t released.
So we are getting ‘com.servoy.j2db.dataprocessing.DataException: Cannot get a connection, pool error Timeout waiting for idle object’ on this databaseserver continuously.
With all the other databaseservers we don’t have these problems.
What could be a problem with this databaseserver, that the active connections aren’t released? (Network problems of some sort maybe?)
Current stacktrace is attached: with active connections = 30/30 on that server.
more users? some kind of different code for those users?
Form servoy’s point of view there is no different between 1 server or the other. So somehow something must hold on to those connections and don’t release them
But will something in servoy will hold on that connection?
Or can it be that there is no reaction or feedback at some point from the databaseserver, that servoy is waiting for that?
And what i see there i kind of seen before, what happens is that 29 requests are trying to borrow and connection.
They are all waiting on 1 thread that also is in the borrow of the connection. (so it is not doing the actual query)
and that 1 thread/connection is executing the validation query, and just waits on that, What kind of validation query do you have there?
Can it be that that queries a table that can have locks or transactions???
so the only thing i can say is check at that moment the database and look what connections are there live at the moment and what they are doing
Servoy jus waits for that query to return.