tirkarthi commented on issue #48789:
URL: https://github.com/apache/airflow/issues/48789#issuecomment-2786519670
With the changes in #48920 validation error from backend is gone but the
graph is still not rendered. Below is the response. I see
`asset-name-ref:asset-name-ref:` with the ref repeated. There is no console log
probably some more work needs to be done from UI.
```json
{
"edges": [
{
"source_id":
"asset-name-ref:asset-name-ref:consumer:asset11_producer_invalid",
"target_id": "dag:consumer"
},
{
"source_id": "asset-name-ref:asset:3:consumer:asset2_producer",
"target_id": "dag:consumer"
},
{
"source_id": "asset:2",
"target_id": "dag:consumes_asset_decorator"
},
{
"source_id": "asset:3",
"target_id": "asset-name-ref:asset2_producer"
},
{
"source_id": "asset:3",
"target_id": "asset-name-ref:asset:3:consumer:asset2_producer"
},
{
"source_id": "asset:3",
"target_id": "dag:consumes_asset_decorator"
},
{
"source_id": "dag:asset1_producer",
"target_id": "asset:2"
},
{
"source_id": "dag:asset2_producer",
"target_id": "asset:3"
},
{
"source_id": "dag:consumes_asset_decorator",
"target_id": "asset:4"
}
],
"nodes": [
{
"id": "dag:asset1_producer",
"label": "asset1_producer",
"type": "dag"
},
{
"id": "asset:2",
"label": "asset1_producer",
"type": "asset"
},
{
"id": "dag:asset2_producer",
"label": "asset2_producer",
"type": "dag"
},
{
"id": "asset:3",
"label": "asset2_producer",
"type": "asset"
},
{
"id": "dag:consumer",
"label": "consumer",
"type": "dag"
},
{
"id":
"asset-name-ref:asset-name-ref:consumer:asset11_producer_invalid",
"label": "asset11_producer_invalid",
"type": "asset-name-ref"
},
{
"id": "asset-name-ref:asset:3:consumer:asset2_producer",
"label": "asset2_producer",
"type": "asset-name-ref"
},
{
"id": "dag:consumes_asset_decorator",
"label": "consumes_asset_decorator",
"type": "dag"
},
{
"id": "asset:4",
"label": "process_nothing",
"type": "asset"
}
]
}
```
Sample dag
```python
from __future__ import annotations
from airflow.decorators import dag, task
from airflow.sdk import Asset
from airflow.sdk.definitions.asset.decorators import asset
@asset(uri="s3://bucket/asset11_producer", schedule=None)
def producer1():
pass
@asset(uri="s3://bucket/asset2_producer", schedule=None)
def producer2():
pass
@asset(uri="abc", schedule=None)
def producer3():
pass
@dag(
schedule=Asset.ref(name="asset11_producer_invalid") &
Asset.ref(name="asset2_producer"),
catchup=False,
tags=["asset"],
)
def consumer():
@task()
def process_nothing(triggering_asset_events):
for a, events in triggering_asset_events.items():
print(a.name, events)
consumer()
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]