Alex Rudyy created QPID-6817:
--------------------------------
Summary: [Java Broker] On abrupt connection close from client side
when Broker is deliverying messages to consumer the delivering messages might
not be released as part of close in some unlucky circumstances
Key: QPID-6817
URL: https://issues.apache.org/jira/browse/QPID-6817
Project: Qpid
Issue Type: Bug
Components: Java Broker
Affects Versions: qpid-java-6.0
Reporter: Alex Rudyy
Priority: Blocker
With current implementation consumer acquired messages are put into
intermediate queue on ConsumerTarget before putting them into wire. The
registering of those messages as unacknowledged with session happens letter.
When TCP connection is get closed between message being put into a
ConsumerTarget queue and registering of it on session as unacknowledged, such
message cannot be released as part of session close and can continue remain in
ACQUIRED state blocking the queue message flow. Only Broker restart can
remediate the issue.
It seems we can fix the issue by introducing a method on a ConsumerTarget to
iterate over the messages stored in intermediate queue and call release method
on them. The method shall be invoked as part of ConsumerTarget close.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]