From d1c4af32b27b6d242d2b15e4dc91152a6d3e4a5a Mon Sep 17 00:00:00 2001 From: Alan Conway Date: Wed, 27 Jan 2010 20:56:31 +0000 Subject: Fix cluster elder calculation to ensure unique elder. Race condition in the previous algorithm allowed several cluster members to consider themselves the elder. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@903826 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/cluster/MemberSet.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'cpp/src/qpid/cluster/MemberSet.cpp') diff --git a/cpp/src/qpid/cluster/MemberSet.cpp b/cpp/src/qpid/cluster/MemberSet.cpp index 5dc148609f..0fdf4a8f96 100644 --- a/cpp/src/qpid/cluster/MemberSet.cpp +++ b/cpp/src/qpid/cluster/MemberSet.cpp @@ -25,6 +25,13 @@ namespace qpid { namespace cluster { +std::string encodeMemberSet(const MemberSet& m) { + std::string addresses; + for (MemberSet::const_iterator i = m.begin(); i != m.end(); ++i) + addresses.append(i->str()); + return addresses; +} + MemberSet decodeMemberSet(const std::string& s) { MemberSet set; for (std::string::const_iterator i = s.begin(); i < s.end(); i += 8) { -- cgit v1.2.1