[ 
https://issues.apache.org/jira/browse/GOBBLIN-2142?focusedWorklogId=931790&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-931790
 ]

ASF GitHub Bot logged work on GOBBLIN-2142:
-------------------------------------------

                Author: ASF GitHub Bot
            Created on: 26/Aug/24 17:25
            Start Date: 26/Aug/24 17:25
    Worklog Time Spent: 10m 
      Work Description: arjun4084346 commented on code in PR #4037:
URL: https://github.com/apache/gobblin/pull/4037#discussion_r1731566883


##########
gobblin-service/src/main/java/org/apache/gobblin/service/modules/orchestration/proc/DagProcUtils.java:
##########
@@ -309,52 +311,43 @@ public static boolean isDagFinished(Dag<JobExecutionPlan> 
dag) {
       ExecutionStatus status = node.getValue().getExecutionStatus();
       if (status == ExecutionStatus.FAILED || status == 
ExecutionStatus.CANCELLED) {
         anyFailure = true;
-        removeChildrenFromCanRun(node, dag, canRun);
+        removeDescendantsFromCanRun(node, dag, canRun);
         completed.add(node);
       } else if (status == ExecutionStatus.COMPLETE) {
         completed.add(node);
       } else if (status == ExecutionStatus.PENDING) {
         // Remove PENDING node if its parents are not in canRun, this means 
remove the pending nodes also from canRun set
         // if its parents cannot run
-        if (!areParentsInCanRun(node, canRun)) {
+        if (!areAllParentsInCanRun(node, canRun)) {
           canRun.remove(node);
         }
       }
     }
 
-    // In the end, check if there are more nodes in canRun than completed
     assert canRun.size() >= completed.size();
 
     if (!anyFailure || failureOption == 
DagManager.FailureOption.FINISH_ALL_POSSIBLE) {
+      // In the end, check if there are more nodes in canRun than completed
       return canRun.size() == completed.size();
     } else if (failureOption == DagManager.FailureOption.FINISH_RUNNING) {
-      //if all the remaining jobs are pending return true
+      // if all the remaining jobs are pending return true

Review Comment:
   no, that is what i mean.
   in FINISH_RUNNING mode, gaas should only let the currently running jobs and 
not run any new jobs which are currently PENDING. so if everything else is 
PENDING, consider it complete, dont run anything further.
    "// if NO remaining jobs are pending, return IS finished" would be 
applicable for FINISH_ALL_POSSIBLE mode





Issue Time Tracking
-------------------

    Worklog Id:     (was: 931790)
    Time Spent: 2h 40m  (was: 2.5h)

> find if the dag is running or not correctly
> -------------------------------------------
>
>                 Key: GOBBLIN-2142
>                 URL: https://issues.apache.org/jira/browse/GOBBLIN-2142
>             Project: Apache Gobblin
>          Issue Type: Bug
>            Reporter: Arjun Singh Bora
>            Priority: Major
>          Time Spent: 2h 40m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to