Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Abandoned
-
5.10.0
-
None
-
None
Description
I am using a framework with async request/response pattern where I cache session and connections. I also cache temp queue destination and use it with future to get the response. The problem seems to be when I try to close the connection I see threads are waiting forever:
"pool-2-thread-9" prio=10 tid=0x00007f76843f4800 nid=0xadb in Object.wait() [0x00007f765194d000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at org.apache.activemq.thread.PooledTaskRunner.shutdown(PooledTaskRunner.java:104)
- locked <0x00000000950ddca8> (a org.apache.activemq.thread.PooledTaskRunner$1)
at org.apache.activemq.thread.PooledTaskRunner.shutdown(PooledTaskRunner.java:112)
at org.apache.activemq.ActiveMQSessionExecutor.stop(ActiveMQSessionExecutor.java:152) - locked <0x0000000094f1ae10> (a org.apache.activemq.ActiveMQSessionExecutor)
at org.apache.activemq.ActiveMQSession.dispose(ActiveMQSession.java:720) - locked <0x00000000950c89f8> (a org.apache.activemq.ActiveMQSession)
at org.apache.activemq.ActiveMQSession.doClose(ActiveMQSession.java:656)
at org.apache.activemq.ActiveMQSession.close(ActiveMQSession.java:649)
at com.sony.am.snei.stress.async.jms.JMSClient.cleanUp(JMSClient.java:172)
at com.sony.am.snei.stress.command.FDBIdentityAndAccessCommand.doWrite(FDBIdentityAndAccessCommand.java:142)
at com.sony.am.snei.stress.command.FDBIdentityAndAccessCommand.call(FDBIdentityAndAccessCommand.java:46)
at com.sony.am.snei.stress.command.FDBIdentityAndAccessCommand.call(FDBIdentityAndAccessCommand.java:22)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)