Session#close() should not wait forever if broker fails to respond to channel close (0-8..0-9-1 protocols) ----------------------------------------------------------------------------------------------------------
Key: QPID-3903 URL: https://issues.apache.org/jira/browse/QPID-3903 Project: Qpid Issue Type: Bug Components: Java Client Affects Versions: 0.14, 0.12, 0.10, 0.8, 0.6, 0.16 Reporter: Keith Wall For the 0-8..0-9-1 protocols, if the broker fails to respond to a channel close command (for whatever reason), the client thread hangs forever. This is because AMQSession#close() uses a timeout value of -1, which is interpreted by BlockingWaiter as a indefinite wait. Uses of the 0-10 protocol are unaffected by this defect. {code} - parking to wait for <1f004f3> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1925) at org.apache.qpid.client.util.BlockingWaiter.block(BlockingWaiter.java:168) at org.apache.qpid.client.protocol.BlockingMethodFrameListener.blockForFrame(BlockingMethodFrameListener.java:127) at org.apache.qpid.client.protocol.AMQProtocolHandler.writeCommandFrameAndWaitForReply(AMQProtocolHandler.java:686) at org.apache.qpid.client.protocol.AMQProtocolHandler.syncWrite(AMQProtocolHandler.java:707) at org.apache.qpid.client.AMQSession_0_8.sendClose(AMQSession_0_8.java:162) at org.apache.qpid.client.AMQSession.close(AMQSession.java:723) {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa 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