Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
If the broker closes the client's connection, you'd expect that future attempts to use the client connection object would report an IllegalStateException(""Object is closed") exception and AMQConnection#isClosed to return true.
However, the 0-10 client reports "Command was interrupted because of failover, before being sent [error code 541: internal error]" and AMQConnection#isClosed reports false. This is confusing to the user.
javax.jms.JMSException: Error closing session: org.apache.qpid.AMQException: Command was interrupted because of failover, before being sent [error code 541: internal error]
It appears that the 0-10 client is current failing to flip the _closed atomic in response to a receipt of a connection.close.
The problem does not affect 0-8..0-9-1. Its users see an IllegalStateException("Object has been closed") exception and AMQConnection#isClosed returns true in this scenario.