[ https://issues.apache.org/jira/browse/QPID-5117?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Philip Harvey updated QPID-5117: -------------------------------- Attachment: jcarder_result_2.dot attached JCarder's output representing this potential deadlock. > Java client deadlocks if connection is closed while onMessage() is creating a > session > ------------------------------------------------------------------------------------- > > Key: QPID-5117 > URL: https://issues.apache.org/jira/browse/QPID-5117 > Project: Qpid > Issue Type: Bug > Components: Java Client > Affects Versions: 0.22 > Reporter: Philip Harvey > Attachments: jcarder_result_2.dot > > > I have run the java systests with the [JCarder|http://jcarder.org/] agent > attached. JCarder detected a potential deadlock when the following are done > concurrently: > * Application thread closes a connection > * A MessageListener creates a new session on that connection inside > onMessage(). > Here is a sketch of the wrongly-ordered locking: > {noformat} > Thread "main" > AMQConnection.close() > AMQConnection.doClose() > lock AMQConnection._sessionCreationLock > lock AMQSession.getMessageDeliveryLock() > Thread "Dispatcher-1-Conn-780" > AMQSession$Dispatcher.dispatchMessage() > lock AMQSession.this._messageDeliveryLock > myMessageListener.onMessage() > AMQConnection.createSession() > lock AMQConnection._sessionCreationLock > {noformat} > I've attached JCarder's GraphViz-format .dot file which represents this > slightly more comprehensively. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org