This is an automated email from the ASF dual-hosted git repository. ephraimanierobi pushed a commit to branch v3-1-test in repository https://gitbox.apache.org/repos/asf/airflow.git
commit 75682e90f895faf849048e3a35c178d77d205659 Author: anshuksi282-ksolves <[email protected]> AuthorDate: Mon Oct 27 15:28:45 2025 +0530 Update SerializedDagModel query to fetch DagVersion with joinedload (#56422) (cherry picked from commit eeb203ee932672c7a8225cb8bba32fd3e4da408c) --- airflow-core/src/airflow/models/serialized_dag.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/airflow-core/src/airflow/models/serialized_dag.py b/airflow-core/src/airflow/models/serialized_dag.py index 9a425585cff..0150195eff9 100644 --- a/airflow-core/src/airflow/models/serialized_dag.py +++ b/airflow-core/src/airflow/models/serialized_dag.py @@ -28,7 +28,7 @@ from typing import TYPE_CHECKING, Any, Literal import sqlalchemy_jsonfield import uuid6 from sqlalchemy import Column, ForeignKey, LargeBinary, String, exc, exists, select, tuple_, update -from sqlalchemy.orm import backref, foreign, relationship +from sqlalchemy.orm import backref, foreign, joinedload, relationship from sqlalchemy.sql.expression import func, literal from sqlalchemy_utils import UUIDType @@ -414,7 +414,14 @@ class SerializedDagModel(Base): serialized_dag_hash = session.scalars( select(cls.dag_hash).where(cls.dag_id == dag.dag_id).order_by(cls.created_at.desc()) ).first() - dag_version = DagVersion.get_latest_version(dag.dag_id, session=session) + dag_version = session.scalar( + select(DagVersion) + .where(DagVersion.dag_id == dag.dag_id) + .options(joinedload(DagVersion.task_instances)) + .options(joinedload(DagVersion.serialized_dag)) + .order_by(DagVersion.created_at.desc()) + .limit(1) + ) if ( serialized_dag_hash == new_serialized_dag.dag_hash
