diff options
| author | Alan Conway <aconway@apache.org> | 2010-02-02 15:47:41 +0000 |
|---|---|---|
| committer | Alan Conway <aconway@apache.org> | 2010-02-02 15:47:41 +0000 |
| commit | 3a75d755f87a495ae02bdf69af6723c62584b190 (patch) | |
| tree | e743dad1695c753465aefb55c12d0a162976968d /cpp/src/qpid/cluster/Cluster.cpp | |
| parent | 21e39f778986321e7477f26b24f949fb798b58b4 (diff) | |
| download | qpid-python-3a75d755f87a495ae02bdf69af6723c62584b190.tar.gz | |
Cluster: fix update of failover exchange.
During update the cluster was sending an extra update to the failover exchange.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@905676 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/cluster/Cluster.cpp')
| -rw-r--r-- | cpp/src/qpid/cluster/Cluster.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/cpp/src/qpid/cluster/Cluster.cpp b/cpp/src/qpid/cluster/Cluster.cpp index 3a6c902d29..8eda6c1949 100644 --- a/cpp/src/qpid/cluster/Cluster.cpp +++ b/cpp/src/qpid/cluster/Cluster.cpp @@ -826,7 +826,7 @@ void Cluster::checkUpdateIn(Lock& l) { if (state != UPDATEE) return; // Wait till we reach the stall point. if (updatedMap) { // We're up to date map = *updatedMap; - memberUpdate(l); + failoverExchange->setUrls(getUrls(l)); mcast.mcastControl(ClusterReadyBody(ProtocolVersion(), myUrl.str()), self); state = CATCHUP; broker.setClusterUpdatee(false); @@ -908,9 +908,9 @@ void Cluster::memberUpdate(Lock& l) { std::vector<Url> urls = getUrls(l); std::vector<string> ids = getIds(l); size_t size = urls.size(); - failoverExchange->setUrls(urls); + failoverExchange->updateUrls(urls); - if (size == 1 && lastSize > 1 && state >= CATCHUP) { + if (size == 1 && lastSize > 1 && state >= CATCHUP) { QPID_LOG(notice, *this << " last broker standing, update queue policies"); lastBroker = true; broker.getQueues().updateQueueClusterState(true); |
