You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by "wenzhenghu (via GitHub)" <gi...@apache.org> on 2026/04/14 02:57:53 UTC

[PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

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

   Problem Summary:
   There is a severe state machine vulnerability across multiple spill-disk related operators (`PartitionedHashJoinProbeOperator`, `PartitionedAggregationSourceOperator`, `SpillSortSourceOperator`, `SpillSortSinkOperator`, and `SpillRepartitioner`). 
   
   In their core spilling and reading loops, the condition `while (!eos && !state->is_cancelled())` was used. However, when a query was cancelled, the loop would simply break and implicitly return `Status::OK()`. This silent exit tricked the Pipeline scheduler into believing the operation was successfully completed, causing incomplete or corrupted dirty blocks/spill files to be pushed into subsequent processing queues, which could lead to illegal memory access or pipeline stuck.
   
   Solution:
   Added explicit `Status::Cancelled("...")` return statements immediately after the while loops for all affected spill operators. This ensures that when a cancellation is detected, the error status is correctly propagated to the Pipeline Task, which will properly trigger the RAII mechanism (destructing `SpillFileSPtr`) to securely delete the dirty directories and release tracked memory, leaving no garbage behind.
   
   ### Release note
   
   None
   
   ### Check List (For Author)
   
   - Test: Regression test / Unit Test / Manual test 
   - Behavior changed: No
   - Does this need documentation: No


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "wenzhenghu (via GitHub)" <gi...@apache.org>.
wenzhenghu commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4241763069

   run buildall


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "wenzhenghu (via GitHub)" <gi...@apache.org>.
wenzhenghu commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4241127579

   /review


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on code in PR #62468:
URL: https://github.com/apache/doris/pull/62468#discussion_r3076986634


##########
be/src/exec/operator/partitioned_aggregation_source_operator.cpp:
##########
@@ -393,6 +393,10 @@ Status PartitionedAggLocalState::_recover_blocks_from_partition(RuntimeState* st
         }
     }
 
+    if (state->is_cancelled()) {

Review Comment:
   `_recover_blocks_from_partition()` still has one silent-cancel entry path left. The new post-loop check is good, but the guard at `be/src/exec/operator/partitioned_aggregation_source_operator.cpp:366-368` still does `if (!partition.spill_file || state->is_cancelled()) return Status::OK();`. `get_block()` immediately treats that as a normal yield (`:285-291`), so if the task is already cancelled before recovery starts, the pipeline still advances with `OK` instead of aborting. Please split that guard so the cancelled case returns `state->cancel_reason()` or `Status::Cancelled(...)` too.`



##########
be/src/exec/operator/partitioned_hash_join_probe_operator.cpp:
##########
@@ -407,6 +407,9 @@ Status PartitionedHashJoinProbeLocalState::recover_probe_blocks_from_partition(
             return Status::OK(); // yield — enough data read
         }
     }
+    if (state->is_cancelled()) {

Review Comment:
   This fixes probe-file recovery, but the sibling build-file path still has the same bug. `recover_build_blocks_from_partition()` (`be/src/exec/operator/partitioned_hash_join_probe_operator.cpp:332-378`) still loops with `while (!eos)` and only checks `state->is_cancelled()` after a non-empty read. If cancellation is already set before the call, or it arrives on the final read that sets `eos`, the function closes the reader, clears `build_file`, and returns `Status::OK()`. `get_block()` then continues into `_setup_internal_operators_from_partition()` (`:775-785`) with cancellation hidden.



##########
be/src/exec/operator/spill_sort_source_operator.cpp:
##########
@@ -138,6 +138,9 @@ Status SpillSortLocalState::execute_merge_sort_spill_files(RuntimeState* state)
             }
             RETURN_IF_ERROR(status);
         }
+        if (state->is_cancelled()) {

Review Comment:
   There is still one outer-loop silent-cancel path here. The new check covers the inner merge loop, but `execute_merge_sort_spill_files()` still has `while (!state->is_cancelled())` at `be/src/exec/operator/spill_sort_source_operator.cpp:91` and then falls through to `return Status::OK()` at line 146. If the query is cancelled before the first iteration or between merge rounds, `get_block()` (`:254-257`) still sees a successful return and can continue with partially merged spill state. This needs a post-loop cancelled return as well.`



-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on code in PR #62468:
URL: https://github.com/apache/doris/pull/62468#discussion_r3077487756


##########
be/src/exec/spill/spill_repartitioner.cpp:
##########
@@ -120,6 +120,10 @@ Status SpillRepartitioner::repartition(RuntimeState* state, SpillFileSPtr& input
         }
     }
 
