You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Timothy Bish (JIRA)" <ji...@apache.org> on 2011/08/16 21:54:27 UTC
[jira] [Commented] (AMQ-3255) Rollback of unknown Xid gives
unexpected XA errorCode: 0
[ https://issues.apache.org/jira/browse/AMQ-3255?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13085927#comment-13085927 ]
Timothy Bish commented on AMQ-3255:
-----------------------------------
I don't think this problem exists in the latest code, you might want to give the 5.5 release or a 5.6-SNAPSHOT build a try.
> 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