activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rob Davies (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (AMQ-1108) Deadlock in PrefetchSubscription
Date Sun, 24 Dec 2006 08:59:02 GMT
     [ https://issues.apache.org/activemq/browse/AMQ-1108?page=all ]

Rob Davies resolved AMQ-1108.
-----------------------------

    Fix Version/s: 4.2.0
       Resolution: Fixed

This is fixed by revision 490007.

> Deadlock in PrefetchSubscription
> --------------------------------
>
>                 Key: AMQ-1108
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1108
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 4.2.0
>            Reporter: Rob Davies
>         Assigned To: Rob Davies
>            Priority: Blocker
>             Fix For: 4.2.0
>
>
> see: http://www.nabble.com/Another-deadlock-showing-up-tf2874106.html#a8033006
> The deadlock is as follows:
> Found one Java-level deadlock:
> =============================
> "ActiveMQ Task":
>   waiting to lock monitor 0x080e4f3c (object 0x92b60db0, a
> java.util.LinkedList),
>   which is held by "ActiveMQ Transport: tcp:///127.0.0.1:37496"
> "ActiveMQ Transport: tcp:///127.0.0.1:37496":
>   waiting to lock monitor 0x080e4f7c (object 0x92b60d98, a
> org.apache.activemq.broker.region.cursors.VMPendingMessageCursor),
>   which is held by "ActiveMQ Task"
> Java stack information for the threads listed above:
> ===================================================
> "ActiveMQ Task":
>         at
> org.apache.activemq.broker.region.PrefetchSubscription.dispatch(PrefetchSubscription.java:414)
>         - waiting to lock <0x92b60db0> (a java.util.LinkedList)
>         at
> org.apache.activemq.broker.region.QueueSubscription.dispatch(QueueSubscription.java:172)
>         at
> org.apache.activemq.broker.region.PrefetchSubscription.dispatchMatched(PrefetchSubscription.java:397)
>         - locked <0x92b60d98> (a
> org.apache.activemq.broker.region.cursors.VMPendingMessageCursor)
>         at
> org.apache.activemq.broker.region.PrefetchSubscription.onDispatch(PrefetchSubscription.java:451)
>         at
> org.apache.activemq.broker.region.QueueSubscription.onDispatch(QueueSubscription.java:192)
>         at
> org.apache.activemq.broker.region.PrefetchSubscription$3.run(PrefetchSubscription.java:429)
>         at
> org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:778)
>         at
> org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:791)
>         at
> org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:111)
>         at
> org.apache.activemq.thread.PooledTaskRunner.access$100(PooledTaskRunner.java:26)
>         at
> org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:44)
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>         at java.lang.Thread.run(Thread.java:595)
> "ActiveMQ Transport: tcp:///127.0.0.1:37496":
>         at
> org.apache.activemq.broker.region.PrefetchSubscription.dispatchMatched(PrefetchSubscription.java:383)
>         - waiting to lock <0x92b60d98> (a
> org.apache.activemq.broker.region.cursors.VMPendingMessageCursor)
>         at
> org.apache.activemq.broker.region.PrefetchSubscription.acknowledge(PrefetchSubscription.java:219)
>         - locked <0x92b60db0> (a java.util.LinkedList)
>         at
> org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:299)
>         at
> org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:397)
>         at
> org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:177)
>         at
> org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:74)
>         at
> org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:74)
>         at
> org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:88)
>         at
> org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:491)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:179)
>         at
> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:287)
>         at
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:178)
>         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:122)
>         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)
> Found 1 deadlock.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message