diff --git a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/utils/DagHelper.java b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/utils/DagHelper.java index 47d131784..9a772322e 100644 --- a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/utils/DagHelper.java +++ b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/utils/DagHelper.java @@ -70,10 +70,10 @@ public class DagHelper { /** * generate task nodes needed by dag * - * @param taskNodeList taskNodeList - * @param startNodeNameList startNodeNameList + * @param taskNodeList taskNodeList + * @param startNodeNameList startNodeNameList * @param recoveryNodeNameList recoveryNodeNameList - * @param taskDependType taskDependType + * @param taskDependType taskDependType * @return task node list */ public static List generateFlowNodeListByStartNode(List taskNodeList, List startNodeNameList, @@ -131,7 +131,7 @@ public class DagHelper { /** * find all the nodes that depended on the start node * - * @param startNode startNode + * @param startNode startNode * @param taskNodeList taskNodeList * @return task node list */ @@ -156,9 +156,9 @@ public class DagHelper { /** * find all nodes that start nodes depend on. * - * @param startNode startNode + * @param startNode startNode * @param recoveryNodeNameList recoveryNodeNameList - * @param taskNodeList taskNodeList + * @param taskNodeList taskNodeList * @return task node list */ private static List getFlowNodeListPre(TaskNode startNode, List recoveryNodeNameList, List taskNodeList, List visitedNodeNameList) { @@ -192,9 +192,9 @@ public class DagHelper { * generate dag by start nodes and recovery nodes * * @param processDefinitionJson processDefinitionJson - * @param startNodeNameList startNodeNameList - * @param recoveryNodeNameList recoveryNodeNameList - * @param depNodeType depNodeType + * @param startNodeNameList startNodeNameList + * @param recoveryNodeNameList recoveryNodeNameList + * @param depNodeType depNodeType * @return process dag * @throws Exception if error throws Exception */ @@ -246,7 +246,7 @@ public class DagHelper { * find node by node name * * @param nodeDetails nodeDetails - * @param nodeName nodeName + * @param nodeName nodeName * @return task node */ public static TaskNode findNodeByName(List nodeDetails, String nodeName) { @@ -261,8 +261,8 @@ public class DagHelper { /** * the task can be submit when all the depends nodes are forbidden or complete * - * @param taskNode taskNode - * @param dag dag + * @param taskNode taskNode + * @param dag dag * @param completeTaskList completeTaskList * @return can submit */ @@ -276,10 +276,7 @@ public class DagHelper { } for (String dependNodeName : dependList) { TaskNode dependNode = dag.getNode(dependNodeName); - if (dependNode == null) { - continue; - } - if (completeTaskList.containsKey(dependNodeName) + if (dependNode == null || completeTaskList.containsKey(dependNodeName) || dependNode.isForbidden() || skipTaskNodeList.containsKey(dependNodeName)) { continue; @@ -295,6 +292,7 @@ public class DagHelper { * this function parse the condition node to find the right branch. * also check all the depends nodes forbidden or complete * + * @param preNodeName * @return successor nodes */ public static Set parsePostNodes(String preNodeName, @@ -331,6 +329,9 @@ public class DagHelper { /** * if all of the task dependence are skipped, skip it too. + * + * @param taskNode + * @return */ private static boolean isTaskNodeNeedSkip(TaskNode taskNode, Map skipTaskNodeList @@ -350,6 +351,9 @@ public class DagHelper { /** * parse condition task find the branch process * set skip flag for another one. + * + * @param nodeName + * @return */ public static List parseConditionTask(String nodeName, Map skipTaskNodeList, @@ -384,6 +388,11 @@ public class DagHelper { /** * set task node and the post nodes skip flag + * + * @param skipNodeName + * @param dag + * @param completeTaskList + * @param skipTaskNodeList */ private static void setTaskNodeSkip(String skipNodeName, DAG dag, @@ -455,6 +464,9 @@ public class DagHelper { /** * is there have conditions after the parent node + * + * @param parentNodeName + * @return */ public static boolean haveConditionsAfterNode(String parentNodeName, DAG dag @@ -476,6 +488,9 @@ public class DagHelper { /** * is there have conditions after the parent node + * + * @param parentNodeName + * @return */ public static boolean haveConditionsAfterNode(String parentNodeName, List taskNodes