apache/airflow

Changelog omits important change to `dag.test()` behavior in 2.7.0

Open

#34.490 geöffnet am 19. Sept. 2023

Auf GitHub ansehen
 (5 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)Python (16.781 Forks)batch import
good first issuekind:documentation

Repository-Metriken

Stars
 (44.809 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 7T 18h) (834 gemergte PRs in 30 T)

Beschreibung

What do you see as an issue?

See my comment https://github.com/apache/airflow/pull/32820#issuecomment-1714093966:

This PR appears to have unintentionally(?), or at least without being documented in the changelog, changed the way dag.test() handles exceptions. (See this line for example – https://github.com/apache/airflow/pull/32820/files#diff-62c8e300ee91e0d59f81e0ea5d30834f04db71ae74f2e155a10b51056b00b59bR2677 – dag.test() now returns a DagRun not None.)

This might actually help with writing unit tests for exceptions in DAGs – https://github.com/apache/airflow/discussions/32831 – I'm exploring that now.

Can this be added retroactively to the changelog for clarity?

I did explore the impact on https://github.com/apache/airflow/discussions/32831, and it's positive: I can now test a DAG in which a task fails, but other tasks continue – either because of their trigger rules, or because of parallel mapped task groups. Previously we had to use DebugExecutor for this, and it was very slow. This is a good change, and a significant one, and it should be documented in the changelog.

Solving the problem

Describe the perhaps-unintentional(?) effects of https://github.com/apache/airflow/pull/32820 on dag.test() and specifically on testing DAG runs with failing tasks.

Anything else

No response

Are you willing to submit PR?

  • Yes I am willing to submit a PR!

Code of Conduct

Contributor Guide