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

   ### What problem does this PR solve?
   
   Issue Number: None
   
   Related PR: None
   
   Problem Summary: During a large cloud load, lazy commit can finish its first 
metadata phase but fail to complete the background promotion before the commit 
RPC returns. FE previously treated this response like a fully published 
transaction and notified BEs to make temporary rowsets visible immediately. A 
BE compaction could then consume rowsets that were not yet visible in 
meta-service, racing the lazy commit metadata update.
   
   This change adds a partial-commit marker to `CommitTxnResponse`. 
Meta-service keeps the marker set until the lazy commit task completes 
successfully. FE skips the BE fast-path rowset promotion for marked responses, 
allowing BEs to observe the final rowset metadata from meta-service.
   
   ### Release note
   
   Fix a cloud metadata consistency issue between large transaction lazy commit 
and BE compaction.
   
   ### Check List (For Author)
   
   - Test
       - [ ] Regression test
       - [x] Unit Test
       - [ ] Manual test
       - [ ] No need to test
   
   Test commands:
   
   ```shell
   ./run-fe-ut.sh --run 
org.apache.doris.cloud.transaction.CloudGlobalTransactionMgrTest
   BUILD_TYPE=ASAN ./run-cloud-ut.sh --run 
--filter=txn_lazy_commit_test:TxnLazyCommitTest.ConcurrentCommitTxnEventuallyCase4Test
 -j 100
   BUILD_TYPE=ASAN ./run-cloud-ut.sh --run 
--filter=txn_lazy_commit_test:TxnLazyCommitTest.CommitTxnEventuallyWithAbortAfterCommitTest
 -j 100
   ./build.sh --fe
   build-support/check-format.sh
   ```
   
   - Behavior changed:
       - [ ] No
       - [x] Yes. FE no longer sends BE rowset promotion tasks for partial lazy 
commits.
   
   - Does this need documentation?
       - [x] No
       - [ ] Yes
   


-- 
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