qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robbie Gemmell (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (QPID-3835) [Java broker] DurableSubscriptions without a selector on 0-10 connections will initially be unsubscribed at reconnect following upgrade of a legacy message store
Date Fri, 17 Feb 2012 15:09:59 GMT

    [ https://issues.apache.org/jira/browse/QPID-3835?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13210310#comment-13210310
] 

Robbie Gemmell commented on QPID-3835:
--------------------------------------

BDBStoreUpgradeTestPreparer isn't actually a test and is something you run manually so you
should see the output, all that checking would do is generate more output you would still
have to look at to know.
                
> [Java broker] DurableSubscriptions without a selector on 0-10 connections will initially
be unsubscribed at reconnect following upgrade of a legacy message store
> -----------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: QPID-3835
>                 URL: https://issues.apache.org/jira/browse/QPID-3835
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker, Java Broker BDB Store
>    Affects Versions: 0.14
>            Reporter: Robbie Gemmell
>            Assignee: Robbie Gemmell
>            Priority: Critical
>             Fix For: 0.15
>
>
> DurableSubscriptions without a selector on 0-10 connections will initially be unsubscribed
at reconnect following upgrade of a legacy message store. If an older broker release is upgraded
to the current format, the bindings for a DurableSubscriptions backing queue must be modified
if it previously had no selector, to ensure the client can correctly reconnect to the DurableSubscription
without having the existing messages lost due to an unsubscribe() bring performed.
> This is because the newer clients send the server-side selector argument with an empty
value to signfify the lack of a selector (to allow later querying if the selector has changed
in any way when using the 0-10 client) whereas old clients used the complete lack of the argument
to signal this. As a result, when determining if the selector has changed following a store
upgrade from a legacy broker, the client would incorrectly believe it had and follow the JMS
spec behaviour of doing an unsubscribe() before continuing, which would have the effect of
deleting the backing queue. The bindings of such queues should be manipulated during the upgrade
process to add the selector argument if it isnt already present.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
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


Mime
View raw message