The GitHub Actions job "Graph Update: pip in 
/airflow-core/tests/unit/config_templates, /airflow-ctl-tests, 
/airflow-e2e-tests, /dev/breeze/doc/images, /dev/mypy, /docker-stack-docs, 
/docker-stack-docs/docker-examples/extending/add-requirement-packages, 
/performance, /providers/airbyte, /providers/akeyless, /providers/alibaba, 
/providers/amazon, /providers/anthropic, /providers/apache/beam, 
/providers/apache/cassandra, /providers/apache/druid, /providers/apache/hdfs, 
/providers/apache/impala, /providers/apache/kafka, /providers..." on 
airflow.git/main has failed.
Run started by GitHub user dependabot[bot] (triggered by dependabot[bot]).

Head commit for run:
038ece6acf12794b2ae8ec84349a31e9cb629a4c / Sebastián Ortega 
<[email protected]>
Don't deactivate DAG bundles owned by other dag-processors (#69964)

`DagBundlesManager.sync_bundles_to_db()` marks every stored bundle that is
not in the calling process's config as inactive. This assumes the caller
sees the complete bundle configuration.

When multiple dag-processors are each configured with a partial config (one
bundle per processor, a natural way to shard parsing), each processor treats
the other processors' bundles as "no longer found in config" and disables
them. Processor A disables B's bundle, B disables A's, and they flip
`dag_bundle.active` on every parse cycle -- the deployment never converges
and continuously logs "DAG bundle ... is no longer found in config and has
been disabled" for bundles that are actively configured elsewhere.

Add a `deactivate_missing` flag (default `True`, preserving existing
single-processor behavior) and have `DagFileProcessorManager.sync_bundles()`
pass `deactivate_missing=False` when the processor was started with a bundle
filter (`--bundle-name` / `bundle_names_to_parse`), i.e. when it only owns a
subset of the bundles.

closes: #69963
related: #69698

Generated-by: Claude Code following the guidelines

Report URL: https://github.com/apache/airflow/actions/runs/29583537793

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to