Arthur Naseef created ARTEMIS-5874:
--------------------------------------

             Summary: Deadlock in STOMP protocol on DISCONNECT with receipt
                 Key: ARTEMIS-5874
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-5874
             Project: Artemis
          Issue Type: Bug
          Components: STOMP
    Affects Versions: 2.39.0
         Environment: ActiveMQ 2.39.0

Linux

 
            Reporter: Arthur Naseef
            Assignee: Justin Bertram


STOMP protocol can hit a JVM deadlock.  Here are the key details:
 * DISCONNECT frame sent to the broker on valid STOMP connection
 ** with a "receipt" header
 * At the same time, netty reports a disconnect (call goes to   
org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl.connectionException)

Deadlock is reported by {{jstack }}or{{ jcmd ... Thread.print.}}

The cause is 2 locks being acquired in different orders by separate threads.  
Here are the top of the calling stack for the 2 deadlocked threads:
 * at 
org.apache.activemq.artemis.core.protocol.stomp.StompProtocolManager.send(StompProtocolManager.java:203)
 * at 
org.apache.activemq.artemis.core.protocol.stomp.StompConnection.destroy(StompConnection.java:225)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to