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

   ### What problem does this PR solve?
   
   Related PR: #67674
   
   When load close holds a channel or writer lock while waiting for flush or 
delete bitmap work, cancelling the load also waits for those locks. Publish a 
shared per-load `AtomicStatus` instead of synchronously traversing and 
cancelling each writer. Local and cloud write/close paths observe the status at 
phase boundaries, and the EOS wait exits when the load is cancelled.
   
   The manager removes failed loads and retains their cancellation reason, so 
late open/add-batch requests and a concurrent successful close cannot erase the 
failure. In-flight requests retain ownership. The final writer owner drains 
previously submitted bitmap work before builder cleanup; the existing 
rowset-writer destructor cancellation runs before deleting files that callbacks 
may still read.
   
   This change does not add explicit delete bitmap token cancellation to load 
cancellation. Existing bitmap submissions and waits keep their behavior; there 
is no token registration, queued-task shutdown, or polling added to the bitmap 
executor. `tablet_writer_cancel` continues to use the heavy work pool. The 
final owner can still wait for outstanding work during destruction.
   
   ### Release note
   
   Load cancellation can publish its status without waiting for channel or 
writer locks held by close.
   
   ### Check List (For Author)
   
   - Test:
       - No new unit tests in this PR. Cancellation test coverage is deferred 
to the follow-up delete bitmap cancellation PR.
       - No unit tests executed and no completed BE build for this standalone 
change.
       - clang-format 16 check, `git diff --check`, and 
`build-support/check-build-hygiene.sh` passed. The format wrapper used the 
installed clang-format 16 binary with a local adjustment for missing Homebrew 
keg metadata.
       - Reviewed cancellation publication, local/cloud and group writer 
propagation, late request handling, and final-owner cleanup.
   - Behavior changed: Yes.
   - Does this need documentation? No.
   
   ### 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