This is an automated email from the ASF dual-hosted git repository.
shahar1 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 f2fae8c737a Fix flaky test_trigger_log in triggerer job tests (#72919)
f2fae8c737a is described below
commit f2fae8c737a4478c66576b1a3868106fa023fecd
Author: PoAn Yang <[email protected]>
AuthorDate: Mon Sep 28 04:15:38 2026 +0800
Fix flaky test_trigger_log in triggerer job tests (#72919)
Signed-off-by: PoAn Yang <[email protected]>
---
airflow-core/tests/unit/jobs/test_triggerer_job.py | 22 ++++++++++++++--------
1 file changed, 14 insertions(+), 8 deletions(-)
diff --git a/airflow-core/tests/unit/jobs/test_triggerer_job.py
b/airflow-core/tests/unit/jobs/test_triggerer_job.py
index 7b4a45e9ea7..3336bedd3b0 100644
--- a/airflow-core/tests/unit/jobs/test_triggerer_job.py
+++ b/airflow-core/tests/unit/jobs/test_triggerer_job.py
@@ -1237,18 +1237,24 @@ def test_trigger_log(mock_monotonic, trigger,
watcher_count, trigger_count, sess
Checks that the triggerer will log watcher and trigger in separate lines.
"""
create_trigger_in_db(session, trigger)
+ trigger_line = f"{trigger_count} triggers currently running"
+ watcher_line = f"{watcher_count} watchers currently running"
trigger_runner_supervisor =
TriggerRunnerSupervisor.start(job=Job(id=123456), capacity=10)
- trigger_runner_supervisor.load_triggers()
-
- for _ in range(30):
- trigger_runner_supervisor._service_subprocess(0.1)
+ try:
+ trigger_runner_supervisor.load_triggers()
- stdout = capsys.readouterr().out
- assert f"{trigger_count} triggers currently running" in stdout
- assert f"{watcher_count} watchers currently running" in stdout
+ stdout = ""
+ for _ in range(300):
+ trigger_runner_supervisor._service_subprocess(0.1)
+ stdout += capsys.readouterr().out
+ if trigger_line in stdout and watcher_line in stdout:
+ break
+ finally:
+ trigger_runner_supervisor.kill(force=False)
- trigger_runner_supervisor.kill(force=False)
+ assert trigger_line in stdout
+ assert watcher_line in stdout
def test_trigger_logger_close():