bobhan1 opened a new pull request, #69657:
URL: https://github.com/apache/doris/pull/69657

   ### What problem does this PR solve?
   
   Related PR: #69606
   
   Backport #69606 to `branch-4.1` from commit 
`97ae75cb12f532df0ee42da4bc288559bd19b8a3`.
   
   When a commit retry observes a transaction that is already COMMITTED, the 
immediate, eventual and sub-transaction paths now join or resume lazy 
publication and reread the durable VISIBLE state. This prevents a stale 
temporary-rowset scan from publishing duplicate rowsets or returning partial 
partition versions. Publication failure preserves commit success with the 
existing incomplete-lazy response flags. Failed immediate response data is 
cleared before lazy fallback.
   
   Context conflicts were resolved against the existing 4.1 transaction flow. 
The added and removed lines in all four files match the upstream change.
   
   ### Validation
   
   - ASAN Cloud UT build passed: `BUILD_TYPE=ASAN ./run-cloud-ut.sh -j100`.
   - `txn_lazy_commit_test` with filter 
`CommittedTxnRetryTest.*:TxnLazyCommitTest.FallThroughCommitTxnEventuallyTest`: 
**4 passed, 0 failures, 0 errors**, verified in the GTest XML report. The three 
retry cases used a private FoundationDB 7.1.26 instance; the fallback case uses 
MemTxnKv.
   - Changed-line clang-format 16 and `git diff --check` passed.
   
   ### Release note
   
   Prevent duplicate publication and incomplete version responses when 
transaction commit retries race lazy publication, while preserving commit 
success when lazy publication is incomplete.
   
   ### Check List (For Author)
   
   - Test
       - [x] Unit Test
   - Behavior changed:
       - [x] Yes. Resume COMMITTED retries through lazy publication and discard 
failed immediate response data before fallback.
   - Does this need documentation?
       - [x] No. No new user-facing setting or syntax.
   
   ### Check List (For Reviewer who merge this PR)
   
   - [ ] Confirm the release note
   - [ ] Confirm test cases
   - [ ] Confirm document
   - [ ] Add branch pick 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]

Reply via email to