narendly commented on a change in pull request #410: Fix the execution delay for the jobs (409) URL: https://github.com/apache/helix/pull/410#discussion_r314872550
########## File path: helix-core/src/main/java/org/apache/helix/task/WorkflowDispatcher.java ########## @@ -165,7 +165,9 @@ public void updateWorkflowStatus(String workflow, WorkflowConfig workflowCfg, RuntimeJobDag runtimeJobDag = _clusterDataCache.getTaskDataCache().getRuntimeJobDag(workflow); if (runtimeJobDag != null) { for (String inflightJob : runtimeJobDag.getInflightJobList()) { - processJob(inflightJob, currentStateOutput, bestPossibleOutput, workflowCtx); + if (isJobReadyToExecute(workflowCtx, inflightJob)) { Review comment: @dasahcc I discussed with @alirezazamani offline. I feel that we just neglected all the checking required before calling `processJob` on inflight jobs. "Inflight" in this sense doesn't mean that a job is necessarily running; rather, it means that the job has been passed over onto the Controller and now out of RuntimeJobDAG's responsibility. Otherwise _we end up doing a lot of "passing jobs back and forth" for every failure/delay situation_ that will complicate the code/logic even further. So in short, it was a simple bug that we didn't check before doing processJob here. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@helix.apache.org For additional commands, e-mail: reviews-h...@helix.apache.org