Hello,

i've been adding almost successfully Jackrabbit Repository to our project,
basically for file storing purposes. Everything works great, with some exceptions, one which is critical, once in a while, following no apparent pattern an exception is thrown
saying the pool is out of connections, this one:

Caused by: com.sun.appserv.connectors.internal.api.PoolingException:
Las conexiones en uso equivalen al valor de max-pool-size y el tiempo caducado de max-wait-time. No se pueden asignar m?s conexiones. (Quantity of connections in use are same as defined max-pool-size and max-wait-time already elapsed. Can't assign any more connections.) at com.sun.enterprise.resource.pool.ConnectionPool.getResource(ConnectionPool.java:418) at com.sun.enterprise.resource.pool.PoolManagerImpl.getResourceFromPool(PoolManagerImpl.java:245) at com.sun.enterprise.resource.pool.PoolManagerImpl.getResource(PoolManagerImpl.java:170) at com.sun.enterprise.connectors.ConnectionManagerImpl.getResource(ConnectionManagerImpl.java:332) at com.sun.enterprise.connectors.ConnectionManagerImpl.internalGetConnection(ConnectionManagerImpl.java:301) at com.sun.enterprise.connectors.ConnectionManagerImpl.allocateConnection(ConnectionManagerImpl.java:190) at com.sun.enterprise.connectors.ConnectionManagerImpl.allocateConnection(ConnectionManagerImpl.java:165) at com.sun.enterprise.connectors.ConnectionManagerImpl.allocateConnection(ConnectionManagerImpl.java:160) at org.apache.jackrabbit.jca.JCARepositoryHandle.login(JCARepositoryHandle.java:75)
    ... 120 more

Our setup/context is the following:

VM: java 7 (1.7.0_101)
container: Glassfish 3.1.2.2
main framework for webapp: struts 2
DB (mysql) persistence manager: Hibernate 4.2.19.Final

Jackrabbit stuff/versions:
jackrabbit-core 2.14.4
jcr 2.0
OCM: jackrabbit-ocm 2.0.0
Connector: jackrabbit-jca-2.14.4 (This one is deployed as a connector in glassfish, associated with a connection pool )

The configuration for JCA connector is the following:

Connection definition: javax.jcr.Repository

Initial and minimum pool size: 8 Connections
Maximum pool size: 32 Connections
Switch Pool size: 2 connections
Activity Timeout 300  seconds
Max Wait Timeout: 60000  miliseconds
Transaction Support: XATransaction

Matching Connections: Yes.

bindSessionToTransaction: True

It seems to be caused randomnly, as we're able to produce and store a couple thousand of files within minutes with no crashes (every file is stored within a transaction and with a single Session to the repository). Should the pool be out of connections,
it should happen immediately i think (???).

So, if someone has any indication/clues it would be greatly appreciated,
thanks in advance, best regards,
Manuel.


Reply via email to