[infinispan-dev] javax.transaction.xa.Xid

Mircea Markus mircea.markus at jboss.com
Thu Mar 17 06:53:17 EDT 2011


On 17 Mar 2011, at 10:52, Mircea Markus wrote:

> 
> On 17 Mar 2011, at 10:33, Jonathan Halliday wrote:
> 
>> 
>> You'll need to store the content, not the Object. The interface has getters to extract the field values which are primitive types and thus easy to store. You'll need your own impl of the interface if you need to recreate internally. JBossTS does not care what it receives, as long as it implements the Xid interface. It won't necessarily give you back your own impl when calling your methods though.
> good, that's what I expected.
>> 
>> If you're writing your own impl the most important bit oddly enough is toString(). We have endless hassle from systems that print Xids binary value in different forms, making correlation of the TM and RM logs rather hairy. Try not to invent yet another format please :-)
> What I can do is use the same .toString from JBossTM: can you please confirm this is the one: com.arjuna.ats.jta.xa.toString()
I ment com.arjuna.ats.jta.xa.XID.toString()
> The problem is still there for other TMs though, so at one point we might want to do this pluggable. 
> Pluggable .toString() - can't believe I've just said that!!! :-) 
>> 
>> Jonathan.
>> 
>> On 03/17/2011 10:26 AM, Mircea Markus wrote:
>>> Hi Jonathan,
>>> 
>>> We need to serialize the javax.transaction.xa.Xid received from TM in order to back up information on other nodes. Xid is not serializable so we need to use our internal Xid implementation in order to be able to de-serialize it.
>>> This also means that XAResource.recover returns Xid instances that are of type org.infinispan.tx.Xid, with its own implementation of equals and hashcode, but with exactly the same state as the org.custom.tm.Xid.
>>> Would JBossTM expect XAResource.recover to return Xids of a different java.lang.Class? What's your take in general on this problem?
>>> 
>>> Cheers,
>>> Mircea
>> 
>> -- 
>> 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 infinispan-dev mailing list