[dna-dev] Non-XA compliant resource participation in distributed transactions

Mark Little mlittle at redhat.com
Thu May 15 09:36:55 EDT 2008


Do you mean federated within the same VM or across VMs?

Mark.


On 15 May 2008, at 14:21, Randall Hauch wrote:

> Right.  Now I guess I have a question, tho, regarding the  
> implementation of federation connectors to systems (e.g., file  
> systems in particular) that don't have any natural support for  
> transactions.  Is implementing the connector as if it is XA- 
> compliant a bad thing to do?
>
> On May 15, 2008, at 3:59 AM, Mark Little wrote:
>
>> As I said in an earlier email, there are significant differences  
>> between compensating transactions and ACID transactions (of which  
>> XA is just one possible implementation). You shouldn't offer  
>> compensating transactions opaquely to users if they register  
>> multiple 1PC-aware resources because the semantics are different.  
>> Using them without understanding the implications can be a PITA at  
>> best and cause significant data inconsistencies at worse  
>> (compensations can fail or take an arbitrary amount of time to  
>> resolve). ACID transactions are a pretty good default. If users  
>> have multiple 1PC-aware resources then it may be in their best  
>> interests to convert them to 2PC rather than be lulled into some  
>> false sense of security that somehow a compensating transaction  
>> will give them the same guarantees.
>>
>> Mark.
>>
>>
>>
>> On 14 May 2008, at 22:28, Randall Hauch wrote:
>>
>>> I agree that what you are suggesting is still transactional  
>>> (except for the last source, which is not transactional).  But we  
>>> will likely need to supporting several non-XA sources (e.g., file  
>>> systems, applications, etc.) within an XA system.  And, if we know  
>>> the individual changes to each node for each source, we shouldn't  
>>> we also be able to use compensating transactions to "rollback"  
>>> changes to the non-XA system?
>>>
>>> I think there's value to supporting both.  I just think the odds  
>>> of having more than one non-XA source is pretty high.
>>>
>>> On May 14, 2008, at 4:22 PM, John P. A. Verhaeg wrote:
>>>
>>>> The big difference here seems to be the exposure of the updates  
>>>> before the distributed transaction is committed.  What I'm  
>>>> suggesting is still XA-compliant, while compensating transactions  
>>>> are not.
>>>>
>>>> Randall Hauch wrote:
>>>>> This is the behavior allowed by JBoss Transactions (Arjuna), and  
>>>>> it seems useful.  However, I wonder if we can do compensating  
>>>>> transactions, is there still an advantage to supporting n-1 XA  
>>>>> plus 1 non-XA?
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Randall
>>>>>
>>>>> On May 14, 2008, at 4:10 PM, John P. A. Verhaeg wrote:
>>>>>
>>>>>> Seems like we ought to strive to support n-1 XA resources for  
>>>>>> distributed transactions, allowing for the last participant in  
>>>>>> a transaction (thus, this participants updates can't be done in  
>>>>>> parallel with the other resources) to not support XA  
>>>>>> transactions, but still participate in a distributed  
>>>>>> transaction with other XA-compliant resources.  Unlike  
>>>>>> compensating transactions, the non-XA participant would appear  
>>>>>> transactional and none of the updates would be visible until  
>>>>>> the entire transaction was complete.  It seems like this could  
>>>>>> open up many more possible configurations for customers.
>>>>>> _______________________________________________
>>>>>> dna-dev mailing list
>>>>>> dna-dev at lists.jboss.org
>>>>>> https://lists.jboss.org/mailman/listinfo/dna-dev
>>>>>
>>>>>
>>>> _______________________________________________
>>>> dna-dev mailing list
>>>> dna-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/dna-dev
>>>
>>> _______________________________________________
>>> dna-dev mailing list
>>> dna-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/dna-dev
>>
>> ----
>> Mark Little
>> mlittle at redhat.com
>>
>> JBoss, a Division of Red Hat
>> Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod  
>> Street, Windsor, Berkshire, SI4 1TE, United Kingdom.
>> Registered in UK and Wales under Company Registration No. 3798903  
>> Directors: Michael Cunningham (USA), Charlie Peters (USA), Matt  
>> Parsons (USA) and Brendan Lane (Ireland).
>>
>

----
Mark Little
mlittle at redhat.com

JBoss, a Division of Red Hat
Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod  
Street, Windsor, Berkshire, SI4 1TE, United Kingdom.
Registered in UK and Wales under Company Registration No. 3798903  
Directors: Michael Cunningham (USA), Charlie Peters (USA), Matt  
Parsons (USA) and Brendan Lane (Ireland).




More information about the dna-dev mailing list