The GitHub Actions job "Tests" on airflow.git/alias-create-asset has succeeded.
Run started by GitHub user uranusjr (triggered by uranusjr).

Head commit for run:
d0b0d388483c1c42b2cb493b23afac807e40062c / Tzu-ping Chung <uranu...@gmail.com>
Dynamically create assets if referenced by alias

When an asset alias references an inactive, or non-existent asset, we
used to raise an exception and reject the user request. This is because
it implies the (non-active) asset does not have a downstream dependency
anyway, and emitting an event for it is meaningless.

There is an issue, however, when there's a downstream depending only on
the ASSET ALIAS instead:

    alias = AssetAlias("a")

    with DAG(dag_id="downstream", schedule=alias):
        ...

    with DAG(dag_id="upstream"):
        @task(outlets=alias)
        def emit():
            outlet_events[alias].add(Asset("x"))

In this example, nothing actually depends on the asset 'x', but we still
need to emit something to trigger the dag 'downstream'.

The easiest solution is to still emit an event for the non-active asset
anyway. The asset is created in the database if needed, but not set to
be active. This satisfies the need to have an event, but avoids weird
situations on asset activeness.

Report URL: https://github.com/apache/airflow/actions/runs/14168481892

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: jobs-unsubscr...@airflow.apache.org
For additional commands, e-mail: jobs-h...@airflow.apache.org

Reply via email to