This is an automated email from the ASF dual-hosted git repository.
potiuk 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 757db273916 fix get latest serialized_dag model query to prevent "Out
of sort memory" error (#55589)
757db273916 is described below
commit 757db2739168571db4e00a67f16b7ada9039785e
Author: Jeongwoo Do <[email protected]>
AuthorDate: Wed Oct 22 18:51:34 2025 +0900
fix get latest serialized_dag model query to prevent "Out of sort memory"
error (#55589)
* fix get latest serialized_dag model query
* fix get latest serialized_dag model query
* add db type check logic
---
airflow-core/src/airflow/models/serialized_dag.py | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/airflow-core/src/airflow/models/serialized_dag.py
b/airflow-core/src/airflow/models/serialized_dag.py
index 7184a29effe..e5df49e2a95 100644
--- a/airflow-core/src/airflow/models/serialized_dag.py
+++ b/airflow-core/src/airflow/models/serialized_dag.py
@@ -461,6 +461,15 @@ class SerializedDagModel(Base):
@classmethod
def latest_item_select_object(cls, dag_id):
+ from airflow.settings import engine
+
+ if engine.dialect.name == "mysql":
+ # Prevent "Out of sort memory" caused by large values in cls.data
column for MySQL.
+ # Details in https://github.com/apache/airflow/pull/55589
+ latest_item_id = (
+ select(cls.id).where(cls.dag_id ==
dag_id).order_by(cls.created_at.desc()).limit(1)
+ )
+ return select(cls).where(cls.id == latest_item_id)
return select(cls).where(cls.dag_id ==
dag_id).order_by(cls.created_at.desc()).limit(1)
@classmethod