Receiving "J2CA0020E: the connection pool manager could not allocate a managed connection" error message when attempting a mass provisioning effort in IBM Tivoli Identity Manager V4.5
 Technote (troubleshooting)
 
Problem(Abstract)
Getting "J2CA0020E: the Connection Pool Manager could not allocate a Managed Connection" when attempting a mass provisioning effort in IBM® Tivoli® Identity Manager V4.5. This error appears in the SystemOut.log file of IBM WebSphere® Application Server.
 
Cause
WebSphere Application Server might not be able to open additional connections to the Java™ Message Service (JMS) Connection Pool. This can happen if the IBM Tivoli Identity Manager enRole.properties file is modified in an inappropriate manner. The enRole.properties file has queue-specific entries that allow the application of maximum settings to each individual messaging queue. If the IBM Tivoli Identity Manager properties are changed so that the total sum of the MAX_THREADS parameters in that file exceeds the MAX_CONNECTIONS in WebSphere Application Server JMS connection pool, this J2CA0020E error can occur:

8/17/04 18:00:52:288 PDT] 60c9012e ConnectionMan E J2CA0020E: The Connection Pool Manager could not allocate a Managed Connection:
com.ibm.websphere.ce.j2c.ConnectionWaitTimeoutException: Connection not available, Timed out waiting.

at com.ibm.ejs.j2c.poolmanager.FreePool.createOrWaitForConnection
(FreePool.java:996)


The ConnectionWaitTimeoutException occurs because all of the IBM Tivoli Identity Manager queue connection factory connection pool connections are in use.

Note: This technote is the WebSphere Application Server version of the IBM Tivoli Identity Manager technote error message that occurs when attempting a mass provisioning effort in IBM Tivoli Identity Manager V4.5.
 
Resolving the problem
Do one of the following:
  • Modify the IBM Tivoli Identity Manager enRole.properties file so that the sum of the individual MAX_THREADS values does not exceed the connection pools Max Connections setting identified in the WebSphere Application Server administrative console.

    or

  • Increase the Max Connections setting in the WebSphere Application Server administrative console to be equal to the sum of the MAX_THREADS values.
Here is an excerpt from the $ITIM_HOME\data\enRole.properties file showing the default MAX_THREADS setting for each individual messaging queue:

enrole.messaging.adhocSyncQueue.attributes=TRANSACTED=true RECEIVE_TIMEOUT=60 MAX_THREADS=5 MIN_THREADS=1 PRIORITY=5
enrole.messaging.workflowQueue.attributes=TRANSACTED=true RECEIVE_TIMEOUT=60 MAX_THREADS=10 MIN_THREADS=5 PRIORITY=5
enrole.messaging.workflowPendingQueue.attributes=TRANSACTED=true RECEIVE_TIMEOUT=60 WAIT_TIME=0 OVERCAPACITY_WAIT_TIME=10 MAX_THREADS=5 MIN_THREADS=2 PRIORITY=5
enrole.messaging.workflowAbortQueue.attributes=TRANSACTED=true RECEIVE_TIMEOUT=60 WAIT_TIME=0 MAX_THREADS=5 MIN_THREADS=1 PRIORITY=5
enrole.messaging.remoteServicesQueue.attributes=TRANSACTED=false RECEIVE_TIMEOUT=60 WAIT_TIME=0 MAX_THREADS=7 MIN_THREADS=2 PRIORITY=5
enrole.messaging.remotePendingQueue.attributes=TRANSACTED=false RECEIVE_TIMEOUT=60 WAIT_TIME=0 MAX_THREADS=10 MIN_THREADS=2 PRIORITY=5
enrole.messaging.mailServicesQueue.attributes=TRANSACTED=false RECEIVE_TIMEOUT=60 WAIT_TIME=0 MAX_THREADS=3 MIN_THREADS=1 PRIORITY=5

In the WebSphere Application Server administrative console, the equivalent MAX_THREADS setting is located at:

WebSphere JMS Provider > WebSphere Queue Connection Factories > ITIM Queue Connection Factory > Connection Pools (Configuration - General Properties) Max Connections

This is the WebSphere Application Server setting for the total number of connection pool connections allowed by WebSphere Application Server.

If the sum of the MAX_THREADS settings for all messaging queues specified in the enRole.properties file exceeds the Max Connections setting identified in the WebSphere Application Server administrative console, you might encounter this J2CA0020E WSAS error. Currently the IBM Tivoli Identity Manager installation defaults this WebSphere Application Server Connection Pools Max Connections setting to 50; therefore, the recommendation is to ensure that the sum of the individual MAX_THREADS values in the IBM Tivoli Identity Manager enRole.properties file do not exceed the WebSphere Application Server Max Connections (set to 50 by IBM Tivoli Identity Manager during installation).
 
 
Cross Reference information
Segment Product Component Platform Version Edition
Application Servers Runtimes for Java Technology Java SDK
 
 


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server > DB Connections/Connection Pooling
Operating system(s): Windows
Software version: 6.0
Software edition:
Reference #: 1195276
IBM Group: Software Group
Modified date: Jan 7, 2005