activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Guy Pardon (JIRA)" <j...@apache.org>
Subject [jira] [Created] (AMQ-3255) Rollback of unknown Xid gives unexpected XA errorCode: 0
Date Thu, 31 Mar 2011 15:31:06 GMT
Rollback of unknown Xid gives unexpected XA errorCode: 0
--------------------------------------------------------

                 Key: AMQ-3255
                 URL: https://issues.apache.org/jira/browse/AMQ-3255
             Project: ActiveMQ
          Issue Type: Bug
    Affects Versions: 5.3.0
         Environment: Java on Mac OSX
            Reporter: Guy Pardon


XA transaction managers will/should do recovery of Xids that they have logged. In some cases,
these Xids may have disappeared already in the JMS broker. Typical example scenario:

1. The TM starts a new Xid with XAResource.start(xid)
2. The app does some SQL in the xid context
3. The TM calls XAResource.end(xid)
4. The TM then logs the xid as "to recover" before it attempts the XA prepare
5. The broker crashes and prepare fails
6. The broker comes back up, recovers, and does rollback of the not yet prepared xid
7. The TM will also attempt recovery by calling rollback for the xid in question

In that case (step 7), the errorCode should not be 0 (as it is now in ActiveMQ) but rather
one of the XA_RB* error codes to be conform the semantics of XA exceptions.


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message