diff options
author | Alan Conway <aconway@apache.org> | 2010-03-08 17:34:09 +0000 |
---|---|---|
committer | Alan Conway <aconway@apache.org> | 2010-03-08 17:34:09 +0000 |
commit | c1266e53dd9c20447f658b050fb789d4f0f9ab12 (patch) | |
tree | 513716e9b9b97f57c5493a9ec2e5186ef78c811e /cpp/src/qpid/cluster/InitialStatusMap.h | |
parent | b97d2e0e9246a19eb155a38b9b06a9550ceb06aa (diff) | |
download | qpid-python-c1266e53dd9c20447f658b050fb789d4f0f9ab12.tar.gz |
QPID-2436: Fix cluster update of remote agents.
The v2key of cluster agents was not being passed as part of a cluster update.
This meant they were not being associated with the correct shadow connections on
the updatee. This caused inconsistencies that shut down the new broker.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@920414 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/cluster/InitialStatusMap.h')
-rw-r--r-- | cpp/src/qpid/cluster/InitialStatusMap.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/cpp/src/qpid/cluster/InitialStatusMap.h b/cpp/src/qpid/cluster/InitialStatusMap.h index 26a99fa0b0..eedc99b0b2 100644 --- a/cpp/src/qpid/cluster/InitialStatusMap.h +++ b/cpp/src/qpid/cluster/InitialStatusMap.h @@ -31,6 +31,11 @@ namespace cluster { /** * Track status of cluster members during initialization. + * + * When a new member joins the CPG cluster, all members send an initial-status + * control. This map tracks those controls and provides data to make descisions + * about joining the cluster. + * */ class InitialStatusMap { @@ -38,7 +43,7 @@ class InitialStatusMap typedef framing::ClusterInitialStatusBody Status; InitialStatusMap(const MemberId& self, size_t size); - /** Process a config change. @return true if we need to re-send our status */ + /** Process a config change. May make isResendNeeded() true. */ void configChange(const MemberSet& newConfig); /** @return true if we need to re-send status */ bool isResendNeeded(); @@ -52,7 +57,7 @@ class InitialStatusMap bool transitionToComplete(); /**@pre isComplete(). @return this node's elders */ MemberSet getElders() const; - /**@pre isComplete(). @return True if we need an update. */ + /**@pre isComplete(). @return True if we need to request an update. */ bool isUpdateNeeded(); /**@pre isComplete(). @return Cluster-wide cluster ID. */ framing::Uuid getClusterId(); |