You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On big installation the "get_dag_runs" endpoint to list all the dagruns in the UI is taking a long time to return a response.
The critical part of the code is the actual db query. Most likely due to the number of joins creating rows explosion. We need to optimize the query, most likely by double checking the eager loading options and verify that there is no row explosion (joinedload vs selectinload) cause by a wrong option. Also we can add load_only to limit the number of columns selected in each joins.
On big installation the "get_dag_runs" endpoint to list all the dagruns in the UI is taking a long time to return a response.
The critical part of the code is the actual db query. Most likely due to the number of joins creating rows explosion. We need to optimize the query, most likely by double checking the eager loading options and verify that there is no row explosion (joinedload vs selectinload) cause by a wrong option. Also we can add
load_onlyto limit the number of columns selected in each joins.airflow/airflow-core/src/airflow/api_fastapi/core_api/routes/public/dag_run.py
Lines 387 to 421 in 4e75919
Also needs investigation to check if an extra index could help.
Screen.Recording.2026-02-16.at.16.22.49.mov
Committer