ActiveMQ is getting hang forever when trying to close the session. Here is
the thread dump. In our application when ever we need to change the selector
we close the session and consumer. Then recreate the session and consumer
with new selector. Sometimes when trying to close the session ActiveNQ hang
for ever. Please let me know how to resolve this issue. We are using
ActiveMQ  4.1.1 version

"ActiveMQ Session Task" daemon prio=8 tid=0x1a1af800 nid=0x1168 waiting for
monitor entry [0x2388f000..0x2388fc94]

   java.lang.Thread.State: BLOCKED (on object monitor)

            at
com.infinera.nm.ems.client.fault.CDMJMSInterface.onMessage(CDMJMSInterface.java:295)

            - waiting to lock <0x06017ae8> (a java.util.HashMap)

            at
org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:854)

            at
org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:99)

            at
org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:166)

            at
org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:117)

            at
org.apache.activemq.thread.PooledTaskRunner.access$100(PooledTaskRunner.java:26)

            at
org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:44)

            at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)

            at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)

            at java.lang.Thread.run(Thread.java:619)

"Thread-13" prio=6 tid=0x1a095400 nid=0x1240 waiting for monitor entry
[0x1ad2f000..0x1ad2fb14]

   java.lang.Thread.State: BLOCKED (on object monitor)

            at
com.infinera.nm.ems.client.fault.CDMJMSInterface.processEventInfo(CDMJMSInterface.java:270)

            - waiting to lock <0x06017ae8> (a java.util.HashMap)

            at
com.infinera.nm.ems.client.fault.EventQueueProcessor.processEventInfo(EventQueueProcessor.java:198)

            at
com.infinera.nm.ems.client.fault.EventQueueProcessor.run(EventQueueProcessor.java:89)


AWT-EventQueue-0" prio=6 tid=0x1a021c00 nid=0x104c in Object.wait()
[0x1a9cf000..0x1a9cfb94]

   java.lang.Thread.State: WAITING (on object monitor)

            at java.lang.Object.wait(Native Method)

            at java.lang.Object.wait(Object.java:485)

            at
org.apache.activemq.thread.PooledTaskRunner.shutdown(PooledTaskRunner.java:89)

            - locked <0x06128518> (a
org.apache.activemq.thread.PooledTaskRunner$1)

            at
org.apache.activemq.ActiveMQSessionExecutor.stop(ActiveMQSessionExecutor.java:117)

            at
org.apache.activemq.ActiveMQSession.dispose(ActiveMQSession.java:540)

            - locked <0x060f08e8> (a org.apache.activemq.ActiveMQSession)

            at
org.apache.activemq.ActiveMQSession.close(ActiveMQSession.java:516)

            at
com.infinera.nm.ems.client.fault.SocketNotificationClient.changeCDMTopicMessageSelector(SocketNotificationClient.java:712)

            at
com.infinera.nm.ems.client.fault.MessageSelectorUtility.constructSelectorAndApplyForCDMTopic(MessageSelectorUtility.java:1104)

            at
com.infinera.nm.ems.client.fault.CDMJMSInterface.consolidateFilterMoids(CDMJMSInterface.java:190)

            at
com.infinera.nm.ems.client.fault.CDMJMSInterface.clearFilterforController(CDMJMSInterface.java:137)

            - locked <0x06017ae8> (a java.util.HashMap)

            at
com.infinera.nm.ems.client.cdm.controller.CDMController.cleanup(CDMController.java:99)

            at
com.infinera.nm.ems.client.cdm.ui.CDMMainFrame.dispose(CDMMainFrame.java:255)

            at javax.swing.JFrame.processWindowEvent(JFrame.java:287)

            at java.awt.Window.processEvent(Window.java:1774)

            at java.awt.Component.dispatchEventImpl(Component.java:4410)

            at java.awt.Container.dispatchEventImpl(Container.java:2116)

            at java.awt.Window.dispatchEventImpl(Window.java:2429)

            at java.awt.Component.dispatchEvent(Component.java:4240)

            at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)

            at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)

            at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)

            at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)

            at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)

            at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)

            at
java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
-- 
View this message in context: 
http://www.nabble.com/Hang-on-Session-close-tp15265494s2354p15265494.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to