You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@seata.apache.org by "Ethan-Xingyue (via GitHub)" <gi...@apache.org> on 2026/09/21 08:08:19 UTC

Re: [I] [BUG] XA failure paths report incorrect branch status and lose retry state [incubator-seata-go]

Ethan-Xingyue commented on issue #1147:
URL: https://github.com/apache/incubator-seata-go/issues/1147#issuecomment-5757351922

   Adding a related scenario from #676 (2024), which is being closed in favor of this issue so the information is not lost:
   
   When the branch-level timeout fires (`XAConn.checkTimeout`), the local connection is rolled back and released. When the TC later sends `BranchRollback` for that branch, `MysqlXAConn.Rollback` fails with `Error 1397 (XAE04): XAER_NOTA: Unknown XID` and the RM reports the rollback as failed, even though the branch is already rolled back. XAER_NOTA on rollback should be treated as an idempotent success. This ties into point 4 above: `XAConn.XaRollback` in `pkg/datasource/sql/conn_xa.go` releases the keeper unconditionally. A reproduction patch (artificial 10s sleep plus a 2s global timeout) is attached in #676.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@seata.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@seata.apache.org
For additional commands, e-mail: notifications-help@seata.apache.org