2 Replies Latest reply on Jan 12, 2007 2:09 PM by Baron Davis

    Keeping track of global Xid-local Xid mappings

    Baron Davis Newbie

      Scenario: I have server side system using XA capable RDBMS with XA capable JDBC driver and I want to expose my services using JBoss XTS.

      Am I wrong when I say that I, as a Durable2PCParticipant implementor, must keep track which global transaction ID genereted by transaction initiator external to my system, maps to which Xid in my system. I retrieve global transaction ID via (UserTransactionFactory.userTransaction().toString()),
      however, if I use JTA/JTS capable transaction manager on my server side to communicate with the XA database, JTA/JTS API does not have means to get Xid generated by transaction manager.

      So it seems to me, and I hope that I am wrong, Durable2PCParticipant implementation must communicate with XAResource, and XAResource methods require Xid, and since global Xid may not be the same as one generated by my transaction manager, I must keep track of the globalTrId->myTrId mappings, and I must take the role of the transaction manager (perhaps adjusting one of the open source projects).

      Thanks guys in advance