karenbraganz opened a new issue, #58536: URL: https://github.com/apache/airflow/issues/58536
### Discussed in https://github.com/apache/airflow/discussions/53868 <div type='discussions-op-text'> <sup>Originally posted by **Szjs-z** July 29, 2025</sup> Hi Airflow community, I've encountered an issue where task duration keeps increasing for tasks that are skipped due to DAG timeout: **Problem Description:** When a DAG run times out due to `dagrun_timeout`, the unfinished tasks are marked as `SKIPPED`. However, in the Web UI, the task duration continues to increase even though the task state is `SKIPPED` : <img width="770" height="428" alt="Screenshot 2025-07-29 at 17 42 11" src="https://github.com/user-attachments/assets/720b243e-d915-4275-a615-b09a31bbbdb5" /> **Root Cause Analysis:** From code inspection in `airflow/jobs/scheduler_job.py`, the `_schedule_dag_run` method handles DAG timeout by: ```python if ( dag_run.start_date and dag.dagrun_timeout and dag_run.start_date < timezone.utcnow() - dag.dagrun_timeout ): dag_run.set_state(DagRunState.FAILED) unfinished_task_instances = session.scalars( select(TI) .where(TI.dag_id == dag_run.dag_id) .where(TI.run_id == dag_run.run_id) .where(TI.state.in_(State.unfinished)) ) for task_instance in unfinished_task_instances: task_instance.state = TaskInstanceState.SKIPPED session.merge(task_instance) session.flush() self.log.info("Run %s of %s has timed-out", dag_run.run_id, dag_run.dag_id) ``` 1. Setting DAG run state to FAILED 2. Marking unfinished tasks as SKIPPED 3. But it doesn't set `end_date` for these task instances I'm wondering if this is a known issue or if there's a recommended way to handle this. Thanks, Chris Zhao</div> -- 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]
