[ 
https://issues.apache.org/jira/browse/QPID-3521?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alex Rudyy updated QPID-3521:
-----------------------------
    Description: 
failover process for the 0-8 client does not clear the pre-dispatch queue, only 
the consumer receive queue.

This is currently masked by an issue with the rollbackMark. The changes made in 
QPID-3546 to fix the 0-10 client path need to be applied to the 0-8/9/9-1 
client path when this issue is resolved.

We need to clear the pre-dispatch queue on failover. Additionally, we need to 
acquire dispatcher and messageDelivery locks in failover thread in order to 
prevent the dispatcher from dispatching pre-fetched messages whilst failover is 
in progress. If we are not holding the locks, the dispatcher could continue 
dispatching prefetched messages into MessageListener which would result in 
unnecessary JMSExceptions on acknowledge/rollback/commit/recover.

  was:
failover process for the 0-8 client does not clear the pre-dispatch queue, only 
the consumer receive queue.

This is currently masked by an issue with the rollbackMark. The changes made in 
QPID-3546 to fix the 0-10 client path need to be applied to the 0-8/9/9-1 
client path when this issue is resolved.


> failover process for the 0-8 client does not clear the pre-dispatch queue
> -------------------------------------------------------------------------
>
>                 Key: QPID-3521
>                 URL: https://issues.apache.org/jira/browse/QPID-3521
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Client
>            Reporter: Robbie Gemmell
>            Assignee: Alex Rudyy
>              Labels: failover
>         Attachments: clear-dispatch-queue-on-failover.diff
>
>
> failover process for the 0-8 client does not clear the pre-dispatch queue, 
> only the consumer receive queue.
> This is currently masked by an issue with the rollbackMark. The changes made 
> in QPID-3546 to fix the 0-10 client path need to be applied to the 0-8/9/9-1 
> client path when this issue is resolved.
> We need to clear the pre-dispatch queue on failover. Additionally, we need to 
> acquire dispatcher and messageDelivery locks in failover thread in order to 
> prevent the dispatcher from dispatching pre-fetched messages whilst failover 
> is in progress. If we are not holding the locks, the dispatcher could 
> continue dispatching prefetched messages into MessageListener which would 
> result in unnecessary JMSExceptions on acknowledge/rollback/commit/recover.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to