From 6efddffd3c04fc16d2e63ccfa9db6c6ad0798825 Mon Sep 17 00:00:00 2001 From: Gordon Sim Date: Fri, 5 Jun 2009 17:39:07 +0000 Subject: Further fix to new cluster member state transfer to fix a case where unacked messages on ring policy queue cause inconsistencies in queue state between nodes. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@782075 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/cluster/Connection.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'cpp/src/qpid/cluster/Connection.cpp') diff --git a/cpp/src/qpid/cluster/Connection.cpp b/cpp/src/qpid/cluster/Connection.cpp index f2904c6734..be6281b4e3 100644 --- a/cpp/src/qpid/cluster/Connection.cpp +++ b/cpp/src/qpid/cluster/Connection.cpp @@ -325,6 +325,7 @@ void Connection::deliveryRecord(const string& qname, bool completed, bool ended, bool windowing, + bool enqueued, uint32_t credit) { broker::QueuedMessage m; @@ -333,7 +334,7 @@ void Connection::deliveryRecord(const string& qname, if (acquired) { // Message is on the update queue m = getUpdateMessage(); m.queue = queue.get(); - queue->enqueued(m); //inform queue of the message + if (enqueued) queue->enqueued(m); //inform queue of the message } else { // Message at original position in original queue m = queue->find(position); } -- cgit v1.2.1