You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Andrew Kennedy (JIRA)" <ji...@apache.org> on 2011/01/20 01:53:43 UTC

[jira] Created: (QPID-3008) QueueBrowserAutoAckTest#testFailoverWithQueueBrowser fails with the 0-10 Java client

QueueBrowserAutoAckTest#testFailoverWithQueueBrowser fails with the 0-10 Java client
------------------------------------------------------------------------------------

                 Key: QPID-3008
                 URL: https://issues.apache.org/jira/browse/QPID-3008
             Project: Qpid
          Issue Type: Bug
          Components: Java Client
    Affects Versions: 0.8
            Reporter: Andrew Kennedy
            Assignee: Andrew Kennedy


In the 0-10 Java client when a QueueBrowser returns an Enumeration, and it is being enumerated over while the connection fails over, the consumer cannot tell that failover is ocurring and sends messages with incorrect subscriber tag numbers to the broker. The BasicMessageConsumer_0_10 uses the shared BasicMessageConsumer#acquireReceiving(boolean) method which tries to call AMQConnection#isFailingOver() and #blockUntilNotFailingOver() and receives incorrect results. This is because AMQConnectionDelegate_0_10 does not start a FailoverHandler continuation and therefore the AMQProtocolHandler#setFailoverLatch(CountdownLatch) and associated methods are never called.

To correct this behaviour update the connection close method of the 0-10 delegate to create the latch, attempt failover and then decrement and remove the latch on success.

QueueBrowserAutoAckTest#testFailoverWithQueueBrowser() is excluded from the cpp.noprefetch profile.

-- 
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:dev-subscribe@qpid.apache.org


[jira] Assigned: (QPID-3008) QueueBrowserAutoAckTest#testFailoverWithQueueBrowser fails with the 0-10 Java client

Posted by "Andrew Kennedy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3008?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Kennedy reassigned QPID-3008:
------------------------------------

    Assignee: Robbie Gemmell  (was: Andrew Kennedy)

Ready for review

> QueueBrowserAutoAckTest#testFailoverWithQueueBrowser fails with the 0-10 Java client
> ------------------------------------------------------------------------------------
>
>                 Key: QPID-3008
>                 URL: https://issues.apache.org/jira/browse/QPID-3008
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Client
>    Affects Versions: 0.8
>            Reporter: Andrew Kennedy
>            Assignee: Robbie Gemmell
>
> In the 0-10 Java client when a QueueBrowser returns an Enumeration, and it is being enumerated over while the connection fails over, the consumer cannot tell that failover is ocurring and sends messages with incorrect subscriber tag numbers to the broker. The BasicMessageConsumer_0_10 uses the shared BasicMessageConsumer#acquireReceiving(boolean) method which tries to call AMQConnection#isFailingOver() and #blockUntilNotFailingOver() and receives incorrect results. This is because AMQConnectionDelegate_0_10 does not start a FailoverHandler continuation and therefore the AMQProtocolHandler#setFailoverLatch(CountdownLatch) and associated methods are never called.
> To correct this behaviour update the connection close method of the 0-10 delegate to create the latch, attempt failover and then decrement and remove the latch on success.
> QueueBrowserAutoAckTest#testFailoverWithQueueBrowser() is excluded from the cpp.noprefetch profile.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org