-
Bug
-
Resolution: Done
-
Major
-
1.0.29.Final, 1.2.0.Final
-
None
A race condition in the ConnectionListenerWrapper and incorrect logic when returning the ConnectionListener object to the ConcurrentLinkedQueue means that stale field values are sometimes seen for ConnectionListenerWrapper.hasPermit().
Under heavy contention, a stale value in hasPermit() means permits.release() is not called and the semaphores available reduce over time.
The mcp effectively shrinks over time.