We got an issue likely related to this one.

We use a bean with StrictMaxPool and maxSize=1.
The method of this bean should not be executed by two threads at the same time.
(Sort of mutual exclusion mechanism.)

Though, when the system is under heavy load, we end up with several instances of the bean.

In the log we see also lots of "javax.ejb.EJBException: Failed to acquire the pool semaphore, strictTimeout=3000".
At some point, the jmx-console shows the bean has a MaxSize of 1 and AvailableCount of 308!?

Later, we also activated the TRACE log on org.jboss.ejb3.pool:

(...)
2013-03-06 10:53:12,358 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#28[10.4.193.71:55349]) Get instance org.jboss.ejb3.pool.StrictMaxPool@18a9400#0#class be.xxxxxxxx.service.impl.BbbbserviCeImpl
2013-03-06 10:53:12,358 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#21[10.4.193.71:55354]) Acquired(true) strictMaxSize semaphore, remaining=0
2013-03-06 10:53:12,359 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#21[10.4.193.71:55354]) 0/1 Free instance:org.jboss.ejb3.pool.StrictMaxPool@18a9400#class be.xxxxxxxx.service.impl.BbbbserviCeImpl
2013-03-06 10:53:12,359 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#30[10.4.193.71:55371]) Acquired(true) strictMaxSize semaphore, remaining=0
2013-03-06 10:53:12,359 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#30[10.4.193.71:55371]) 0/1 Free instance:org.jboss.ejb3.pool.StrictMaxPool@18a9400#class be.xxxxxxxx.service.impl.BbbbserviCeImpl
2013-03-06 10:53:12,360 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#11[10.4.193.71:55341]) 1/1 Free instance:org.jboss.ejb3.pool.StrictMaxPool@1867d87#class be.xxxxxxxx.service.impl.AaaaserviCeImpl
2013-03-06 10:53:12,360 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#9[10.4.193.71:55356]) Get instance org.jboss.ejb3.pool.StrictMaxPool@18a9400#1#class be.xxxxxxxx.service.impl.BbbbserviCeImpl
2013-03-06 10:53:12,360 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#11[10.4.193.71:55341]) Removing instance:org.jboss.ejb3.pool.StrictMaxPool@1867d87#org.jboss.ejb3.stateless.StatelessBeanContext@1824da2#class be.xxxxxxxx.service.impl.AaaaserviCeImpl
2013-03-06 10:53:12,360 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#40[10.4.193.71:55382]) 1/1 Free instance:org.jboss.ejb3.pool.StrictMaxPool@1867d87#class be.xxxxxxxx.service.impl.AaaaserviCeImpl
2013-03-06 10:53:12,360 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#40[10.4.193.71:55382]) Removing instance:org.jboss.ejb3.pool.StrictMaxPool@1867d87#org.jboss.ejb3.stateless.StatelessBeanContext@1190f19#class be.xxxxxxxx.service.impl.AaaaserviCeImpl
2013-03-06 10:53:12,361 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#21[10.4.193.71:55354]) Get instance org.jboss.ejb3.pool.StrictMaxPool@18a9400#1#class be.xxxxxxxx.service.impl.BbbbserviCeImpl
2013-03-06 10:53:12,372 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#6[10.4.193.71:55362]) 1/1 Free instance:org.jboss.ejb3.pool.StrictMaxPool@1867d87#class be.xxxxxxxx.service.impl.AaaaserviCeImpl
2013-03-06 10:53:12,375 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#6[10.4.193.71:55362]) Removing instance:org.jboss.ejb3.pool.StrictMaxPool@1867d87#org.jboss.ejb3.stateless.StatelessBeanContext@cd105e#class be.xxxxxxxx.service.impl.AaaaserviCeImpl
2013-03-06 10:53:12,373 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#47[10.4.193.71:55389]) 1/1 Free instance:org.jboss.ejb3.pool.StrictMaxPool@1867d87#class be.xxxxxxxx.service.impl.AaaaserviCeImpl
2013-03-06 10:53:12,377 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#47[10.4.193.71:55389]) Removing instance:org.jboss.ejb3.pool.StrictMaxPool@1867d87#org.jboss.ejb3.stateless.StatelessBeanContext@edb6d0#class be.xxxxxxxx.service.impl.AaaaserviCeImpl
2013-03-06 10:53:12,386 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#2[10.4.193.71:55364]) Acquired(true) strictMaxSize semaphore, remaining=7
2013-03-06 10:53:12,389 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#35[10.4.193.71:55377]) Get instance org.jboss.ejb3.pool.StrictMaxPool@18a9400#1#class be.xxxxxxxx.service.impl.BbbbserviCeImpl
2013-03-06 10:53:12,387 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#12[10.4.193.71:55340]) Acquired(true) strictMaxSize semaphore, remaining=3
2013-03-06 10:53:12,387 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#15[10.4.193.71:55361]) Acquired(true) strictMaxSize semaphore, remaining=4
2013-03-06 10:53:12,387 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#4[10.4.193.71:55351]) Acquired(true) strictMaxSize semaphore, remaining=5
2013-03-06 10:53:12,387 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#8[10.4.193.71:55347]) Acquired(true) strictMaxSize semaphore, remaining=6
(...)
2013-03-06 11:22:53,468 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#30[10.4.193.71:54308]) 0/1 Free instance:org.jboss.ejb3.pool.StrictMaxPool@11eddf1#class be.xxxxxxxx.service.impl.BbbbserviCeImpl
2013-03-06 11:22:53,474 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#31[10.4.193.71:54309]) Get instance org.jboss.ejb3.pool.StrictMaxPool@d6342d#1#class be.xxxxxxxx.service.impl.AaaaserviCeImpl
2013-03-06 11:22:53,499 TRACE [org.jboss.ejb3.pool.StrictMaxPool] (WorkerThread#31[10.4.193.71:54309]) Acquired(true) strictMaxSize semaphore, remaining=2565
(...)
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira