From 729e9ce65125154cfdd2877abc8f7a901ad7caa2 Mon Sep 17 00:00:00 2001 From: Alan Conway Date: Tue, 3 Feb 2009 21:28:14 +0000 Subject: Fix for race conditions in cluster join. - ConnectionDecoder: separated from Connection. - cluster/PollableQueue: stop processing frames if PollableQueue is stopped. - move state checks in event-queue handler to frame-queue handler. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@740459 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/cluster/EventFrame.cpp | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) (limited to 'cpp/src/qpid/cluster/EventFrame.cpp') diff --git a/cpp/src/qpid/cluster/EventFrame.cpp b/cpp/src/qpid/cluster/EventFrame.cpp index c1f96ad1b2..ba01c170dd 100644 --- a/cpp/src/qpid/cluster/EventFrame.cpp +++ b/cpp/src/qpid/cluster/EventFrame.cpp @@ -26,21 +26,14 @@ namespace cluster { EventFrame::EventFrame() : sequence(0) {} -EventFrame::EventFrame( - const boost::intrusive_ptr& c, const Event& e, - const framing::AMQFrame& f, int rc -) : connection(c), member(e.getMemberId()), frame(f), - sequence(e.getSequence()), readCredit(rc) +EventFrame::EventFrame(const EventHeader& e, const framing::AMQFrame& f, int rc) + : connectionId(e.getConnectionId()), frame(f), sequence(e.getSequence()), readCredit(rc) { QPID_LATENCY_INIT(frame); } std::ostream& operator<<(std::ostream& o, const EventFrame& e) { - if (e.connection) - o << e.connection->getId(); - else - o << e.member; - return o << "/" << e.sequence << " " << e.frame << " rc=" << e.readCredit; + return o << e.connectionId << "/" << e.sequence << " " << e.frame << " rc=" << e.readCredit; } }} // namespace qpid::cluster -- cgit v1.2.1