Skip to content

Warn when a deadline alert cannot be scheduled for a Dag run - #72518

Closed
DipakMandlik wants to merge 1 commit into
apache:mainfrom
DipakMandlik:fix-deadline-alert-silent-skip
Closed

DipakMandlik wants to merge 1 commit into
apache:mainfrom
DipakMandlik:fix-deadline-alert-silent-skip

Conversation

@DipakMandlik

@DipakMandlik DipakMandlik commented Sep 4, 2026 •

Copy link
Copy Markdown

A DAGRUN deadline reference evaluates to None whenever the Dag run attribute it reads is unset -- logical_date is NULL on runs triggered without one, such as airflow dags trigger without -l or a run created from another Dag's asset output. The caller then created no Deadline row and logged nothing at all, so the alert simply never fired and an operator had no way to discover why.

The only trace was a warning from a lower layer claiming the Dag run could not be found, which is actively misleading: the run exists, it just has no value for the column the reference reads.


Was generative AI tooling used to co-author this PR?
  • Yes (please specify the tool below)

  • Read the Pull Request Guidelines for more information. Note: commit author/co-author name and email in commits become permanently public when merged.
  • For fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
  • When adding dependency, check compliance with the ASF 3rd Party License Policy.
  • For significant user-facing changes create newsfragment: {pr_number}.significant.rst, in airflow-core/newsfragments. You can add this file in a follow-up commit after the PR is created so you know the PR number.

A DAGRUN deadline reference evaluates to None whenever the Dag run
attribute it reads is unset -- `logical_date` is NULL on runs triggered
without one, such as `airflow dags trigger` without `-l` or a run
created from another Dag's asset output. The caller then created no
Deadline row and logged nothing at all, so the alert simply never fired
and an operator had no way to discover why.

The only trace was a warning from a lower layer claiming the Dag run
could not be found, which is actively misleading: the run exists, it
just has no value for the column the reference reads.
@kaxil

kaxil commented Oct 1, 2026

Copy link
Copy Markdown
Member

Closing this. Main already logs a warning when a Dag-run deadline reference evaluates to None: #71767 added "skipping deadline alert because the deadline reference evaluated to None" in serialization/definitions/dag.py, with the Dag, run, alert, reference type and the missing Dag-run column.

@kaxil kaxil closed this Oct 1, 2026
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.

3 participants