-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/860/
-----------------------------------------------------------
Review request for qpid, Alan Conway, Gordon Sim, and Kim van der Riet.
Summary
-------
Modifies the broker's handling of Message.Accept to hold off the completion of
the command until all messages related to the accept have completed dequeue.
This particularly applies to persistent messages, as the store::dequeue()
operation must complete before the message is considered fully dequeued.
Note this bugfix requires some changes to the broker's store module interface:
previously, the store only identified the message when a dequeue was completed.
This is not enough information - the queue from which is was removed must also
be identified (the message may be in the process of being dequeued on several
queues at once).
This addresses bug qpid-3079.
https://issues.apache.org/jira/browse/qpid-3079
Diffs
-----
/branches/qpid-3079/qpid/cpp/src/qpid/broker/AsyncCompletion.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/DeliveryRecord.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/DeliveryRecord.cpp 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/Message.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/Message.cpp 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/MessageStore.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/MessageStoreModule.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/MessageStoreModule.cpp 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/NullMessageStore.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/NullMessageStore.cpp 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/PersistableMessage.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/PersistableMessage.cpp 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/PersistableQueue.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/Queue.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/Queue.cpp 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/RecoverableQueue.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/RecoveryManagerImpl.cpp 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/SemanticState.cpp 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/SessionContext.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/SessionState.h 1124895
/branches/qpid-3079/qpid/cpp/src/qpid/broker/SessionState.cpp 1124895
/branches/qpid-3079/qpid/cpp/src/tests/AsyncCompletion.cpp 1124895
/branches/qpid-3079/qpid/cpp/src/tests/QueueTest.cpp 1124895
/branches/qpid-3079/qpid/cpp/src/tests/TestMessageStore.h 1124895
Diff: https://reviews.apache.org/r/860/diff
Testing
-------
broker unit tests, store unit tests (modified jboss store). Still needs to be
vetted on non-linux, and have latest trunk merged in.
Thanks,
Kenneth