summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster/MemberHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid/cluster/MemberHandler.cpp')
-rw-r--r--cpp/src/qpid/cluster/MemberHandler.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/cpp/src/qpid/cluster/MemberHandler.cpp b/cpp/src/qpid/cluster/MemberHandler.cpp
index 53a1d13a4d..5f02754443 100644
--- a/cpp/src/qpid/cluster/MemberHandler.cpp
+++ b/cpp/src/qpid/cluster/MemberHandler.cpp
@@ -52,10 +52,8 @@ void MemberHandler::deliver(Event& e) {
cluster.connectionEventQueue.push(e);
}
-void MemberHandler::update(const MemberId&, const framing::FieldTable& , uint64_t) {
- Mutex::ScopedLock l(cluster.lock);
- cluster.updateMemberStats();
-}
+// Updates are for new joiners.
+void MemberHandler::update(const MemberId&, const framing::FieldTable& , uint64_t) {}
void MemberHandler::dumpRequest(const MemberId& dumpee, const std::string& urlStr) {
Mutex::ScopedLock l(cluster.lock);
@@ -75,8 +73,9 @@ void MemberHandler::dumpRequest(const MemberId& dumpee, const std::string& urlSt
boost::bind(&MemberHandler::dumpError, this, _1)));
}
-void MemberHandler::ready(const MemberId& id, const std::string& url) {
- cluster.map.ready(id, Url(url));
+void MemberHandler::ready(const MemberId& id, const std::string& urlStr) {
+ if (cluster.map.ready(id, Url(urlStr)))
+ cluster.updateMemberStats();
}