Red Hat Bugzilla – Bug 874298
HA add UUID tag to avoid using an out of date queue.
Last modified: 2013-03-19 12:38:20 EDT
Description of problem:
Here's the scenario: we have a cluster with primary A and backups B and C. There is a queue Q that is replicated to both. Now A dies and B takes over as primary. Before C has connected to B, a client destroys Q and creates a new queue with the same name, Q. When C does connect it sees a queue named Q and mistakenly assumes it is the same queue as it's own Q - so it has an incorrect replica of Q. The same scenario applies to exchanges.
Version-Release number of selected component (if applicable):
How reproducible: 100%
Steps to Reproduce:
1. Start a 3 cluster
2. Create a queue Q with messages
3. Kill the primary but don't promote any backups
4. On one broker delete and re-create Q, then promote the broker
Actual results: The other backup will keep it's out-of-date Q and messages.
Expected results: The other backup deletes its old Q and creates a new one to replicate the new Q.
The unit test in this patch illustrates how to reproduce the problem.