sollhui opened a new pull request, #64939: URL: https://github.com/apache/doris/pull/64939
### What problem does this PR solve? In cloud mode, `CloudMetaMgr::abort_txn` currently prefers `db_id + label` over `txn_id` when building `AbortTxnRequest`. For stream load rollback, the context usually contains both `txn_id` and `label`. If an old stream load attempt is aborted externally but its BE-side execution is still cleaning up later, its rollback may abort by label instead of by the original txn id. When the upstream retries with the same label, this label-based rollback can match and abort a newer running transaction with the same label, causing the new attempt to fail with: ``` txn is not in 1 state, txn_status=4 ``` ### Solution Prefer txn_id when aborting a cloud stream load transaction. Fall back to db_id + label only when txn_id is not available. This makes rollback cleanup target the exact failed transaction, instead of affecting another transaction that happens to use the same label. -- 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]
