Hi Gordon, I am happy for the below fix to be included in RC2, please feel free to merge the update across to the branch.
Andrew has indicated he doesnt think QPID-2674 is really a blocker, do you still believe it is? I would like to see it either fixed or downgraded and pushed out to 0.9 before RC2 is produced (which would be over the weekend). Robbie On 12 November 2010 13:45, Gordon Sim <[email protected]> wrote: > Robbie, > > If there is to be a new RC for 0.8, would you be happy including the fix > below in it? The issue is not critical as there is a workaround. However its > annoying, the fix is small and low risk and it would be nicer to avoid > having users hit the issue until the following release. > > --Gordon. > > On 11/12/2010 01:22 PM, [email protected] wrote: >> >> Author: gsim >> Date: Fri Nov 12 13:22:31 2010 >> New Revision: 1034393 >> >> URL: http://svn.apache.org/viewvc?rev=1034393&view=rev >> Log: >> QPID-2940: always request completions from broker on >> Session::acknowledge(), and always clean up any pending accept records at >> that time >> >> Modified: >> qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/SessionImpl.cpp >> qpid/trunk/qpid/cpp/src/qpid/messaging/Session.cpp >> >> Modified: qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/SessionImpl.cpp >> URL: >> http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/SessionImpl.cpp?rev=1034393&r1=1034392&r2=1034393&view=diff >> >> ============================================================================== >> --- qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/SessionImpl.cpp >> (original) >> +++ qpid/trunk/qpid/cpp/src/qpid/client/amqp0_10/SessionImpl.cpp Fri Nov >> 12 13:22:31 2010 >> @@ -97,7 +97,7 @@ void SessionImpl::acknowledge(bool sync_ >> //message may be redelivered; i.e. the application cannot delete >> //any state necessary for preventing reprocessing of the message >> execute<Acknowledge>(); >> - if (sync_) sync(true); >> + sync(sync_); >> } >> >> void SessionImpl::reject(qpid::messaging::Message& m) >> @@ -433,6 +433,8 @@ void SessionImpl::syncImpl(bool block) >> { >> if (block) session.sync(); >> else session.flush(); >> + //cleanup unconfirmed accept records: >> + incoming.pendingAccept(); >> } >> >> void SessionImpl::commitImpl() >> >> Modified: qpid/trunk/qpid/cpp/src/qpid/messaging/Session.cpp >> URL: >> http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/messaging/Session.cpp?rev=1034393&r1=1034392&r2=1034393&view=diff >> >> ============================================================================== >> --- qpid/trunk/qpid/cpp/src/qpid/messaging/Session.cpp (original) >> +++ qpid/trunk/qpid/cpp/src/qpid/messaging/Session.cpp Fri Nov 12 13:22:31 >> 2010 >> @@ -39,7 +39,7 @@ Session& Session::operator=(const Sessio >> void Session::commit() { impl->commit(); } >> void Session::rollback() { impl->rollback(); } >> void Session::acknowledge(bool sync) { impl->acknowledge(sync); } >> -void Session::acknowledge(Message& m, bool s) { impl->acknowledge(m); if >> (s) sync(true); } >> +void Session::acknowledge(Message& m, bool s) { impl->acknowledge(m); >> sync(s); } >> void Session::reject(Message& m) { impl->reject(m); } >> void Session::release(Message& m) { impl->release(m); } >> void Session::close() { impl->close(); } >> >> >> >> --------------------------------------------------------------------- >> Apache Qpid - AMQP Messaging Implementation >> Project: http://qpid.apache.org >> Use/Interact: mailto:[email protected] >> >> > > > --------------------------------------------------------------------- > Apache Qpid - AMQP Messaging Implementation > Project: http://qpid.apache.org > Use/Interact: mailto:[email protected] > > --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:[email protected]
