Skip to content

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

@benbuckman

Description

@benbuckman

What do you see as an issue?

See my comment #32820 (comment):

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 – #32831 – I'm exploring that now.

Can this be added retroactively to the changelog for clarity?

I did explore the impact on #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 #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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions