diff options
Diffstat (limited to 'qpid/cpp/src')
| -rw-r--r-- | qpid/cpp/src/qpid/ha/Settings.h | 2 | ||||
| -rw-r--r-- | qpid/cpp/src/qpid/ha/StatusCheck.cpp | 13 |
2 files changed, 10 insertions, 5 deletions
diff --git a/qpid/cpp/src/qpid/ha/Settings.h b/qpid/cpp/src/qpid/ha/Settings.h index 94c157bccd..be735cfe0d 100644 --- a/qpid/cpp/src/qpid/ha/Settings.h +++ b/qpid/cpp/src/qpid/ha/Settings.h @@ -37,7 +37,7 @@ class Settings { public: Settings() : cluster(false), queueReplication(false), - replicateDefault(NONE), backupTimeout(5*sys::TIME_SEC), + replicateDefault(NONE), backupTimeout(10*sys::TIME_SEC), flowMessages(100), flowBytes(0) {} diff --git a/qpid/cpp/src/qpid/ha/StatusCheck.cpp b/qpid/cpp/src/qpid/ha/StatusCheck.cpp index e56efc5873..6f92bec19e 100644 --- a/qpid/cpp/src/qpid/ha/StatusCheck.cpp +++ b/qpid/cpp/src/qpid/ha/StatusCheck.cpp @@ -47,12 +47,12 @@ class StatusCheckThread : public sys::Runnable { private: Url url; StatusCheck& statusCheck; - sys::Duration linkHeartbeatInterval; BrokerInfo brokerInfo; }; void StatusCheckThread::run() { QPID_LOG(debug, statusCheck.logPrefix << "Checking status of " << url); + Connection c; try { Variant::Map options, clientProperties; clientProperties = brokerInfo.asMap(); // Detect self connections. @@ -62,7 +62,7 @@ void StatusCheckThread::run() { options["client-properties"] = clientProperties; options["heartbeat"] = statusCheck.linkHeartbeatInterval/sys::TIME_SEC; - Connection c(url.str(), options); + c = Connection(url.str(), options); c.open(); Session session = c.createSession(); @@ -81,7 +81,8 @@ void StatusCheckThread::run() { content["_object_id"] = oid; encode(content, request); s.send(request); - Message response = r.fetch(messaging::Duration(linkHeartbeatInterval/TIME_MSEC)); + messaging::Duration timeout(statusCheck.linkHeartbeatInterval/sys::TIME_MSEC); + Message response = r.fetch(timeout); session.acknowledge(); Variant::List contentIn; decode(response, contentIn); @@ -96,7 +97,11 @@ void StatusCheckThread::run() { QPID_LOG(debug, statusCheck.logPrefix << "Status of " << url << ": " << status); } } catch(const exception& error) { - QPID_LOG(info, "Checking status of " << url << ": " << error.what()); + QPID_LOG(info, statusCheck.logPrefix << "Checking status of " << url << ": " << error.what()); + } + try { c.close(); } + catch(const exception& e) { + QPID_LOG(warning, statusCheck.logPrefix << "Error closing status check connection to " << url); } delete this; } |
