----------------------------------------------------------- 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
