qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gordon Sim <g...@redhat.com>
Subject Re: [C++/Java Broker] [Transactions]
Date Mon, 04 Jan 2016 19:59:24 GMT
On 12/30/2015 06:37 PM, aconway wrote:
> On Wed, 2015-12-30 at 10:22 +0100, Olivier Mallassi wrote:
>> Hi all
>>
>> again, my apologies for all these questions.
>>
>> I am trying to clarify my understanding around transactions support
>> within
>> qpid and here is my current understanding (based on documentation &
>> JIRA).
>> I have to say I did not test anything yet.
>
> Here's what I know:
>
> * qpidd C++ without HA: persistence (linearstore), TX, DTX.

Though DTX is only supported over AMQP 0-10 at present. As Rob notes, 
AMQP 1.0 does not fully define how distributed transactions are supposed 
to work.

> * qpidd C++ with HA: persistence, limited TX, no DTX
> * dispatch link routing: will forward TX/DTX (I think, not tested)

I'd be quite surprised if that works, unless there has been specific 
code added to allow it. The transaction context is sent as a special 
delivery state on the transfer or disposition and the way this is 
exposed in proton would require explicit handling to copy the data 
object associated with a delivery. From a quick grep of the dispatch 
code I don't see any reference to the relevant proton method 
(pn_disposition_data).

> * dispatch message routing: no TX/DTX

[...]
> I believe dispatch *could* support at least some of the AMQP 1.0 TX and
> DTX modes even with message routing, we just haven't gotten there yet.

For local transactions, any transfer or disposition related to the 
transaction needs to be routed to the same process, over the same 
connection[1], as that to which the transaction controller link is routed.

[1] If the multi-ssns-per-txn capability is not supported by the process 
in question, the same session would have to be used. If the 
multi-txns-per-ssn capability was not supported then you would need a 
unique session for every distinct transaction.



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org


Mime
View raw message