This is an automated email from the ASF dual-hosted git repository.

dataroaring pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-3.0 by this push:
     new a88ef51f38d [fix](pipeline) Do not schedule finalized task again 
(#49007)
a88ef51f38d is described below

commit a88ef51f38db560d4958a2632cad4de08a0ce635
Author: Gabriel <liwenqi...@selectdb.com>
AuthorDate: Mon Mar 17 10:13:24 2025 +0800

    [fix](pipeline) Do not schedule finalized task again (#49007)
---
 be/src/pipeline/task_scheduler.cpp | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/be/src/pipeline/task_scheduler.cpp 
b/be/src/pipeline/task_scheduler.cpp
index 475d3a8065f..1fb3fbb3c36 100644
--- a/be/src/pipeline/task_scheduler.cpp
+++ b/be/src/pipeline/task_scheduler.cpp
@@ -76,10 +76,6 @@ void _close_task(PipelineTask* task, Status exec_status) {
     // Should count the memory to the query or the query's memory will not 
decrease when part of
     // task finished.
     SCOPED_ATTACH_TASK(task->runtime_state());
-    if (task->is_finalized()) {
-        task->set_running(false);
-        return;
-    }
     // close_a_pipeline may delete fragment context and will core in some defer
     // code, because the defer code will access fragment context it self.
     auto lock_for_context = task->fragment_context()->shared_from_this();
@@ -107,6 +103,9 @@ void TaskScheduler::_do_work(size_t index) {
             static_cast<void>(_task_queue->push_back(task, index));
             continue;
         }
+        if (task->is_finalized()) {
+            continue;
+        }
         task->log_detail_if_need();
         task->set_running(true);
         task->set_task_queue(_task_queue.get());


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

Reply via email to