This is an automated email from the ASF dual-hosted git repository.
chenxingchun pushed a commit to branch 1.3.6-prepare
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
The following commit(s) were added to refs/heads/1.3.6-prepare by this push:
new 59685d8 [1.3.6-prepare]work flow would running if task is killed by
manual. (#5363)
59685d8 is described below
commit 59685d883171f6e96f7aa57680b29611ece33469
Author: Kirs <[email protected]>
AuthorDate: Sun Apr 25 09:45:06 2021 +0800
[1.3.6-prepare]work flow would running if task is killed by manual. (#5363)
pr #5362
issue #5349
---
.../org/apache/dolphinscheduler/common/enums/DependResult.java | 3 ++-
.../dolphinscheduler/server/master/runner/MasterExecThread.java | 8 ++++++--
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/DependResult.java
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/DependResult.java
index 3e305f3..f906c86 100644
---
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/DependResult.java
+++
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/enums/DependResult.java
@@ -26,6 +26,7 @@ public enum DependResult {
* 0 success
* 1 waiting
* 2 failed
+ * 3 non execution
*/
- SUCCESS, WAITING, FAILED
+ SUCCESS, WAITING, FAILED, NON_EXEC
}
diff --git
a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/runner/MasterExecThread.java
b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/runner/MasterExecThread.java
index 08cf2b5..674acbe 100644
---
a/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/runner/MasterExecThread.java
+++
b/dolphinscheduler-server/src/main/java/org/apache/dolphinscheduler/server/master/runner/MasterExecThread.java
@@ -527,7 +527,7 @@ public class MasterExecThread implements Runnable {
}
ExecutionStatus depTaskState =
completeTaskList.get(depsNode).getState();
if(depTaskState.typeIsPause() || depTaskState.typeIsCancel()){
- return DependResult.WAITING;
+ return DependResult.NON_EXEC;
}
// ignore task state if current task is condition
if(taskNode.isConditionsTask()){
@@ -1017,7 +1017,11 @@ public class MasterExecThread implements Runnable {
dependFailedTask.put(task.getName(), task);
removeTaskFromStandbyList(task);
logger.info("task {},id:{} depend result :
{}",task.getName(), task.getId(), dependResult);
- }
+ } else if (DependResult.NON_EXEC == dependResult) {
+ // for some reasons(depend task pause/stop) this task would
not be submit
+ removeTaskFromStandbyList(task);
+ logger.info("remove task {},id:{} , because depend result :
{}", task.getName(), task.getId(), dependResult);
+ }
}
} catch (Exception e) {
logger.error("submit standby task error",e);