Hi,

We're in the process of upgrading h2 in Nuxeo. We've got an issue in our 
test cases about XA management. Here is the part of the test case that's in 
trouble

 xaresource.start(xid, XAResource.TMNOFLAGS);
        // ... write data ...
        xaresource.end(xid, XAResource.TMSUCCESS);
        xaresource.prepare(xid);
        xaresource.rollback(xid);

The error is raised once we're executing the rollback after the prepare. H2 
is throwing an error about an unknown transaction 

 (2) SQL: XA error on rollback: javax.transaction.xa.XAException: Transaction 
"XID_0_00_3131313131313131313131313131313131313131313131313131313131313131" not 
found; SQL statement:
ROLLBACK TRANSACTION 
XID_0_00_3131313131313131313131313131313131313131313131313131313131313131 
[90129-177]

We've investigated the case, and we're thinking there is something wrong in the 
XA resource rollback implementation. When the connection is
in prepared mode, a rollback statement is sent to the database but the 
transaction was already roll-backed internally just before. Also, the 
connection was reset already in auto commit mode. We're thinking that the 
rollback implementation should be more close with the commit one.

Here is a link 
<https://github.com/nuxeo/h2database/commit/a594a6f9be3d8ce7b2c40995d4ac85cf9ebe42b1>
 to a patch in our h2database git clone with the new rollback implementation 
and the updated test case according to. 

Can you please advise about this, thanks.

-- 
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/d/optout.

Reply via email to