Hi everyone

Regarding this issue, we keep getting the deadlock:

Found one Java-level deadlock:
=============================
"ActiveMQ Transport: tcp:///127.0.0.1:42001":
waiting to lock monitor 0x01548790 (object 0x8cf573f8, a org.apache.activemq.transport.InactivityMonitor$2),
 which is held by "ActiveMQ Scheduler"
"ActiveMQ Scheduler":
waiting to lock monitor 0x00ddd550 (object 0x8cf4a8c0, a org.apache.activemq.broker.jmx.ManagedTransportConnection),
 which is held by "ActiveMQ Transport: tcp:///127.0.0.1:42001"

Java stack information for the threads listed above:
===================================================
"ActiveMQ Transport: tcp:///127.0.0.1:42001":
at org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:139) - waiting to lock <0x8cf573f8> (a org.apache.activemq.transport.InactivityMonitor$2) at org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:80) at org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:93) at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:47)
       - locked <0x8cf57318> (a java.lang.Object)
at org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1138) at org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:805) at org.apache.activemq.broker.TransportConnection.dispatchSync(TransportConnection.java:770) at org.apache.activemq.broker.region.PrefetchSubscription.dispatch(PrefetchSubscription.java:404) at org.apache.activemq.broker.region.QueueSubscription.dispatch(QueueSubscription.java:172) at org.apache.activemq.broker.region.PrefetchSubscription.add(PrefetchSubscription.java:129) - locked <0x8d045f50> (a org.apache.activemq.broker.region.QueueSubscription) at org.apache.activemq.broker.region.Queue.addSubscription(Queue.java:191) - locked <0x8ccfc120> (a org.apache.activemq.broker.region.cursors.VMPendingMessageCursor) at org.apache.activemq.broker.region.AbstractRegion.addConsumer(AbstractRegion.java:234)
       - locked <0x8d045fa0> (a java.lang.Object)
at org.apache.activemq.broker.region.RegionBroker.addConsumer(RegionBroker.java:337) at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:86) at org.apache.activemq.advisory.AdvisoryBroker.addConsumer(AdvisoryBroker.java:77) at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:86) at org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:96) at org.apache.activemq.broker.TransportConnection.processAddConsumer(TransportConnection.java:586) - locked <0x8cf4a8c0> (a org.apache.activemq.broker.jmx.ManagedTransportConnection) at org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:313) at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:294) at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:185) at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:65) at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:133) at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:127) - locked <0x8cf4a9d8> (a org.apache.activemq.transport.InactivityMonitor$1) at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84) at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:137)
       at java.lang.Thread.run(Unknown Source)
"ActiveMQ Scheduler":
at org.apache.activemq.broker.jmx.ManagedTransportConnection.stop(ManagedTransportConnection.java) - waiting to lock <0x8cf4a8c0> (a org.apache.activemq.broker.jmx.ManagedTransportConnection) at org.apache.activemq.util.ServiceSupport.dispose(ServiceSupport.java:40) at org.apache.activemq.broker.TransportConnection.serviceTransportException(TransportConnection.java:216) at org.apache.activemq.broker.TransportConnection$1.onException(TransportConnection.java:192) at org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96) at org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96) at org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147) at org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:159) at org.apache.activemq.transport.InactivityMonitor.writeCheck(InactivityMonitor.java:84) - locked <0x8cf573f8> (a org.apache.activemq.transport.InactivityMonitor$2) at org.apache.activemq.transport.InactivityMonitor.access$100(InactivityMonitor.java:35) at org.apache.activemq.transport.InactivityMonitor$2.run(InactivityMonitor.java:57) at edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:431) at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.runAndReset(FutureTask.java:198) at edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:189) at edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:213) 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(Unknown Source)

Found 1 deadlock.

But we're not using VM transport...any clue about this?

Thank you and best regards
Eduardo Corral

Rob Davies escribió:
this is a known issue - its been addressed in version 5.0 by ensuring the vm transport is async by default


cheers,

Rob

http://rajdavies.blogspot.com/



On Sep 14, 2007, at 9:44 AM, Eduardo Corral wrote:

Hi everyone

We're using ActiveMQ 4.1.1 Broker, embedded in our server, and while trying to stop it, we get a deadlock:

Java stack information for the threads listed above:
===================================================
"ActiveMQ Transport: tcp:///127.0.0.1:64319":
at org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:137) - waiting to lock <0x9ac103c8> (a org.apache.activemq.transport.InactivityMonitor$2) at org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:80) at org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:93) at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:47)
       - locked <0x9ac0fdf8> (a java.lang.Object)
at org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1138) at org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:805) at org.apache.activemq.broker.TransportConnection.dispatchSync(TransportConnection.java:770) at org.apache.activemq.broker.region.PrefetchSubscription.dispatch(PrefetchSubscription.java:404) at org.apache.activemq.broker.region.QueueSubscription.dispatch(QueueSubscription.java:172) at org.apache.activemq.broker.region.PrefetchSubscription.add(PrefetchSubscription.java:129) - locked <0x9ac177a8> (a org.apache.activemq.broker.region.QueueSubscription) at org.apache.activemq.broker.region.Queue.addSubscription(Queue.java:191) - locked <0x9a94e5a8> (a org.apache.activemq.broker.region.cursors.VMPendingMessageCursor) at org.apache.activemq.broker.region.AbstractRegion.addConsumer(AbstractRegion.java:234)
       - locked <0x9ac1fae8> (a java.lang.Object)
at org.apache.activemq.broker.region.RegionBroker.addConsumer(RegionBroker.java:337) at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:86) at org.apache.activemq.advisory.AdvisoryBroker.addConsumer(AdvisoryBroker.java:77) at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:86) at org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:96) at org.apache.activemq.broker.TransportConnection.processAddConsumer(TransportConnection.java:586) - locked <0x9ac0d128> (a org.apache.activemq.broker.jmx.ManagedTransportConnection) at org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:313) at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:294) at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:185) at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:65) at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:133) at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:127) - locked <0x9ac103b8> (a org.apache.activemq.transport.InactivityMonitor$1) at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84) at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:137)
       at java.lang.Thread.run(Thread.java:595)
"ActiveMQ Scheduler":
at org.apache.activemq.broker.jmx.ManagedTransportConnection.stop(ManagedTransportConnection.java:64) - waiting to lock <0x9ac0d128> (a org.apache.activemq.broker.jmx.ManagedTransportConnection) at org.apache.activemq.util.ServiceSupport.dispose(ServiceSupport.java:40) at org.apache.activemq.broker.TransportConnection.serviceTransportException(TransportConnection.java:216) at org.apache.activemq.broker.TransportConnection$1.onException(TransportConnection.java:192) at org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96) at org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96) at org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147) at org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:159) at org.apache.activemq.transport.InactivityMonitor.writeCheck(InactivityMonitor.java:84) - locked <0x9ac103c8> (a org.apache.activemq.transport.InactivityMonitor$2) at org.apache.activemq.transport.InactivityMonitor.access$100(InactivityMonitor.java:35) at org.apache.activemq.transport.InactivityMonitor$2.run(InactivityMonitor.java:57) at edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:431) at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.runAndReset(FutureTask.java:198) at edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java
:189)
at edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:213) 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:595)

Found 1 deadlock.

Is this a known issue? I couldn't find the same kind of deadlock on the issue tracker.

Thank you and best regards
Eduardo




Reply via email to