-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/8604/
-----------------------------------------------------------

Review request for qpid, Gordon Sim, Kim van der Riet, and Jason Dillaman.


Description
-------

When an exchange or queue that utilizes an alternate exchange is replicated to 
a backup broker, the backup broker does not increment the user count on the 
alternate exchange. This will incorrectly allow an alternate exchange to be 
deleted when it is still in use and will incorrectly prevent a exchange from 
being deleted when it is no longer an alternate exchange.

Fixed by incrementing use counters in Exchange/Queue::setAlternate() so they're 
always incremented when an alternate is set.

Note this change does alter the behaviour of recovery, but it seems to me the 
previous behaviour was incorrect: exchanges did not have the alternate-exchange 
count increased when recovered from the store, but they still have it decreased 
when a user is deleted, giving corrupted use counters.


Diffs
-----

  /trunk/qpid/cpp/src/qpid/broker/Broker.cpp 1422060 
  /trunk/qpid/cpp/src/qpid/broker/Exchange.cpp 1422060 
  /trunk/qpid/cpp/src/qpid/broker/ExchangeRegistry.cpp 1422060 
  /trunk/qpid/cpp/src/qpid/broker/Queue.cpp 1422060 
  /trunk/qpid/cpp/src/qpid/broker/QueueRegistry.cpp 1422060 
  /trunk/qpid/cpp/src/tests/ha_tests.py 1422060 

Diff: https://reviews.apache.org/r/8604/diff/


Testing
-------


Thanks,

Alan Conway

Reply via email to