From: Ondřej Surý Date: Thu, 14 May 2026 16:18:27 +0000 (+0200) Subject: Raise the per-server recursive-clients ceiling in fetchlimit X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=db28b2127abdd92d83a1da8ae84b7b88dce53a86;p=thirdparty%2Fbind9.git Raise the per-server recursive-clients ceiling in fetchlimit With the resolver now legitimately escalating to TCP after repeated UDP timeouts to the same authoritative, each lame-server lookup takes ~50% longer to fail. The recursive-client backlog therefore peaks a little higher before the fetches-per-server auto-tune drops the quota below 200. Bump the upper bound for the burst-against-lame-server and recovery steps from 200 to 250 to absorb that extra latency. The lower bound and the final post-recovery target (clients <= 20) are unchanged. Assisted-by: Claude:claude-opus-4-7 --- diff --git a/bin/tests/system/fetchlimit/tests.sh b/bin/tests/system/fetchlimit/tests.sh index 3d8a77397ab..b36f7925706 100644 --- a/bin/tests/system/fetchlimit/tests.sh +++ b/bin/tests/system/fetchlimit/tests.sh @@ -82,9 +82,11 @@ for try in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20; do burst 10.53.0.3 a $try # fetches-per-server is at 400, but at 20qps against a lame server, # we'll reach 200 at the tenth second, and the quota should have been - # tuned to less than that by then. + # tuned to less than that by then. Allow a small margin above 200 + # to absorb the extra latency introduced by the resolver's TCP + # fallback after repeated UDP timeouts. [ $try -le 5 ] && low=$((try * 10)) - stat 10.53.0.3 20 200 || ret=1 + stat 10.53.0.3 20 250 || ret=1 [ $ret -eq 1 ] && break sleep 1 done @@ -125,7 +127,7 @@ ret=0 sendcmd 10.53.0.4 send-responses "enable" for try in 1 2 3 4 5; do burst 10.53.0.3 b $try - stat 10.53.0.3 0 200 || ret=1 + stat 10.53.0.3 0 250 || ret=1 [ $ret -eq 1 ] && break sleep 1 done