My company is running an application on GlassFish that uses a JackRabbit JCR Repository via a JCA connector.
Every once in a while a thread falls in some kind of livelock while obtaining a JCR connection from the connection pool.
It starts out with one thread, but spreads out to more threads within a hour until all CPU's are fully occupied and the system becomes too slow to operate.
Obtained the following stacktrace via jstack:
It seems that the resourceAppAssociationMap in ConnectionPoolEmitterImpl should actually be a ConcurrentHashMap.