This is an automated email from the ASF dual-hosted git repository. vatsrahul1001 pushed a commit to branch fix-e2e-reserialize-race in repository https://gitbox.apache.org/repos/asf/airflow.git
commit 106d6866d388245dffe7e8a416a0cd99dceac2ab Author: Rahul Vats <[email protected]> AuthorDate: Tue Oct 27 15:11:09 2026 +0530 Don't force dags reserialize in e2e startup (races dag-processor) --- airflow-e2e-tests/tests/airflow_e2e_tests/conftest.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/airflow-e2e-tests/tests/airflow_e2e_tests/conftest.py b/airflow-e2e-tests/tests/airflow_e2e_tests/conftest.py index 09331b1645d..a7213c0f473 100644 --- a/airflow-e2e-tests/tests/airflow_e2e_tests/conftest.py +++ b/airflow-e2e-tests/tests/airflow_e2e_tests/conftest.py @@ -982,9 +982,11 @@ def spin_up_airflow_environment(tmp_path_factory: pytest.TempPathFactory): _E2ETestState.compose_instance.start() _E2ETestState.compose_instance.wait_for(f"http://{DOCKER_COMPOSE_HOST_PORT}/api/v2/monitor/health") - _E2ETestState.compose_instance.exec_in_container( - command=["airflow", "dags", "reserialize"], service_name="airflow-dag-processor" - ) + # Don't force `airflow dags reserialize` here: the dag-processor service serializes the Dags on + # its own, and running reserialize inside the live container races that parse loop on the same + # `dag_id` INSERT, which crashes the processor with a `dag_pkey` UniqueViolation. Every test path + # already polls for the Dag via wait_for_dag / wait_for_dag_ids before using it, so no forced + # serialization is needed. if E2E_TEST_MODE == "event_driven": console.print("[yellow]Creating Kafka topics...")
