[
https://issues.apache.org/jira/browse/QPID-1864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12711999#action_12711999
]
Martin Ritchie commented on QPID-1864:
--------------------------------------
I think the problem is bigger than a small change on the client code. In fact I
think the whole 0-8 message rejection is flawed.
1) There seems to be a race condition between the dispatcher and the main
thread performing the rollback
As highlighted above the the dispatcher is still trying to reject a message
after the TxRollback has occured.
2) On receipt of TxRollback the Java Broker resends all the messages in the
Unacked map. This is concievably out of order compared with the rest of the
queue.
3) The Java client suspends(Flow=false) the channel before calling TxRollback
but to ensure we get delivery of the Unacked Map before the main queue we
violate the suspension and send the messages from the Unacked Map.
I'm going to JIRA these issues separately. Will issue 1) be a problem in the
0-10 code? What would it mean for a message release to occur AFTER the
TxRollback has occured?
> java 0-10 client sometimes releases messages in non queue order on rollback
> ---------------------------------------------------------------------------
>
> Key: QPID-1864
> URL: https://issues.apache.org/jira/browse/QPID-1864
> Project: Qpid
> Issue Type: Bug
> Components: Java Client
> Affects Versions: 0.6
> Reporter: Rafael H. Schloming
> Assignee: Rafael H. Schloming
> Fix For: 0.6
>
> Attachments:
> TEST-org.apache.qpid.test.client.RollbackOrderTest.testOrderingAfterRollback.out
>
>
> On rollback, the java client sometimes releases messages from the dispatch
> thread. These messages are released in an unpredictable order relative to the
> messages released from the main thread. Also, the messages released from the
> BMC.rollbackPendingMessages() are released individually and in the opposite
> order of what would preserve queue order in a single consumer scenario.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]