The GitHub Actions job "Tests" on airflow.git/fix/execution-timeout-supervisor-enforcement has failed. Run started by GitHub user qwe-kev (triggered by potiuk).
Head commit for run: 8c758315871413d32bba9534ff4f7aeba41188e1 / kevin raymond <[email protected]> Handle task timeouts (execution_timeout) at supervisor closes: #53337 related: #57174 This PR implements proper execution timeout handling for Airflow 3.0 by moving timeout enforcement from the task process to the supervisor process. Previously, execution_timeout was handled inside the task process using a timeout decorator. This approach failed when: - Task process encountered SIGSEGV or other signals (#57174) - Native code ran in tight loops without handling Python signals - Process was killed before timeout could be enforced Changes: - Added TaskExecutionTimeout message for worker-to-supervisor communication - Supervisor monitors execution time and enforces timeout with SIGTERM/SIGKILL - Removed in-process timeout decorator from task execution - Timeout measurement starts after DAG parsing (excludes startup overhead) Implementation: 1. Worker sends timeout_seconds to supervisor after DAG parsing 2. Supervisor tracks elapsed time using monotonic clock 3. On timeout: sends SIGTERM, then SIGKILL after 5-second grace period This ensures reliable timeout enforcement at the supervisor level, preventing runaway tasks even when the task process encounters errors. Report URL: https://github.com/apache/airflow/actions/runs/20384710927 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
