Author: gsim
Date: Wed Mar 27 11:41:09 2013
New Revision: 1461536
URL: http://svn.apache.org/r1461536
Log:
QPID-4667: Fix for selective message acknowledgement over AMQP 1.0 (merged from
r1461248)
Modified:
qpid/branches/0.22/qpid/ (props changed)
qpid/branches/0.22/qpid/cpp/src/ (props changed)
qpid/branches/0.22/qpid/cpp/src/qpid/messaging/amqp/SessionContext.cpp
Propchange: qpid/branches/0.22/qpid/
------------------------------------------------------------------------------
Merged /qpid/trunk/qpid:r1461248
Propchange: qpid/branches/0.22/qpid/cpp/src/
------------------------------------------------------------------------------
Merged /qpid/trunk/qpid/cpp/src:r1461248
Modified: qpid/branches/0.22/qpid/cpp/src/qpid/messaging/amqp/SessionContext.cpp
URL:
http://svn.apache.org/viewvc/qpid/branches/0.22/qpid/cpp/src/qpid/messaging/amqp/SessionContext.cpp?rev=1461536&r1=1461535&r2=1461536&view=diff
==============================================================================
--- qpid/branches/0.22/qpid/cpp/src/qpid/messaging/amqp/SessionContext.cpp
(original)
+++ qpid/branches/0.22/qpid/cpp/src/qpid/messaging/amqp/SessionContext.cpp Wed
Mar 27 11:41:09 2013
@@ -138,9 +138,13 @@ void SessionContext::acknowledge()
void SessionContext::acknowledge(const qpid::framing::SequenceNumber& id, bool
cumulative)
{
+ QPID_LOG(debug, "acknowledging selected messages, id=" << id << ",
cumulative=" << cumulative);
DeliveryMap::iterator i = unacked.find(id);
if (i != unacked.end()) {
- acknowledge(cumulative ? unacked.begin() : i, ++i);
+ DeliveryMap::iterator start = cumulative ? unacked.begin() : i;
+ acknowledge(start, ++i);
+ } else {
+ QPID_LOG(debug, "selective acknowledgement failed; message not found
for id " << id);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]