----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/28209/ -----------------------------------------------------------
Review request for qpid and Gordon Sim. Repository: qpid Description ------- My tests that roll back are failing, messages acquired during tx are not being put back on queues. I can see from logs that Transaction::discharge is being called and is doing the pn_delivery_update() calls, and that there is a driver wakeup after that, but there are no -> @dispositions leaving from the client. I can see dispositions being sent by the client when the messages are acknowledged within the transaction, and the code looks similar so I'm not sure why they are not being sent at discharge. (The locking between ConnectionContext and Transaction is screwed up, I know that & will fix) Summary of changes: Added descriptor list to Variant and support in Encoder. Variant changes are source and binary compatible. Other minor changes: - Variant refactor: don't delete impl on every assignment. - Add Variant constructors that take a string encoding. (new constructors, not defaulted arguments, so the change is binary and source compatible.) - Growable buffer support for Encoder. QPID-4710: [AMQP 1.0] Support for transactions in qpid.messaging C++ client. - interop_tests.py: transaction tests that can be run against any broker (env QPID_INTEROP_URL) - messaging/amqp/Transaction.h,cpp: transaction logic - communicate with coordinator, send declare/dischange messages. - add tx state info to transfers and acknowledgements. - Misc. improvements to logging Diffs ----- trunk/qpid/cpp/include/qpid/types/Variant.h 1640198 trunk/qpid/cpp/src/amqp.cmake 1640198 trunk/qpid/cpp/src/qpid/amqp/CharSequence.cpp 1640198 trunk/qpid/cpp/src/qpid/amqp/Descriptor.h 1640198 trunk/qpid/cpp/src/qpid/amqp/Descriptor.cpp 1640198 trunk/qpid/cpp/src/qpid/amqp/Encoder.h 1640198 trunk/qpid/cpp/src/qpid/amqp/Encoder.cpp 1640198 trunk/qpid/cpp/src/qpid/amqp/descriptors.h 1640198 trunk/qpid/cpp/src/qpid/broker/Queue.cpp 1640198 trunk/qpid/cpp/src/qpid/broker/TxDequeue.cpp 1640198 trunk/qpid/cpp/src/qpid/broker/amqp/Connection.cpp 1640198 trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp 1640198 trunk/qpid/cpp/src/qpid/broker/amqp/Session.cpp 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/ConnectionContext.h 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/ConnectionContext.cpp 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/PnData.h 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/PnData.cpp 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/SenderContext.h 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/SenderContext.cpp 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/SenderHandle.cpp 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/SessionContext.h 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/SessionContext.cpp 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/SessionHandle.cpp 1640198 trunk/qpid/cpp/src/qpid/messaging/amqp/Transaction.h PRE-CREATION trunk/qpid/cpp/src/qpid/messaging/amqp/Transaction.cpp PRE-CREATION trunk/qpid/cpp/src/qpid/types/Variant.cpp 1640198 trunk/qpid/cpp/src/qpid/types/encodings.h 1640198 trunk/qpid/cpp/src/tests/Variant.cpp 1640198 trunk/qpid/cpp/src/tests/brokertest.py 1640198 trunk/qpid/cpp/src/tests/ha_tests.py 1640198 trunk/qpid/cpp/src/tests/interop_tests.py PRE-CREATION Diff: https://reviews.apache.org/r/28209/diff/ Testing ------- Thanks, Alan Conway
