1717
1818package org .apache .dolphinscheduler .server .master .runner ;
1919
20- import com .google .common .collect .Lists ;
21- import lombok .NonNull ;
22- import org .apache .commons .collections .CollectionUtils ;
23- import org .apache .commons .lang3 .StringUtils ;
24- import org .apache .commons .lang3 .math .NumberUtils ;
20+ import static org .apache .dolphinscheduler .common .Constants .CMDPARAM_COMPLEMENT_DATA_END_DATE ;
21+ import static org .apache .dolphinscheduler .common .Constants .CMDPARAM_COMPLEMENT_DATA_SCHEDULE_DATE_LIST ;
22+ import static org .apache .dolphinscheduler .common .Constants .CMDPARAM_COMPLEMENT_DATA_START_DATE ;
23+ import static org .apache .dolphinscheduler .common .Constants .CMD_PARAM_RECOVERY_START_NODE_STRING ;
24+ import static org .apache .dolphinscheduler .common .Constants .CMD_PARAM_RECOVER_PROCESS_ID_STRING ;
25+ import static org .apache .dolphinscheduler .common .Constants .CMD_PARAM_START_NODES ;
26+ import static org .apache .dolphinscheduler .common .Constants .COMMA ;
27+ import static org .apache .dolphinscheduler .common .Constants .DEFAULT_WORKER_GROUP ;
28+ import static org .apache .dolphinscheduler .common .Constants .YYYY_MM_DD_HH_MM_SS ;
29+ import static org .apache .dolphinscheduler .plugin .task .api .TaskConstants .TASK_TYPE_BLOCKING ;
30+ import static org .apache .dolphinscheduler .plugin .task .api .enums .DataType .VARCHAR ;
31+ import static org .apache .dolphinscheduler .plugin .task .api .enums .Direct .IN ;
32+
2533import org .apache .dolphinscheduler .common .Constants ;
2634import org .apache .dolphinscheduler .common .enums .CommandType ;
2735import org .apache .dolphinscheduler .common .enums .FailureStrategy ;
7785import org .apache .dolphinscheduler .service .expand .CuringParamsService ;
7886import org .apache .dolphinscheduler .service .process .ProcessService ;
7987import org .apache .dolphinscheduler .service .queue .PeerTaskInstancePriorityQueue ;
80- import org .slf4j .Logger ;
81- import org .slf4j .LoggerFactory ;
82- import org .springframework .beans .BeanUtils ;
88+
89+ import org .apache .commons .collections .CollectionUtils ;
90+ import org .apache .commons .lang3 .StringUtils ;
91+ import org .apache .commons .lang3 .math .NumberUtils ;
8392
8493import java .util .ArrayList ;
8594import java .util .Arrays ;
100109import java .util .concurrent .atomic .AtomicBoolean ;
101110import java .util .stream .Collectors ;
102111
103- import static org .apache .dolphinscheduler .common .Constants .CMDPARAM_COMPLEMENT_DATA_END_DATE ;
104- import static org .apache .dolphinscheduler .common .Constants .CMDPARAM_COMPLEMENT_DATA_SCHEDULE_DATE_LIST ;
105- import static org .apache .dolphinscheduler .common .Constants .CMDPARAM_COMPLEMENT_DATA_START_DATE ;
106- import static org .apache .dolphinscheduler .common .Constants .CMD_PARAM_RECOVERY_START_NODE_STRING ;
107- import static org .apache .dolphinscheduler .common .Constants .CMD_PARAM_RECOVER_PROCESS_ID_STRING ;
108- import static org .apache .dolphinscheduler .common .Constants .CMD_PARAM_START_NODES ;
109- import static org .apache .dolphinscheduler .common .Constants .COMMA ;
110- import static org .apache .dolphinscheduler .common .Constants .DEFAULT_WORKER_GROUP ;
111- import static org .apache .dolphinscheduler .common .Constants .YYYY_MM_DD_HH_MM_SS ;
112- import static org .apache .dolphinscheduler .plugin .task .api .TaskConstants .TASK_TYPE_BLOCKING ;
113- import static org .apache .dolphinscheduler .plugin .task .api .enums .DataType .VARCHAR ;
114- import static org .apache .dolphinscheduler .plugin .task .api .enums .Direct .IN ;
112+ import lombok .NonNull ;
113+
114+ import org .slf4j .Logger ;
115+ import org .slf4j .LoggerFactory ;
116+ import org .springframework .beans .BeanUtils ;
117+
118+ import com .google .common .collect .Lists ;
115119
116120/**
117121 * Workflow execute task, used to execute a workflow instance.
@@ -1808,7 +1812,8 @@ public void submitStandByTask() throws StateEventHandleException {
18081812 getPreVarPool (task , preTask );
18091813 }
18101814 DependResult dependResult = getDependResultForTask (task );
1811- if (DependResult .SUCCESS == dependResult ) {
1815+ if (DependResult .SUCCESS == dependResult
1816+ || processInstance .getFailureStrategy () == FailureStrategy .CONTINUE ) {
18121817 Optional <TaskInstance > taskInstanceOptional = submitTaskExec (task );
18131818 if (!taskInstanceOptional .isPresent ()) {
18141819 this .taskFailedSubmit = true ;
@@ -1834,7 +1839,7 @@ public void submitStandByTask() throws StateEventHandleException {
18341839 // if the dependency fails, the current node is not submitted and the state changes to failure.
18351840 dependFailedTaskMap .put (task .getTaskCode (), task .getId ());
18361841 removeTaskFromStandbyList (task );
1837- logger .info ("Task dependent result is failed, taskInstanceId:{} depend result : {}" , task .getId (),
1842+ logger .info ("Dependent task failed, taskInstanceId:{} depend result: {}" , task .getId (),
18381843 dependResult );
18391844 } else if (DependResult .NON_EXEC == dependResult ) {
18401845 // for some reasons(depend task pause/stop) this task would not be submit
@@ -2014,4 +2019,4 @@ private enum WorkflowRunnableStatus {
20142019
20152020 }
20162021
2017- }
2022+ }
0 commit comments