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

caishunfeng pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git


The following commit(s) were added to refs/heads/dev by this push:
     new 9f56123  fix bug_7537 (#7551)
9f56123 is described below

commit 9f56123a26096e9e423a447e659180b9153de07d
Author: SbloodyS <[email protected]>
AuthorDate: Wed Dec 22 20:21:52 2021 +0800

    fix bug_7537 (#7551)
    
    Co-authored-by: SbloodyS <[email protected]>
---
 .../server/master/runner/StateWheelExecuteThread.java             | 8 ++++----
 .../server/master/runner/WorkflowExecuteThread.java               | 2 ++
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git 
a/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/StateWheelExecuteThread.java
 
b/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/StateWheelExecuteThread.java
index 4502b86..8c3712f 100644
--- 
a/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/StateWheelExecuteThread.java
+++ 
b/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/StateWheelExecuteThread.java
@@ -187,12 +187,12 @@ public class StateWheelExecuteThread extends Thread {
             if (taskInstance == null) {
                 continue;
             }
-            if (taskInstance.taskCanRetry() && 
taskInstance.retryTaskIntervalOverTime()) {
+
+            if (!taskInstance.getState().typeIsFinished() && 
(taskInstance.isSubProcess() || taskInstance.isDependTask())) {
                 addTaskStateChangeEvent(taskInstance);
-                taskInstanceRetryCheckList.remove(taskInstance.getId());
-            }
-            if (taskInstance.isSubProcess() || taskInstance.isDependTask()) {
+            } else if (taskInstance.taskCanRetry() && 
taskInstance.retryTaskIntervalOverTime()) {
                 addTaskStateChangeEvent(taskInstance);
+                taskInstanceRetryCheckList.remove(taskInstance.getId());
             }
         }
     }
diff --git 
a/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/WorkflowExecuteThread.java
 
b/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/WorkflowExecuteThread.java
index 9c5eee7..c25d9ad 100644
--- 
a/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/WorkflowExecuteThread.java
+++ 
b/dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/runner/WorkflowExecuteThread.java
@@ -437,6 +437,8 @@ public class WorkflowExecuteThread {
                 stateWheelExecuteThread.addTask4RetryCheck(task);
             } else {
                 submitStandByTask();
+                stateWheelExecuteThread.removeTask4TimeoutCheck(task);
+                stateWheelExecuteThread.removeTask4RetryCheck(task);
             }
             return;
         }

Reply via email to