CAICAIIs commented on PR #1119:
URL: 
https://github.com/apache/incubator-seata-go/pull/1119#issuecomment-5509604210

   Thanks @slievrly for the thorough review! Addressed as follows:
   
   1. **End(TMFail) vs rollback flow** — fixed: `XAConn.rollbackEndFlag()` maps 
Oracle rollback ends to `TMSUCCESS` instead of `TMFAIL` (Oracle's `End(TMFAIL)` 
rejection is never hit on the framework rollback path anymore), and 
`rollbackEndErrorHandle` rolls back the target transaction as a fallback if the 
end still fails. Added a gated rollback integration test: 
`TestOracleXAIntegration_SeataXAOracleRollback` (runs with `ORACLE_XA_DSN` set).
   2. **Recover limitation** — documented as a known limitation: on 
`OracleXAConn.Recover`, in `changes/dev.md`, and in the PR description 
(in-doubt branches after a TC/client crash need manual resolution via 
`DBA_XA_TRANSACTIONS`). Tracked for a later stage of #1116.
   3. **bqual leading `-`** — confirmed intentional: it matches the 
framework-wide `XABranchXid` encoding (`branchIdPrefix + branchId`, same as the 
MySQL XA construction), keeping TC-side branch identification consistent. Added 
a comment in `oracleXABranchXid`.
   4. **Dependency** — noted in the PR description: 
`github.com/sijms/go-ora/v2` (pure Go, MIT, ASF-compatible), a direct 
dependency for all users; chosen over godror to avoid the ODPI-C/Oracle Client 
runtime requirement.
   
   Re codecov: the uncovered lines are mostly in the `ORACLE_XA_DSN`-gated 
integration-test path plus the DBMS_XA PL/SQL branches that need a real Oracle; 
unit-testable logic (xid encode/validate, flag mapping, error classifier) is 
covered.
   
   Conflicts with master are also resolved and all `pkg/datasource/sql/...` 
tests pass.


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to