Commit c4ea7e569f for bind
commit c4ea7e569f888ceae2b20d9b22122e8e278259f4
Author: Nicki Křížek <nicki@isc.org>
Date: Mon Sep 21 11:45:08 2026 +0000
Wait for the zone reload to finish in the cdnxdomain test
"rndc reload" only schedules zone reloads, and named logs "all zones
loaded" (which NamedInstance.reload() waits for) as soon as every
zone's load has been started. A zone that already has a database is
re-read asynchronously and the new database is swapped in afterwards,
so the direct query to ns2 could still be answered from the previous
zone contents and the test failed intermittently.
Wait for the zone's "loaded serial" log line, which is emitted after
the database swap, before querying.
Assisted-by: Claude:claude-fable-5-1
diff --git a/bin/tests/system/cdnxdomain/tests_cdnxdomain.py b/bin/tests/system/cdnxdomain/tests_cdnxdomain.py
index 45589ffcd2..fc0311bf61 100644
--- a/bin/tests/system/cdnxdomain/tests_cdnxdomain.py
+++ b/bin/tests/system/cdnxdomain/tests_cdnxdomain.py
@@ -98,7 +98,9 @@ def _serve(ns2, system_test_dir, variant):
st2 = os.stat(dst)
if int(st2.st_mtime) <= int(st.st_mtime):
os.utime(dst, (st2.st_atime, st.st_mtime + 1))
- ns2.reload()
+ with ns2.watch_log_from_here() as watcher:
+ ns2.rndc("reload")
+ watcher.wait_for_line("zone example/IN: loaded serial")
def _prime_secure_a(ns1):