qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (QPID-5404) HA broker message duplication when deleting a queue with an alt-exchange
Date Tue, 10 Dec 2013 14:12:07 GMT

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

ASF subversion and git services commented on QPID-5404:
-------------------------------------------------------

Commit 1549844 from [~aconway] in branch 'qpid/trunk'
[ https://svn.apache.org/r1549844 ]

QPID-5404: HA broker message duplication when deleting a queue with an alt-exchange

The old code ran auto-delete on the backup on disconnect.  This reroutes
messages onto the alt queue with incorrect replication IDs from the original
queue, and then replicates duplicate rerouted messages from the primary.  The
solution is to process auto deletes on the new primary and let them replicate to
the backups.

- Move all auto-delete logic into QueueReplicator
- Primary process auto-delete on QueueReplicator as part of promotion.

> HA broker message duplication when deleting a queue with an alt-exchange
> ------------------------------------------------------------------------
>
>                 Key: QPID-5404
>                 URL: https://issues.apache.org/jira/browse/QPID-5404
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Clustering
>    Affects Versions: 0.24
>            Reporter: Alan Conway
>            Assignee: Alan Conway
>
> See also: https://bugzilla.redhat.com/show_bug.cgi?id=859119
> Description of problem:
> When deleting a queue with an alternate exchange, both the primary and the backup brokers
will route messages to the alt-exchange when the queue is deleted.  This will cause the backups
to potentially receive duplicate copies of the message if the alt-exchange is bound to a replicated
queue (one set from the local route to the alt-exchange and another from the primary due to
its route to the alt-exchange).  Suggest that the backup brokers should not route messages
to the alt-exchange when a queue is deleted.  
> Additionally, for auto-delete queues with an alt-exchange, upon loss of a primary, the
backup brokers should not immediately start the auto-delete process.  Instead, the backups
should wait for the promotion of a new primary.  Upon selection of the new primary, the auto-delete
process can start so that the new primary will route the messages to the alt-exchange and
the backups will not route the messages to the alt-exchange.
> Version-Release number of selected component (if applicable):
> Qpid 0.18
> How reproducible:
> Backup needs to receive the QMF queue delete event prior to receiving the queue's deque
replication events.
> Steps to reproduce:
> 1) Bind queue test0 to amq.fanout
> 2) Create queue test1 with an alt-exchange to amq.fanout
> 3) Send a message to test1
> 4) Delete queue test1
> Actual results:
> The queue test0 will have 1 message on the primary host but 2 messages on the backups
> Expected results:
> The queue test0 will have 1 message on all hosts



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)

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


Mime
View raw message