intermittent deadlock on connection close
-----------------------------------------
Key: QPID-1701
URL: https://issues.apache.org/jira/browse/QPID-1701
Project: Qpid
Issue Type: Bug
Components: Java Client
Affects Versions: M5
Reporter: Rafael H. Schloming
Assignee: Rafael H. Schloming
Found one Java-level deadlock:
=============================
"IoReceiver - localhost/127.0.0.1:5672":
waiting to lock monitor 0x0a032d68 (object 0x5594bb70, a
[Lorg.apache.qpid.transport.Method;),
which is held by "main"
"main":
waiting to lock monitor 0x0a033150 (object 0x5594b8c8, a
java.lang.Object),
which is held by "IoReceiver - localhost/127.0.0.1:5672"
Java stack information for the threads listed above:
===================================================
"IoReceiver - localhost/127.0.0.1:5672":
at org.apache.qpid.transport.Session.closed(Session.java:850)
- waiting to lock <0x5594bb70> (a
[Lorg.apache.qpid.transport.Method;)
at
org.apache.qpid.transport.Connection.closed(Connection.java:438)
- locked <0x5594b8c8> (a java.lang.Object)
at
org.apache.qpid.transport.network.Assembler.closed(Assembler.java:113)
at
org.apache.qpid.transport.network.InputHandler.closed(InputHandler.java:201)
at
org.apache.qpid.transport.network.io.IoReceiver.run(IoReceiver.java:151)
at java.lang.Thread.run(Thread.java:619)
"main":
at
org.apache.qpid.transport.Connection.removeSession(Connection.java:263)
- waiting to lock <0x5594b8c8> (a java.lang.Object)
at org.apache.qpid.transport.Session.close(Session.java:837)
- locked <0x5594bb70> (a [Lorg.apache.qpid.transport.Method;)
at
org.apache.qpid.client.AMQSession_0_10.sendClose(AMQSession_0_10.java:311)
at org.apache.qpid.client.AMQSession.close(AMQSession.java:639)
- locked <0x559d0870> (a java.lang.Object)
- locked <0x55883318> (a java.lang.Object)
at
org.apache.qpid.client.AMQConnection.closeAllSessions(AMQConnection.java:1051)
at
org.apache.qpid.client.AMQConnection.doClose(AMQConnection.java:946)
- locked <0x55883318> (a java.lang.Object)
- locked <0x55883320> (a java.lang.Object)
at
org.apache.qpid.client.AMQConnection.doClose(AMQConnection.java:935)
- locked <0x559d7d78> (a java.lang.Object)
- locked <0x55883320> (a java.lang.Object)
at
org.apache.qpid.client.AMQConnection.doClose(AMQConnection.java:935)
- locked <0x559d0870> (a java.lang.Object)
- locked <0x55883320> (a java.lang.Object)
at
org.apache.qpid.client.AMQConnection.close(AMQConnection.java:922)
at
org.apache.qpid.client.AMQConnection.close(AMQConnection.java:915)
at
org.apache.qpid.client.AMQConnection.close(AMQConnection.java:910)
at
org.apache.qpid.test.client.failover.FailoverTest.tearDown(FailoverTest.java:97)
at junit.framework.TestCase.runBare(TestCase.java:130)
at
org.apache.qpid.test.utils.QpidTestCase.runBare(QpidTestCase.java:188)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at
org.apache.qpid.test.utils.QpidTestCase.run(QpidTestCase.java:222)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:421)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.executeInVM(JUnitTask.java:1245)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:814)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.executeOrQueue(JUnitTask.java:1657)
at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:764)
at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor25.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
at
org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38)
at
org.apache.tools.ant.Project.executeTargets(Project.java:1181)
at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416)
at org.apache.tools.ant.taskdefs.SubAnt.execute(SubAnt.java:289)
at org.apache.tools.ant.taskdefs.SubAnt.execute(SubAnt.java:208)
at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor25.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at
org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:62)
at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor25.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at
org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.java:391)
at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor25.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
at org.apache.tools.ant.Project.executeTarget(Project.java:1298)
at
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at
org.apache.tools.ant.Project.executeTargets(Project.java:1181)
at org.apache.tools.ant.Main.runBuild(Main.java:698)
at org.apache.tools.ant.Main.startAnt(Main.java:199)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
Found 1 deadlock.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]