Commit b20a6e52a4 for bind
commit b20a6e52a4c5d04094160657851794d92d44161d
Author: Nicki Křížek <nicki@isc.org>
Date: Tue Nov 3 08:35:30 2026 +0000
Wait for ns2 to retry a quota-refused transfer of 'changing'
ns1's transfers-out quota can refuse the transfer of 'changing' like
any other zone's. ns2 then retries only after the zone's retry
interval: up to a minute while it has no copy, and the SOA's half an
hour once it holds serial 1. The test waited 30 seconds for serial 2.
Assisted-by: Claude:claude-opus-5-5
diff --git a/bin/tests/system/xferquota/ns1/changing1.db b/bin/tests/system/xferquota/ns1/changing1.db
index 633c234fba..cc972ba161 100644
--- a/bin/tests/system/xferquota/ns1/changing1.db
+++ b/bin/tests/system/xferquota/ns1/changing1.db
@@ -3,7 +3,7 @@ $TTL 600
@ IN SOA dns1.changing. postmaster.changing. (
1 ;; serial
3600 ;; refresh period
- 1800 ;; retry interval
+ 5 ;; retry interval
604800 ;; expire time
600 ) ;; default TTL
diff --git a/bin/tests/system/xferquota/ns1/changing2.db b/bin/tests/system/xferquota/ns1/changing2.db
index db8dc93202..57f99e5b6b 100644
--- a/bin/tests/system/xferquota/ns1/changing2.db
+++ b/bin/tests/system/xferquota/ns1/changing2.db
@@ -3,7 +3,7 @@ $TTL 600
@ IN SOA dns1.changing. postmaster.changing. (
2 ;; serial
3600 ;; refresh period
- 1800 ;; retry interval
+ 5 ;; retry interval
604800 ;; expire time
600 ) ;; default TTL
diff --git a/bin/tests/system/xferquota/ns2/named.conf.j2 b/bin/tests/system/xferquota/ns2/named.conf.j2
index d681e72fc6..e881c27dbf 100644
--- a/bin/tests/system/xferquota/ns2/named.conf.j2
+++ b/bin/tests/system/xferquota/ns2/named.conf.j2
@@ -17,6 +17,7 @@ zone "changing." {
type secondary;
primaries { 10.53.0.1; };
file "changing.bk";
+ min-retry-time 1;
};
include "zones.conf";
diff --git a/bin/tests/system/xferquota/tests_xferquota.py b/bin/tests/system/xferquota/tests_xferquota.py
index ef37e12038..4367fdbf65 100644
--- a/bin/tests/system/xferquota/tests_xferquota.py
+++ b/bin/tests/system/xferquota/tests_xferquota.py
@@ -83,7 +83,10 @@ def test_xferquota(named_port, ns1, ns2):
pattern = isctest.transfer.transfer_message(
"changing", "10.53.0.1", Re(r"Transfer completed: .*\(serial 2\)"), named_port
)
- with ns2.watch_log_from_start(timeout=30) as watcher:
+ # The quota may refuse the transfer of 'changing' too. Once ns2 holds
+ # serial 1, the zone's short SOA retry has it try again within seconds;
+ # without a copy yet, ns2 retries after up to a minute, then up to two.
+ with ns2.watch_log_from_start(timeout=180) as watcher:
watcher.wait_for_line(pattern)
query_and_compare(a_msg)