mrhhsg opened a new pull request, #67066:
URL: https://github.com/apache/doris/pull/67066
### What problem does this PR solve?
Issue Number: None
Related PR: #66985
Problem Summary:
Review follow-ups on #66985 expanded the Context-level scan scheduling
refactor into generic `ThreadPool` lifecycle changes, changed the default scan
scheduler, and added Context-level profiling, retry policy, and
shared-LIMIT-specific admission behavior. Those changes are not required by the
core Context scheduling model and make the refactor harder to reason about.
This PR narrows the follow-up scope:
- Keep TaskExecutor as the default scheduler and leave the new ThreadPool
Context scheduler opt-in.
- Restore the generic `ThreadPool` implementation and its tests instead of
changing worker lifecycle behavior in this PR.
- Keep submission failures local to the new Context scheduling path and
publish them as terminal Context failures.
- Remove the newly added shared-LIMIT admission and pre-open execution
shortcuts. Existing Scanner early-EOS and TaskExecutor behavior remain
responsible for that lifecycle.
- Check terminal Context state before rescheduling, so completed EOS cannot
be converted into a thread-pool queue-capacity error.
### Release note
None
### Check List (For Author)
- Test
- [x] Unit Test
- `./run-be-ut.sh --run --filter='ScannerContextTest.*' -j16` (34/34
passed, ASAN)
- `./run-be-ut.sh --run --filter='ThreadPoolTest.*' -j16` (18/18
passed, ASAN)
- [ ] Regression test
- [ ] Manual test
- [ ] No need to test or manual test. Explain why:
- Static and style checks
- [x] `./build-support/check-format.sh`
- [x] `./build-support/check-build-hygiene.sh`
- [x] `git diff --check`
- [ ] `./build-support/run-clang-tidy.sh --base HEAD --build-dir
be/ut_build_ASAN` could not complete analysis because the local toolchain could
not find `stddef.h` and also emitted pre-existing whole-file diagnostics.
- Behavior changed:
- [x] Yes. TaskExecutor remains the default; the Context ThreadPool
scheduler no longer adds shared-LIMIT-specific admission or scanner-open
behavior, and terminal Contexts are recognized before rescheduling.
- Does this need documentation?
- [x] 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]