Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-8265

Deadlock between ActiveMQConnection#close and TcpTransport#run

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 5.15.9
    • None
    • AMQP
    • None

    Description

      Monitor deadlock occur between ActiveMQConnection#close and TcpTransport#run when failover connection is used.

       

      "ActiveMQ Transport: ssl://ACME.INC/X.X.X.X:61616" #185332 prio=5
       java.lang.Thread.State: BLOCKED (on object monitor)
       at org.apache.activemq.ActiveMQConnection.getScheduler(ActiveMQConnection.java:2387)
       - waiting to lock <0x17c19185> (a org.apache.activemq.ActiveMQConnection)
       at org.apache.activemq.ActiveMQSession.clearMessagesInProgress(ActiveMQSession.java:691)
       at org.apache.activemq.ActiveMQConnection.transportInterupted(ActiveMQConnection.java:2006)
       at org.apache.activemq.transport.TransportFilter.transportInterupted(TransportFilter.java:119)
       at org.apache.activemq.transport.TransportFilter.transportInterupted(TransportFilter.java:119)
       at org.apache.activemq.transport.failover.FailoverTransport.handleTransportFailure(FailoverTransport.java:290)
       - locked <0x19067d0d> (a java.lang.Object)
       at org.apache.activemq.transport.failover.FailoverTransport$3.onException(FailoverTransport.java:223)
       at org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:114)
       at org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:173)
       at org.apache.activemq.transport.AbstractInactivityMonitor.onException(AbstractInactivityMonitor.java:345)
       at org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:96)
       at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:219)
       at java.lang.Thread.run(Thread.java:748)
      
      "CIBuildTrigger-XXX-ActiveMqMessagingProvider" #272 daemon prio=5
       java.lang.Thread.State: BLOCKED (on object monitor)
       at org.apache.activemq.transport.failover.FailoverTransport.oneway(FailoverTransport.java:576)
       - waiting to lock <0x19067d0d> (a java.lang.Object)
       at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:68)
       at org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
       at org.apache.activemq.ActiveMQConnection.doAsyncSendPacket(ActiveMQConnection.java:1308)
       at org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1302)
       at org.apache.activemq.AdvisoryConsumer.dispose(AdvisoryConsumer.java:57)
       - locked <0x178360e8> (a org.apache.activemq.AdvisoryConsumer)
       at org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:654)
       - locked <0x17c19185> (a org.apache.activemq.ActiveMQConnection)
       at com.redhat.jenkins.plugins.ci.messaging.ActiveMqMessagingWorker.disconnect(ActiveMqMessagingWorker.java:338)
       at com.redhat.jenkins.plugins.ci.messaging.ActiveMqMessagingWorker.disconnect(ActiveMqMessagingWorker.java:352)
       at com.redhat.jenkins.plugins.ci.messaging.ActiveMqMessagingWorker.unsubscribe(ActiveMqMessagingWorker.java:182)
       at com.redhat.jenkins.plugins.ci.messaging.ActiveMqMessagingWorker.receive(ActiveMqMessagingWorker.java:316)
       at com.redhat.jenkins.plugins.ci.threads.CITriggerThread.run(CITriggerThread.java:73)
      
      

       

      There are no known steps to reproduce ATM.

      Attachments

        Activity

          People

            Unassigned Unassigned
            ogondza Oliver Gondža
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: