Hello .. I have a similar issue but in jboss 5.1 using ejb 3.0
My clustered app process thousands requests but I have problems in only one node.
My bean is annotated with StrictMaxPool=100 without strictTimeout. Sometimes the max pool size is reached and the incoming requests (new bean instances creation in the pool) are blocked with Failed to acquire the pool semaphore, strictTimeout=-1. Until now it´s an application regular behavior.
When beans creation requests decreases my ejb blocks new instances creation =/ and Failed to acquire the pool semaphore, strictTimeout=-1 occurs all the time. It´s like the pool is still full but in JMX-CONSOLE (domain j2ee, service=EJB3) and accessing MyWorkerBean link, the AvailableCount attribute is always 0 (until in other clustered node this attribute increases and decreases normally) and worse: no bean is instantiated anymore. My pool is empty but the container can´t instatiate MyWorkerBeans anymore. Why??? It´s affecting my business.