From 1674d80b61862e1054140c96f5db9eb401b11f11 Mon Sep 17 00:00:00 2001 From: Alan Conway Date: Wed, 18 Nov 2009 17:26:43 +0000 Subject: Added cluster option --cluster-size. --cluster-size=N means that during start-up the cluster waits to have N members before accepting any clients. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@881839 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/cluster/InitialStatusMap.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'cpp/src/qpid/cluster/InitialStatusMap.cpp') diff --git a/cpp/src/qpid/cluster/InitialStatusMap.cpp b/cpp/src/qpid/cluster/InitialStatusMap.cpp index 6d27b3ae72..f2251f4043 100644 --- a/cpp/src/qpid/cluster/InitialStatusMap.cpp +++ b/cpp/src/qpid/cluster/InitialStatusMap.cpp @@ -28,8 +28,8 @@ using namespace boost; namespace qpid { namespace cluster { -InitialStatusMap::InitialStatusMap(const MemberId& self_) - : self(self_), completed(), resendNeeded() +InitialStatusMap::InitialStatusMap(const MemberId& self_, size_t size_) + : self(self_), completed(), resendNeeded(), size(size_) {} void InitialStatusMap::configChange(const MemberSet& members) { @@ -83,7 +83,8 @@ bool InitialStatusMap::isActive(const Map::value_type& v) { } bool InitialStatusMap::isComplete() { - return !map.empty() && find_if(map.begin(), map.end(), ¬Initialized) == map.end(); + return !map.empty() && find_if(map.begin(), map.end(), ¬Initialized) == map.end() + && (map.size() >= size); } bool InitialStatusMap::transitionToComplete() { -- cgit v1.2.1