From ff5c8a9034026a6d3ae437fa89c9f3cb9a1ba022 Mon Sep 17 00:00:00 2001 From: Alan Conway Date: Fri, 3 Oct 2008 20:56:38 +0000 Subject: Cluster join & brain-dumps working. cluster: improved join protocol, fixed race conditions. client/ConnectionHandler,ConnectionImpl: fixed connection close race causing client hang. src/qpid/sys/PollableQueue.h: fixed incorrect use of startWatch/stopWatch. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@701532 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/cluster/ConnectionCodec.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'cpp/src/qpid/cluster/ConnectionCodec.cpp') diff --git a/cpp/src/qpid/cluster/ConnectionCodec.cpp b/cpp/src/qpid/cluster/ConnectionCodec.cpp index 1458a87923..44e40f0591 100644 --- a/cpp/src/qpid/cluster/ConnectionCodec.cpp +++ b/cpp/src/qpid/cluster/ConnectionCodec.cpp @@ -52,17 +52,20 @@ ConnectionCodec::Factory::create(sys::OutputControl& out, const std::string& id) ConnectionCodec::ConnectionCodec(sys::OutputControl& out, const std::string& id, Cluster& cluster, bool catchUp) : codec(out, id, false), - interceptor(new Connection(cluster, codec, id, cluster.getSelf(), catchUp)), - id(interceptor->getId()) + interceptor(new Connection(cluster, codec, id, cluster.getId(), catchUp)), + id(interceptor->getId()), + localId(id) { std::auto_ptr ih(new ProxyInputHandler(interceptor)); codec.setInputHandler(ih); - cluster.insert(interceptor); + if (!catchUp) // Don't put catchUp connections in the cluster map. + cluster.insert(interceptor); } ConnectionCodec::~ConnectionCodec() {} size_t ConnectionCodec::decode(const char* buffer, size_t size) { + QPID_LOG(trace, "RECVB [" << localId << "]: " << size << " bytes"); return interceptor->decode(buffer, size); } -- cgit v1.2.1