summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster/Connection.cpp
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2009-06-05 17:39:07 +0000
committerGordon Sim <gsim@apache.org>2009-06-05 17:39:07 +0000
commit6efddffd3c04fc16d2e63ccfa9db6c6ad0798825 (patch)
tree7b9e3b3b7e02b058af5919649cc0831bee99605a /cpp/src/qpid/cluster/Connection.cpp
parentdb28bbe4b54cef5457e5349f85a154393db70a8d (diff)
downloadqpid-python-6efddffd3c04fc16d2e63ccfa9db6c6ad0798825.tar.gz
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
Diffstat (limited to 'cpp/src/qpid/cluster/Connection.cpp')
-rw-r--r--cpp/src/qpid/cluster/Connection.cpp3
1 files changed, 2 insertions, 1 deletions
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);
}