+    if (state->is_cancelled()) {

Review Comment:
   Returning here before `_flush_all_buffers()`/`finalize()` leaves `_repartitioner` holding open `SpillFileWriter`s while the caller's local `output_spill_files` vector can already unwind. Those `SpillFile` owners are the only strong refs, and `SpillFileWriter` only keeps a `weak_ptr`, so cancellation can now destroy/gc the spill directories before the writers are torn down. Please keep the cancellation propagation, but still close/abandon the repartitioner writers and reset its internal state on this path.



-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "wenzhenghu (via GitHub)" <gi...@apache.org>.
wenzhenghu commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4241637735

   run buildall


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "hello-stephen (via GitHub)" <gi...@apache.org>.
hello-stephen commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4242206379

   # BE Regression && UT Coverage Report
   Increment line coverage `25.00% (9/36)` :tada:
   
   [Increment coverage report](http://coverage.selectdb-in.cc/coverage/62468_5a0084e02c657bf32ee77b5fa0ad57796faf05b7_merge/increment_report/index.html)
   [Complete coverage report](http://coverage.selectdb-in.cc/coverage/62468_5a0084e02c657bf32ee77b5fa0ad57796faf05b7_merge/report/index.html)
   | Category          | Coverage           |
   |-------------------|--------------------|
   | Function Coverage | 73.50% (27328/37183) |
   | Line Coverage     | 57.21% (295284/516132) |
   | Region Coverage   | 54.41% (245865/451884) |
   | Branch Coverage   | 56.13% (106658/190027) |


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "hello-stephen (via GitHub)" <gi...@apache.org>.
hello-stephen commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4242549022

   # BE Regression && UT Coverage Report
   Increment line coverage `25.00% (9/36)` :tada:
   
   [Increment coverage report](http://coverage.selectdb-in.cc/coverage/62468_5a0084e02c657bf32ee77b5fa0ad57796faf05b7_merge/increment_report/index.html)
   [Complete coverage report](http://coverage.selectdb-in.cc/coverage/62468_5a0084e02c657bf32ee77b5fa0ad57796faf05b7_merge/report/index.html)
   | Category          | Coverage           |
   |-------------------|--------------------|
   | Function Coverage | 73.47% (27318/37183) |
   | Line Coverage     | 57.19% (295156/516132) |
   | Region Coverage   | 54.39% (245784/451884) |
   | Branch Coverage   | 56.09% (106595/190027) |


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "hello-stephen (via GitHub)" <gi...@apache.org>.
hello-stephen commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4242520558

   # BE Regression && UT Coverage Report
   Increment line coverage `25.00% (9/36)` :tada:
   
   [Increment coverage report](http://coverage.selectdb-in.cc/coverage/62468_5a0084e02c657bf32ee77b5fa0ad57796faf05b7_merge/increment_report/index.html)
   [Complete coverage report](http://coverage.selectdb-in.cc/coverage/62468_5a0084e02c657bf32ee77b5fa0ad57796faf05b7_merge/report/index.html)
   | Category          | Coverage           |
   |-------------------|--------------------|
   | Function Coverage | 73.48% (27322/37183) |
   | Line Coverage     | 57.20% (295205/516132) |
   | Region Coverage   | 54.40% (245806/451884) |
   | Branch Coverage   | 56.11% (106624/190027) |


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "hello-stephen (via GitHub)" <gi...@apache.org>.
hello-stephen commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4241584402

   # BE Regression && UT Coverage Report
   Increment line coverage `25.00% (9/36)` :tada:
   
   [Increment coverage report](http://coverage.selectdb-in.cc/coverage/62468_5a0084e02c657bf32ee77b5fa0ad57796faf05b7_merge/increment_report/index.html)
   [Complete coverage report](http://coverage.selectdb-in.cc/coverage/62468_5a0084e02c657bf32ee77b5fa0ad57796faf05b7_merge/report/index.html)
   | Category          | Coverage           |
   |-------------------|--------------------|
   | Function Coverage | 73.59% (27361/37179) |
   | Line Coverage     | 57.26% (295516/516116) |
   | Region Coverage   | 54.43% (245926/451814) |
   | Branch Coverage   | 56.14% (106684/190027) |


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "hello-stephen (via GitHub)" <gi...@apache.org>.
hello-stephen commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4242162593

   # BE UT Coverage Report
   Increment line coverage `25.00% (9/36)` :tada:
   
   [Increment coverage report](http://coverage.selectdb-in.cc/coverage/5a0084e02c657bf32ee77b5fa0ad57796faf05b7_5a0084e02c657bf32ee77b5fa0ad57796faf05b7/increment_report/index.html)
   [Complete coverage report](http://coverage.selectdb-in.cc/coverage/5a0084e02c657bf32ee77b5fa0ad57796faf05b7_5a0084e02c657bf32ee77b5fa0ad57796faf05b7/report/index.html)
   | Category          | Coverage           |
   |-------------------|--------------------|
   | Function Coverage | 53.03% (20135/37969) |
   | Line Coverage     | 36.59% (189415/517716) |
   | Region Coverage   | 32.86% (147113/447752) |
   | Branch Coverage   | 33.98% (64380/189445) |


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "wenzhenghu (via GitHub)" <gi...@apache.org>.
wenzhenghu commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4241067296

   run buildall


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "Thearas (via GitHub)" <gi...@apache.org>.
Thearas commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4241019726

   
   Thank you for your contribution to Apache Doris.
   Don't know what should be done next? See [How to process your PR](https://cwiki.apache.org/confluence/display/DORIS/How+to+process+your+PR).
   
   Please clearly describe your PR:
   1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
   2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
   3. What features were added. Why was this function added?
   4. Which code was refactored and why was this part of the code refactored?
   5. Which functions were optimized and what is the difference before and after the optimization?
       


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "wenzhenghu (via GitHub)" <gi...@apache.org>.
wenzhenghu commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4241660114

   /review


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on code in PR #62468:
URL: https://github.com/apache/doris/pull/62468#discussion_r3077547580


##########
be/src/exec/operator/spill_sort_source_operator.cpp:
##########
@@ -138,6 +138,9 @@ Status SpillSortLocalState::execute_merge_sort_spill_files(RuntimeState* state)
             }
             RETURN_IF_ERROR(status);
         }
+        if (state->is_cancelled()) {

Review Comment:
   This still leaves one silent-cancellation path. The outer loop is `while (!state->is_cancelled())`, and the function falls through to `return Status::OK()` after that loop. If cancellation is set before the first iteration, or between two merge rounds before entering the next iteration, we still report success instead of cancellation. Please add a final cancellation check before the trailing `return Status::OK()` (or restructure the outer loop) so every cancellation path propagates a non-OK status.



##########
be/src/exec/operator/partitioned_aggregation_source_operator.cpp:
##########
@@ -393,6 +393,10 @@ Status PartitionedAggLocalState::_recover_blocks_from_partition(RuntimeState* st
         }
     }
 
+    if (state->is_cancelled()) {

Review Comment:
   `_recover_blocks_from_partition()` still has a silent-cancellation path at function entry. Right now `if (!partition.spill_file || state->is_cancelled()) { return Status::OK(); }` still reports success when the query is already cancelled before we enter the loop. Its caller then treats that as a normal yield and returns `OK`, so the scheduler can still stay on the success path for this case. Please split this early return so `!partition.spill_file` returns `OK`, but a pre-existing cancellation returns `state->cancel_reason()` or `Status::Cancelled(...)`.



-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "wenzhenghu (via GitHub)" <gi...@apache.org>.
wenzhenghu commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4241722378

   run buildall


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "wenzhenghu (via GitHub)" <gi...@apache.org>.
wenzhenghu commented on PR #62468:
URL: https://github.com/apache/doris/pull/62468#issuecomment-4241732059

   /review


-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "wenzhenghu (via GitHub)" <gi...@apache.org>.
wenzhenghu commented on code in PR #62468:
URL: https://github.com/apache/doris/pull/62468#discussion_r3175810152


##########
be/src/exec/operator/partitioned_aggregation_source_operator.cpp:
##########
@@ -393,6 +393,10 @@ Status PartitionedAggLocalState::_recover_blocks_from_partition(RuntimeState* st
         }
     }
 
+    if (state->is_cancelled()) {

Review Comment:
   确实,cancel操作的处理无法面面俱到,我担心的是识别cancel标志后,没有做任何处理,而是返回ok,继续按照正常逻辑往下执行有风险。这样处理不能保证不会访问野指针或未初始化的内存导致crash,就算现在测试过没问题,也无法一直保证后续相关代码变更后都不出问题 @yiguolei 



-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [fix](spill) Fix silent cancellation and resource leak in spill operators [doris]

Posted by "yiguolei (via GitHub)" <gi...@apache.org>.
yiguolei commented on code in PR #62468:
URL: https://github.com/apache/doris/pull/62468#discussion_r3173818832


##########
be/src/exec/operator/partitioned_aggregation_source_operator.cpp:
##########
@@ -393,6 +393,10 @@ Status PartitionedAggLocalState::_recover_blocks_from_partition(RuntimeState* st
         }
     }
 
+    if (state->is_cancelled()) {

Review Comment:
   这个应该不是一个问题。 因为即使你这么改了代码,比如运行到return ok 之前才被cancel,此时就没办法判断应该返回cancel。
   因为cancel的过程是一个异步的线程,所以所有的执行逻辑的地方只要能保证正常返回就可以了。
   我们需要在pipeline task的execute 方法里,去检查这个,当我们执行完一个算子,要在执行下一个算子之前,检查一下是否cancel了。



-- 
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: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org