From 88b8171b20bc98f032602bda1b82e54c3d486deb Mon Sep 17 00:00:00 2001 From: kalluripradeep Date: Sat, 23 May 2026 12:01:56 +0100 Subject: [PATCH 1/2] Fix #60763: Deactivate legacy DAGs with NULL bundle_name during upgrade from 2.x to 3.x This uses a query-based approach to deactivate legacy DAGs with NULL bundle_name, avoiding the need for a database migration that caused CI failures and addressing maintainer feedback. --- airflow-core/src/airflow/dag_processing/manager.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/airflow-core/src/airflow/dag_processing/manager.py b/airflow-core/src/airflow/dag_processing/manager.py index ed5c61c604c79..f585b9c29a772 100644 --- a/airflow-core/src/airflow/dag_processing/manager.py +++ b/airflow-core/src/airflow/dag_processing/manager.py @@ -430,9 +430,10 @@ def deactivate_stale_dags( for dag in dags_parsed: # Dags whose bundle has been removed from config (bundle no longer active) are stale — # the processor has stopped parsing their files, so the time-based check below would never fire. - if dag.bundle_name in inactive_bundles: + # Legacy DAGs with a NULL bundle_name (e.g. from Airflow 2.x) are also stale, as they will never be parsed. + if dag.bundle_name is None or dag.bundle_name in inactive_bundles: self.log.info( - "Deactivating Dag %s. Its bundle %s is no longer active.", + "Deactivating Dag %s. Its bundle %s is no longer active or is NULL.", dag.dag_id, dag.bundle_name, ) From 87f802da4b9becf1322a72df839f8eb3da6e45c3 Mon Sep 17 00:00:00 2001 From: kalluripradeep Date: Sat, 23 May 2026 12:32:33 +0100 Subject: [PATCH 2/2] Trigger CI re-run due to git clone flake