SamWheating commented on a change in pull request #19950:
URL: https://github.com/apache/airflow/pull/19950#discussion_r761316507



##########
File path: airflow/jobs/local_task_job.py
##########
@@ -208,6 +208,14 @@ def heartbeat_callback(self, session=None):
                 )
                 raise AirflowException("PID of job runner does not match")
         elif self.task_runner.return_code() is None and 
hasattr(self.task_runner, 'process'):
+            if ti.state == State.SKIPPED:
+                # if the task was externally marked as skipped, its likely due 
to a timeout.
+                dagrun = ti.get_dagrun()
+                if dagrun.end_date:
+                    execution_time = dagrun.end_date - dagrun.start_date
+                    dagrun_timeout = dagrun.get_dag().dagrun_timeout
+                    if dagrun_timeout and execution_time > dagrun_timeout:
+                        self.log.warning("DagRun timed out after %s.", 
str(execution_time))

Review comment:
       Yeah, I'll try this today and let you know if it works.




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