This is an automated email from the ASF dual-hosted git repository.
Lee-W pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new 9d474c4c3e8 Speed up Dag serialization by skipping redundant asset
roundtrip (#67702)
9d474c4c3e8 is described below
commit 9d474c4c3e8a935e1870601059d94de6e5ede814
Author: Shahar Epstein <[email protected]>
AuthorDate: Wed Jun 3 04:47:51 2026 +0300
Speed up Dag serialization by skipping redundant asset roundtrip (#67702)
---
airflow-core/src/airflow/serialization/serialized_objects.py | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/airflow-core/src/airflow/serialization/serialized_objects.py
b/airflow-core/src/airflow/serialization/serialized_objects.py
index a98751de590..3d74bf94109 100644
--- a/airflow-core/src/airflow/serialization/serialized_objects.py
+++ b/airflow-core/src/airflow/serialization/serialized_objects.py
@@ -918,14 +918,16 @@ class _DependencyDetector:
for obj in task.outlets or []:
if isinstance(obj, (Asset, SerializedAsset)):
- serialized_asset = ensure_serialized_asset(obj)
+ # The unique key only needs ``name``/``uri``, and asset
encode/decode
+ # copies both verbatim, so build the key directly and skip the
full
+ # ensure_serialized_asset() encode→decode roundtrip on every
outlet.
deps.append(
DagDependency(
source=task.dag_id,
target="asset",
label=obj.name,
dependency_type="asset",
-
dependency_id=SerializedAssetUniqueKey.from_asset(serialized_asset).to_str(),
+ dependency_id=SerializedAssetUniqueKey(name=obj.name,
uri=obj.uri).to_str(),
)
)
elif isinstance(obj, (AssetAlias, SerializedAssetAlias)):