[ https://issues.apache.org/jira/browse/QPID-8222?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alex Rudyy resolved QPID-8222. ------------------------------ Resolution: Fixed > [JMS AMQP 0-x][AMQP 0-8..0-91] Transaction commit/rollback or recover can > hang when failover is in progress > ----------------------------------------------------------------------------------------------------------- > > Key: QPID-8222 > URL: https://issues.apache.org/jira/browse/QPID-8222 > Project: Qpid > Issue Type: Bug > Components: JMS AMQP 0-x > Affects Versions: qpid-java-6.1.6, qpid-java-6.0, qpid-java-6.0.1, > qpid-java-6.0.2, qpid-java-6.0.3, qpid-java-6.0.4, qpid-java-6.0.5, > qpid-java-6.1, qpid-java-6.0.6, qpid-java-6.1.1, qpid-java-6.1.2, > qpid-java-6.0.7, qpid-java-6.1.3, qpid-java-6.0.8, qpid-java-6.1.4, > qpid-java-client-0-x-6.3.0, qpid-java-6.1.5, qpid-java-client-0-x-6.3.1, > qpid-java-client-0-x-6.3.2 > Reporter: Alex Rudyy > Priority: Blocker > Fix For: qpid-java-client-0-x-6.3.3 > > Attachments: thread-dump.txt > > > JMS transaction commit/rollback or recover can hang when connectivity is lost > and failover is triggered to restore the connection. When > commit/rollback/recover are invoked after restoring the connectivity and > before failover finishes resubscribing of existing sessions, the syncing of > dispatcher queue can hang due to race with adding the signal message into the > queue from session operation and cleaning the queue by failover. Here is a > dump of hang commit operation: > {noformat} > "main" #1 prio=5 os_prio=0 tid=0x000000000241c000 nid=0x2e18 waiting on > condition [0x0000000002a9f000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x000000076d9f4c70> (a > java.util.concurrent.CountDownLatch$Sync) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:997) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1304) > at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:231) > at > org.apache.qpid.client.AMQSession.syncDispatchQueue(AMQSession.java:2343) > at org.apache.qpid.client.AMQSession.rollback(AMQSession.java:1984) > - locked <0x000000076d67e5f8> (a java.lang.Object) > at org.apache.qpid.client.AMQSession.commit(AMQSession.java:922) > at org.apache.qpid.test.Test.main(Test.java:40) > {noformat} > The defect was introduced as part of changes committed against QPID-3521. I > do not see any sensible work around for the issue. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org