BiteTheDDDDt opened a new pull request, #61989: URL: https://github.com/apache/doris/pull/61989
This pull request updates the pipeline task state transition logic to allow certain tasks to skip intermediate states under specific conditions, and adds corresponding test coverage. The main focus is on permitting a task in the BLOCKED state to transition directly to FINISHED if the `_wake_up_early` flag is set, bypassing the RUNNABLE state. Documentation and tests are updated to reflect this new behavior. ### Pipeline task state transition logic: * Modified `_state_transition` in `pipeline_task.cpp` to allow a task in the BLOCKED state to transition directly to FINISHED when `_wake_up_early` is true, even if this transition is not in the standard legal state transitions table. ### Documentation: * Updated the state transition diagram in the `PipelineTask` class docstring to document the new possible BLOCKED → FINISHED transition when `_wake_up_early` is set. ### Testing: * Added tests to verify that BLOCKED → FINISHED is allowed when `_wake_up_early` is true, and that other illegal transitions remain disallowed even with this flag set, in `pipeline_task_test.cpp`. [[1]](diffhunk://#diff-262afd1bf43b83333335fec0b00b65ab0b0241315fd3ceb98c5b3d568971052fR482-R483) [[2]](diffhunk://#diff-262afd1bf43b83333335fec0b00b65ab0b0241315fd3ceb98c5b3d568971052fR492-R502) * Minor formatting improvement in test case for `_should_trigger_revoking` for consistency. -- 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]
