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

   ### What problem does this PR solve?
   
   Issue Number: N/A
   
   Related PR: #69892
   
   Backport #69892 (commit `b2164ff1bacd3e467fd29f443ef9c03faa899658`) to 
`branch-incremental-computation`.
   
   The background delete bitmap checker acquires the tablet header lock while 
holding the bitmap read lock, reversing compaction's lock order. Running the 
checker under the tablet map mutex also blocks unrelated tablet initialization 
and metadata scans. Capture the sequence-column flag before bitmap traversal 
and check tablets outside the map mutex.
   
   Target adaptation: this branch filters the unused-rowset cleanup list, so 
use its existing `get_all_tablet()` helper to obtain an independent, complete 
snapshot. Reusing the filtered cleanup list would silently skip tablets. Port 
the five upstream test instances into the target fixtures, and explicitly cover 
a tablet without stale or unused rowsets.
   
   ### Release note
   
   Fix BE deadlocks and cascading write and metadata stalls when background 
delete bitmap checks are enabled.
   
   ### Check List (For Author)
   
   - Test
       - [ ] Regression test
       - [x] Unit Test
       - [ ] Manual test
       - [ ] No need to test
   - Behavior changed:
       - [ ] No.
       - [x] Yes. Background bitmap checks avoid lock inversion and no longer 
hold the tablet map mutex during individual tablet checks.
   - Does this need documentation?
       - [x] No.
       - [ ] Yes.
   
   Validation on the target branch: 85 ASAN unit tests passed, including all 
five backported test instances. Formatting, build hygiene, and diff checks 
passed. The production `BaseTablet` patch-id matches the upstream fix.
   
   ```bash
   ./run-be-ut.sh --run 
--filter='SequenceModes/CloudTabletDeleteBitmapCheckTest.*:CloudTabletMgrTest.*:CloudTabletWarmUpStateTest.*:TabletMetaTest.*:CloudCompactionTest.*'
 -j100
   ```
   
   ### 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