potiuk commented on code in PR #39890:
URL: https://github.com/apache/airflow/pull/39890#discussion_r1623281077


##########
airflow/jobs/local_task_job_runner.py:
##########
@@ -303,6 +306,14 @@ def heartbeat_callback(self, session: Session = 
NEW_SESSION) -> None:
                 if dagrun_timeout and execution_time > dagrun_timeout:
                     self.log.warning("DagRun timed out after %s.", 
execution_time)
 
+            # If process still runs after being marked as success, let it run 
until configured overtime
+            # if there are configured listeners
+            if (
+                ti.state == TaskInstanceState.SUCCESS
+                and self._overtime < conf.getint("core", 
"task_listener_timeout")
+                and get_listener_manager().has_listeners

Review Comment:
   Do we want to limit it to only case where we have listeners? I think very 
similar scenario might happen when there is a "mini-scheduler" running after 
task completes. I **think** that case would also benefit from preventing eager 
heartbeat killing such task. Maybe then we should turn it into a generic 
"task_timeout" not "task_listener_timeout" and kill two birds with the same 
stone?



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to