Skip to content

[v3-4-test] Revert "Enforce execution_timeout for tasks run by a language SDK" (#75376) - #75469

Merged
jason810496 merged 1 commit into
apache:v3-4-testfrom
jason810496:revert-75376-v3-4-test
Oct 23, 2026
Merged

jason810496 merged 1 commit into
apache:v3-4-testfrom
jason810496:revert-75376-v3-4-test

Conversation

@jason810496

@jason810496 jason810496 commented Oct 23, 2026 •

Copy link
Copy Markdown
Member

Reverts #75376 on v3-4-test only. #74869 stays on main.

3.4.0 closes today, and #75376 needs #75387 alongside it to be correct. Getting #75387 in needs more bandwidth than is left, so it is safer to take #75376 out of the release than to ship half the pair.

The regression it leaves behind, from the review in #75387 (review): on v3-4-test the Python task runner arms SIGALRM from task.execution_timeout, while the supervisor arms its deadline from TIRunContext.execution_timeout. When the server value is the smaller one, for example a different default_task_execution_timeout, a Dag file changed after serialization, pre_execute, or a mapped expand(execution_timeout=...), the supervisor sends SIGTERM before the runner raises AirflowTaskTimeout, so on_kill, the retry policy, callbacks and listeners are all skipped.

git revert applies with no conflicts, and all 29 files land byte-identical to their state before #75376. SetExecutionTimeout from #73806 is untouched, so Python tasks keep the supervisor backstop they had before.


Was generative AI tooling used to co-author this PR?

…uage SDK (apache#74869)" (apache#75376)

This reverts commit 8326025.

3.4.0 closes today and apache#75376 needs apache#75387 alongside it, which needs more
bandwidth than is left. On v3-4-test alone, the Python task runner arms
SIGALRM from task.execution_timeout while the supervisor arms its deadline
from TIRunContext.execution_timeout. When the server value is smaller, the
supervisor sends SIGTERM before the runner raises AirflowTaskTimeout, so
on_kill, the retry policy, callbacks and listeners are skipped. Reverting
avoids shipping that regression in 3.4.0.

apache#74869 stays on main. SetExecutionTimeout (apache#73806) is untouched, so Python
tasks keep the supervisor backstop they had before apache#75376.

Co-Authored-By: Claude <noreply@anthropic.com>
@jason810496
jason810496 merged commit 7ec2757 into apache:v3-4-test Oct 23, 2026
134 of 161 checks passed
@github-actions github-actions Bot added this to the Airflow 3.4.1 milestone Oct 23, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Hi maintainer, this PR was merged without a milestone set.
We've automatically set the milestone to Airflow 3.4.1 based on: merged to version branch
If this milestone is not correct, please update it to the appropriate milestone.

This comment was generated by Milestone Tag Assistant.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants