Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
0.32
-
None
Description
The Qpid Client has a seemingly longstanding defect that allows it to send frames such as channel.flow (0-8..0-91) or message.flow/stop (0-10) even after the application has closed the JMS Session.
This has been highlighted by test ExceptionListenerTest that has begun to sporadically fail. Investigation showed that the client continues to send commands for the channel following its sending of channel.close. This was causing the Broker to close the connection thus causing the test to fail.
2015-03-18 11:02:20,203 DEBUG [main] (qpid.protocol) - SEND: [org.apache.qpid.client.protocol.AMQProtocolHandler@66ef393c] Frame channelId: 3, bodyFrame: [ChannelCloseBodyImpl: replyCode=200, replyText=JMS client closing channel, classId=0, methodId=0] 2015-03-18 11:02:20,203 DEBUG [pool-610-thread-1] (client.AMQSession) - Setting channel flow : suspended 2015-03-18 11:02:20,203 DEBUG [pool-610-thread-1] (qpid.protocol) - SEND: [org.apache.qpid.client.protocol.AMQProtocolHandler@66ef393c] Frame channelId: 3, bodyFrame: [ChannelFlowBodyImpl: active=false]
This was potentially exposed by QPID-6374.