Yes that looks like its trying to get a lock which the onMessage handler is holding while firing, which is ongoing due to a send within it.
On 25 November 2016 at 07:37, DraCzech <[email protected]> wrote: > When going through logs I also found this piece of thread dump. Which shows > that my cleaning thread is waiting for a lock held by ActiveMQ thread. A > state which is definitely not desired, but I'm not sure if can be prevented > completely... > > 2016-11-24 17:46:10.016523 "JMS Connector cleaner" daemon prio=10 > tid=0x0005bf70 nid=0x9d7 waiting for monitor entry [0x555bb000] > 2016-11-24 17:46:10.016829 java.lang.Thread.State: BLOCKED (on object > monitor) > 2016-11-24 17:46:10.017286 at > org.apache.activemq.FifoMessageDispatchChannel.stop(FifoMessageDispatchChannel.java:124) > 2016-11-24 17:46:10.018599 - waiting to lock <0x489bcd68> (a > java.lang.Object) > 2016-11-24 17:46:10.018996 at > org.apache.activemq.ActiveMQMessageConsumer.stop(ActiveMQMessageConsumer.java:1551) > 2016-11-24 17:46:10.019423 at > org.apache.activemq.ActiveMQSession.stop(ActiveMQSession.java:1856) > 2016-11-24 17:46:10.019942 at > org.apache.activemq.ActiveMQConnection.doStop(ActiveMQConnection.java:586) > 2016-11-24 17:46:10.020338 - locked <0x4832e608> (a > java.util.concurrent.CopyOnWriteArrayList) > 2016-11-24 17:46:10.020827 at > org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:642) > 2016-11-24 17:46:10.021193 at > org.apache.activemq.network.jms.JmsConnector.stop(JmsConnector.java:186) > 2016-11-24 17:46:10.022109 at > com.openmatics.box.iotdatabroker.internal.connection.ServerConnector$JMSConnectorCleaner.run(ServerConnector.java:645) > 2016-11-24 17:46:10.022536 at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) > 2016-11-24 17:46:10.023024 at > java.util.concurrent.FutureTask.run(FutureTask.java:262) > 2016-11-24 17:46:10.024306 at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > 2016-11-24 17:46:10.024764 at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > 2016-11-24 17:46:10.025313 at java.lang.Thread.run(Thread.java:745) > 2016-11-24 17:46:10.038101 "ActiveMQ Session Task-17" prio=10 > tid=0x00271920 nid=0x995 waiting on condition [0x56072000] > 2016-11-24 17:46:10.038681 java.lang.Thread.State: WAITING (parking) > 2016-11-24 17:46:10.039749 at sun.misc.Unsafe.park(Native Method) > 2016-11-24 17:46:10.040024 - parking to wait for <0x44080548> (a > java.util.concurrent.CountDownLatch$Sync) > 2016-11-24 17:46:10.040238 at > java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > 2016-11-24 17:46:10.040421 at > java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834) > 2016-11-24 17:46:10.040756 at > java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994) > 2016-11-24 17:46:10.040970 at > java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303) > 2016-11-24 17:46:10.043106 at > java.util.concurrent.CountDownLatch.await(CountDownLatch.java:236) > 2016-11-24 17:46:10.043351 at > org.apache.qpid.jms.provider.ProviderFuture.sync(ProviderFuture.java:97) > 2016-11-24 17:46:10.043625 at > org.apache.qpid.jms.JmsConnection.send(JmsConnection.java:630) > 2016-11-24 17:46:10.043839 at > org.apache.qpid.jms.JmsConnection.send(JmsConnection.java:619) > 2016-11-24 17:46:10.044144 at > org.apache.qpid.jms.JmsNoTxTransactionContext.send(JmsNoTxTransactionContext.java:37) > 2016-11-24 17:46:10.044358 at > org.apache.qpid.jms.JmsSession.send(JmsSession.java:717) > 2016-11-24 17:46:10.044571 at > org.apache.qpid.jms.JmsSession.send(JmsSession.java:634) > 2016-11-24 17:46:10.044785 at > org.apache.qpid.jms.JmsMessageProducer.sendMessage(JmsMessageProducer.java:185) > 2016-11-24 17:46:10.045121 at > org.apache.qpid.jms.JmsMessageProducer.send(JmsMessageProducer.java:177) > 2016-11-24 17:46:10.045365 at > org.apache.qpid.jms.JmsMessageProducer.send(JmsMessageProducer.java:166) > 2016-11-24 17:46:10.045609 at > org.apache.qpid.jms.JmsQueueSender.send(JmsQueueSender.java:50) > 2016-11-24 17:46:10.046403 at > org.apache.activemq.network.jms.QueueBridge.sendMessage(QueueBridge.java:83) > 2016-11-24 17:46:10.048692 - locked <0x48366908> (a > org.apache.activemq.network.jms.OutboundQueueBridge) > 2016-11-24 17:46:10.048936 at > org.apache.activemq.network.jms.DestinationBridge.onMessage(DestinationBridge.java:135) > 2016-11-24 17:46:10.049149 at > org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:1401) > 2016-11-24 17:46:10.049363 - locked <0x489bcd68> (a java.lang.Object) > 2016-11-24 17:46:10.049668 at > org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:131) > 2016-11-24 17:46:10.049882 at > org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:202) > 2016-11-24 17:46:10.050126 at > org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:133) > 2016-11-24 17:46:10.050340 at > org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:48) > 2016-11-24 17:46:10.050553 at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > 2016-11-24 17:46:10.050859 at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > 2016-11-24 17:46:10.051988 at java.lang.Thread.run(Thread.java:745) > > > > -- > View this message in context: > http://qpid.2158936.n2.nabble.com/Qpid-JMS-client-JmsConnection-close-hangs-tp7654565p7654835.html > Sent from the Apache Qpid users mailing list archive at Nabble.com. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
