summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/Queue.cpp
diff options
context:
space:
mode:
authorKim van der Riet <kpvdr@apache.org>2010-04-13 17:28:52 +0000
committerKim van der Riet <kpvdr@apache.org>2010-04-13 17:28:52 +0000
commita41bff40eb9080aa99a06b5325d47d995079d5a0 (patch)
tree6646955f9949fd0d4b8a7ab851005d1fea7cc427 /cpp/src/qpid/broker/Queue.cpp
parent118c4bb7fa781bbb4512a66ba1ca618e70abe64b (diff)
downloadqpid-python-a41bff40eb9080aa99a06b5325d47d995079d5a0.tar.gz
Fix for QPID-2470 - Broker does not honour flow-to-disk policy on recovery
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@933711 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/broker/Queue.cpp')
-rw-r--r--cpp/src/qpid/broker/Queue.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/cpp/src/qpid/broker/Queue.cpp b/cpp/src/qpid/broker/Queue.cpp
index 8d9248212f..d3a464a6fe 100644
--- a/cpp/src/qpid/broker/Queue.cpp
+++ b/cpp/src/qpid/broker/Queue.cpp
@@ -188,10 +188,14 @@ void Queue::recover(boost::intrusive_ptr<Message>& msg){
msg->enqueueComplete(); // mark the message as enqueued
mgntEnqStats(msg);
- if (store && !msg->isContentLoaded()) {
+ if (store && (!msg->isContentLoaded() || msg->checkContentReleasable())) {
//content has not been loaded, need to ensure that lazy loading mode is set:
//TODO: find a nicer way to do this
msg->releaseContent(store);
+ // NOTE: The log message in this section are used for flow-to-disk testing (which checks the log for the
+ // presence of this message). Do not change this without also checking these tests.
+ QPID_LOG(debug, "Message id=\"" << msg->getProperties<MessageProperties>()->getMessageId() << "\"; pid=0x" <<
+ std::hex << msg->getPersistenceId() << std::dec << ": Content released after recovery");
}
}