Skip to content

fix(data-ngin): fail the DAG run when the pipeline task fails - #18

Merged
dominickdupuy merged 1 commit into
mainfrom
data-ngin/fix/dag-run-state
Oct 8, 2026
Merged

dominickdupuy merged 1 commit into
mainfrom
data-ngin/fix/dag-run-state

Conversation

@dominickdupuy

Copy link
Copy Markdown
Member

Each data-ngin DAG ended in a staleness_check task with trigger_rule="all_done". Airflow sets a run's state from its leaf tasks, so when run_pipeline failed, that always-run leaf still succeeded and the whole run showed success.

Found by a manual cutover-check run on the algocloud box: 2 of 29 Databento symbols failed with 504 The remote gateway timed out, the pipeline task failed, and the run still showed green.

  • Removes the warn-only task from all three DAGs. The old production DAGs never had it, and the daily check_data_freshness cron job covers it.
  • Removes the now-unused pipeline_tasks.check_staleness.
  • Adds a test that keeps all_done out of the DAG files.

Tests, ruff and mypy are clean.

Each DAG ended in a staleness_check task with trigger_rule=all_done.
Airflow takes a run's state from its leaf tasks, so after run_pipeline
failed the always-run leaf succeeded and the run was marked success.
A manual run on the box hit exactly this: 2 of 29 Databento symbols
failed, and the run showed green.

Drop the warn-only task. The old production DAGs never had it, and
the daily data_ngin.ops.check_data_freshness cron job covers it. A test
now keeps all_done out of the DAG files.
@dominickdupuy
dominickdupuy merged commit 9715a11 into main Oct 8, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant