cannot get element in pool

"Hans J. Prueller" <[email protected]> Wed, 16 Feb 2011 21:47:03 +0100
Newsgroups gmane.comp.java.objectweb.jonas
Organization LBS logics GmbH
Message-ID <1297889223.12591.19.camel@kodos>
hi all,

we have successfully migrated our existing java 2 ee 1.4 based EAR to
Java ee 5 and JOnAS 5.2 (pre-m4).

I can deploy the EAR without errors and login to the contained webapp
and do some clicks. After some time

the following error occurs:

javax.ejb.EJBException: java.lang.IllegalArgumentException: Cannot get
element in the pool
	at
org.ow2.easybeans.proxy.client.AbsInvocationHandler.handleThrowable(AbsInvocationHandler.java:176)
	at
org.ow2.easybeans.proxy.client.ClientRPCInvocationHandler.invoke(ClientRPCInvocationHandler.java:218)
	at
org.ow2.easybeans.proxy.client.ClientRPCInvocationHandler.invoke(ClientRPCInvocationHandler.java:111)
	at $Proxy112.checkSpammingDevices(Unknown Source)
	at
com.lbslogics.ims.servlet.job.JobCheckSpammingDevice.execute(JobCheckSpammingDevice.java:41)
	at org.quartz.core.JobRunShell.run(JobRunShell.java:191)
	at org.quartz.simpl.SimpleThreadPool
$WorkerThread.run(SimpleThreadPool.java:516)
Caused by: java.lang.IllegalArgumentException: Cannot get element in the
pool
	at
org.ow2.easybeans.container.session.stateless.StatelessSessionFactory.getBean(StatelessSessionFactory.java:107)
	at
org.ow2.easybeans.container.session.stateless.StatelessSessionFactory.localCall(StatelessSessionFactory.java:124)
	at
org.ow2.easybeans.container.session.SessionFactory.rpcInvoke(SessionFactory.java:233)
	at
org.ow2.easybeans.rpc.rmi.server.RMIServerRPCImpl.getEJBResponse(RMIServerRPCImpl.java:106)
	at sun.reflect.GeneratedMethodAccessor150.invoke(Unknown Source)
	at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
	at
org.ow2.carol.rmi.jrmp.server.JUnicastServerRef.dispatch(JUnicastServerRef.java:167)
	at sun.rmi.transport.Transport$1.run(Transport.java:159)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
	at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
	at sun.rmi.transport.tcp.TCPTransport
$ConnectionHandler.run0(TCPTransport.java:790)
	at sun.rmi.transport.tcp.TCPTransport
$ConnectionHandler.run(TCPTransport.java:649)
	at java.util.concurrent.ThreadPoolExecutor
$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor
$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:662)
Caused by: org.ow2.util.pool.api.PoolException: No more instances
available
	at
org.ow2.util.pool.impl.enhanced.EnhancedPool.get(EnhancedPool.java:201)
	at
org.ow2.easybeans.container.session.PoolWrapper.get(PoolWrapper.java:71)
	at
org.ow2.easybeans.container.session.PoolWrapper.get(PoolWrapper.java:40)
	at
org.ow2.easybeans.container.session.stateless.StatelessSessionFactory.getBean(StatelessSessionFactory.java:105)
	... 17 more
Caused by: org.ow2.util.pool.impl.enhanced.api.TimeoutPoolException
	at
org.ow2.util.pool.impl.enhanced.impl.keepbusy.KeepBusyPool.get(KeepBusyPool.java:229)
	at
org.ow2.util.pool.impl.enhanced.impl.limited.LimitedWaiterPool.get(LimitedWaiterPool.java:70)
	at
org.ow2.util.pool.impl.enhanced.EnhancedPool.get(EnhancedPool.java:197)
	... 20 more



Can you give me a hint what this means? I am working on my development
workstation, freshly deployed the EAR and have tested
the webapp with a single user, doing single click after click -- so how
could I reach "no more instances available" from the pool 
with a single user?


I guess I found the SLSB that makes these problems and looked at
deployment info in jonasAdmin which says:

Monitoring
     numberOfCalls
 
0

totalBusinessProcessingTime
 
0

averageBusinessProcessingTime
 
0

     poolItemsBusy
 
0

poolItemsAvailable
 
0

           poolMin
 
0

           poolMax
 
-1

         poolSpare
 
15

    poolMaxWaiters
 
1000

so - poolItemsAvailable is really zero  - for the other EJB's this is in
most cases 15.  

Any idea what the problem could be?

regards,
hans