summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2012-07-19 19:16:03 +0000
committerAlan Conway <aconway@apache.org>2012-07-19 19:16:03 +0000
commit3ea4a64bb9262287c3b1ea3bf0871c92bbe6efd6 (patch)
tree47e28ac68826830df1d4b105d64f920155360660
parent992da36a57e448f583930ed3bbdf84a30a691b68 (diff)
downloadqpid-python-3ea4a64bb9262287c3b1ea3bf0871c92bbe6efd6.tar.gz
QPID-4138: HA sporadic failure in ha_tests
This was another test issue: trace logging had been left on by mistake, which was slowing down the tests to the point they were hitting test time-outs. Also in this patch: Include symbolic satus in membership update log message. git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/0.18@1363485 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/cpp/src/qpid/ha/BrokerReplicator.cpp1
-rw-r--r--qpid/cpp/src/qpid/ha/HaBroker.cpp1
-rw-r--r--qpid/cpp/src/qpid/ha/Membership.cpp4
-rw-r--r--qpid/cpp/src/qpid/ha/Membership.h3
4 files changed, 8 insertions, 1 deletions
diff --git a/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp b/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
index 3eb30a9ec9..232ed26f00 100644
--- a/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
+++ b/qpid/cpp/src/qpid/ha/BrokerReplicator.cpp
@@ -440,7 +440,6 @@ void BrokerReplicator::doEventUnbind(Variant::Map& values) {
void BrokerReplicator::doEventMembersUpdate(Variant::Map& values) {
Variant::List members = values[MEMBERS].asList();
- QPID_LOG(debug, logPrefix << "Membership update event: " << members);
haBroker.setMembership(members);
}
diff --git a/qpid/cpp/src/qpid/ha/HaBroker.cpp b/qpid/cpp/src/qpid/ha/HaBroker.cpp
index 858f04e198..4fc0317fe5 100644
--- a/qpid/cpp/src/qpid/ha/HaBroker.cpp
+++ b/qpid/cpp/src/qpid/ha/HaBroker.cpp
@@ -288,6 +288,7 @@ void HaBroker::membershipUpdated(const Variant::List& brokers) {
void HaBroker::setMembership(const Variant::List& brokers) {
Mutex::ScopedLock l(lock);
membership.assign(brokers);
+ QPID_LOG(debug, logPrefix << "Membership update: " << membership);
BrokerInfo info;
// Check if my own status has been updated to READY
if (getStatus() == CATCHUP &&
diff --git a/qpid/cpp/src/qpid/ha/Membership.cpp b/qpid/cpp/src/qpid/ha/Membership.cpp
index b85c4d4164..cc2906dd8f 100644
--- a/qpid/cpp/src/qpid/ha/Membership.cpp
+++ b/qpid/cpp/src/qpid/ha/Membership.cpp
@@ -78,4 +78,8 @@ bool Membership::get(const types::Uuid& id, BrokerInfo& result) {
return true;
}
+std::ostream& operator<<(std::ostream& o, const Membership& members) {
+ return o << members.brokers;
+}
+
}} // namespace qpid::ha
diff --git a/qpid/cpp/src/qpid/ha/Membership.h b/qpid/cpp/src/qpid/ha/Membership.h
index 41245f0e06..3bd8653a64 100644
--- a/qpid/cpp/src/qpid/ha/Membership.h
+++ b/qpid/cpp/src/qpid/ha/Membership.h
@@ -58,8 +58,11 @@ class Membership
private:
types::Uuid self;
BrokerInfo::Map brokers;
+ friend std::ostream& operator<<(std::ostream&, const Membership&);
};
+std::ostream& operator<<(std::ostream&, const Membership&);
+
}} // namespace qpid::ha
#endif /*!QPID_HA_MEMBERSHIP_H*/