o-nikolas commented on code in PR #40017:
URL: https://github.com/apache/airflow/pull/40017#discussion_r1623769411


##########
airflow/jobs/scheduler_job_runner.py:
##########
@@ -986,11 +1023,23 @@ def _run_scheduler_loop(self) -> None:
                     self.processor_agent.wait_until_finished()
 
                 with create_session() as session:
+                    # This will schedule for as many executors as possible.
                     num_queued_tis = self._do_scheduling(session)
 
-                    self.job.executor.heartbeat()
+                    # Heartbeat all executors, even if they're not receiving 
new tasks this loop. It will be
+                    # either a no-op, or they will check-in on currently 
running tasks and send out new
+                    # events to be processed below.
+                    for executor in self.job.executors:
+                        executor.heartbeat()
+
+                    # TODO: I'm not sure why we expunge here. Do we need to do 
it after each individual

Review Comment:
   Todo left intentionally. I would like community feedback on this one!



-- 
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.

To unsubscribe, e-mail: commits-unsubscr...@airflow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to