This content has been marked as final. Show 3 replies
Hello Matthias,1 person found this helpful
Initial Pool Size is set to 3, Minimum Connections to 5 and Maximum Connections to 20.Could it be 5 / 3 / 20? That would make more sense...
The only way to solve the problem and to release the connections is to restart the GlassFish instance. The problem occurs randomly. The strange thing is that this is a development server, used by only 5 people at the maximum. So I believe 20 connections should be more than enough, no?One developer can be enough to jam an instance. It is very reasonable to limit the number of connections and I wouldn't think about increasing that limit, because it won't solve your problem.
The reason is more likely to be in the applications you have, or in the way your APEX developers work on them. A common mistake is not to communicate problems with an application function. If a certain page call/... produces a long running (hanging) query (or set of queries), a developer might tend to open a new window/tab or hit some non-reacting button again. Every client request (not every client!) will be serviced by the pool, even if the same client still has other requests pending (or even aborted on client side). In addition to restart your APEX Listener (and hence stop the database session) you could also "kill" the database session at database level.
But I'd recommend to take a look at the 20 sessions your 5 people where keeping busy when you've hit the limit and try to find out which application/s is/are causing the hanging sessions.
Ok, thanks for the feedback. I will check the sessions and SQL again the next time it happens. The strange thing is that we never had the problem when we were still working with Oracle's HTTP Server (Apache). It all started after we migrated to the APEX listener with GlassFish. One thing I was wondering: do you have to make some changes to the GlassFish connection pool to match the settings of the APEX listener?
The strange thing is that we never had the problem when we were still working with Oracle's HTTP Server (Apache).Could be a coincidence that a bug in an application appeared recently after migrating to APEX Listener.
One thing I was wondering: do you have to make some changes to the GlassFish connection pool to match the settings of the APEX listener?No, APEX Listener doesn't use the GlassFish connection pool but brings its "own" (UCP). This is necessary to keep APEX Listener as independent from container (version) specific aspects as possible.