We're in the process of testing an upgrade from JBoss 4.0.3 to JBoss 6.0.1.
Configuration and general functionality seem to be fine, however under load after about 30 minutes of testing under 'typical' configurations we're seeing messages like so:
Exception caught while trying to Query Mainframe through JMS com.xxx.util.exception.BackendServiceException: The JMS resource creation failed: com.ibm.msg.client.jms.DetailedJMSException: MQJCA1011:Failed to allocate a JMS connection. An internal error caused an attempt to allocate a connection to fail. See the linked exception for details of the failure.
.. linked exception
Caused by: javax.resource.ResourceException: IJ000655: No managed connections available within configured blocking timeout (30000 [ms])
It would appear that pooling/connection management is VERY different in JBoss EAP 6.0.1(JBoss 7) than it was in 4.0.3. or something else is causing connections to remain open and in use where we wouldn't expect them to, despite the code we've written remaining the same.
Jboss Version: 6.0.1 EAP ( Open Source Version 7.1.3 )
MQ Version: 18.104.22.168 ( Middleware please let me know if I have this correct )
The issue we see occurs very quickly (<30 minutes of load, where concurrent users > 150 )
Restarting the app server allows for low volume usage.
The basic test case being:
We have 2 connection factories defined ( one JMS 1.1 compliant, another JMS 1.0 QueueConnection Factory ) and 57 queues defined as admin objects. 75 'connections' are allowed for each connection factory, and it would appear after that short of a run time we run entirely out of those connections as wait times exceed the max wait of 30 seconds.