Are you sure the app is releasing the connection when it is done with it? Have you tracked the connection usage using the jboss.jca:service=ManagedConnectionPool,name=DmsiiMyDB-DS MBean? If the app does not release the connections, then yes when it attempt to get a fourth connection it will be blocked.
Once all three connections have been established, those connections will remain active until they time out after being unused. And setting the timeout to 1 minute is not a good idea - usually 10-15 minutes is better.
We have run the specjappserver benchmark against the DMSII JDBC driver and have not had issues with it releasing connections.
I am going to assume that you have purchased support for JBoss from Unisys (I know you must have such support for DMSII). It might be better it you opened a trouble report with Unisys, then the guys who work on the JDBC driver can help you (it's been many years since I worked on that...)
My theory is: JBoss is not managing correctly connection pooling with DMS-II Jdbc Driver. Every time a connection is requested JBoss establish it with DMS-II Database and do not release it after use. When the number of requests reaches its maximum value new connections are refused and the old connection are not release for reuse.
I am use JBOSS 4.2.0-GA-SP2 , JDK 18.104.22.168 .
Can anybody help me???
I bet that your application is not releasing the connection back to the pool, you ready for the bet ;)
Use listInUseConnections() operation of the CacheConnectionMBean to determine which part of the code is causing the connections to leak
For more details refer this