]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
dnsdist: Set default number of outstanding queries per backend to 65536 17231/head
authorRemi Gacogne <remi.gacogne@powerdns.com>
Thu, 23 Apr 2026 08:47:01 +0000 (10:47 +0200)
committerRemi Gacogne <remi.gacogne@powerdns.com>
Thu, 23 Apr 2026 12:32:56 +0000 (14:32 +0200)
The existing default was off by one, wasting one possible state.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
pdns/dnsdistdist/dnsdist-configuration.hh
pdns/dnsdistdist/dnsdist-lua-configuration-items.cc
pdns/dnsdistdist/dnsdist-settings-definitions.yml
pdns/dnsdistdist/docs/reference/tuning.rst

index 502fbff784a4b83378179fa70e9764fe996e4c73..5ab67715bbc9de7b85f9d5aaac0cace3ee74f4c5 100644 (file)
@@ -104,7 +104,7 @@ struct ImmutableConfiguration
   uint32_t d_maxTCPReadIOsPerQuery{50};
   uint32_t d_tcpBanDurationForExceedingMaxReadIOsPerQuery{60};
   uint32_t d_tcpBanDurationForExceedingTCPTLSRate{10};
-  uint16_t d_maxUDPOutstanding{std::numeric_limits<uint16_t>::max()};
+  uint32_t d_maxUDPOutstanding{65536U};
   TimeFormat d_structuredLoggingTimeFormat{TimeFormat::Numeric};
   uint8_t d_udpTimeout{2};
   uint8_t d_tcpConnectionsOverloadThreshold{90};
index 4e56f071ab2eb53baa857690285fb804f75ffddc..f6abc6cab21dca5d5746d460b33d5bd7d7c6222c 100644 (file)
@@ -146,7 +146,7 @@ static const std::map<std::string, UnsignedIntegerImmutableConfigurationItems> s
   {"setDoHDownstreamCleanupInterval", {[](dnsdist::configuration::ImmutableConfiguration& config, uint64_t newValue) { config.d_outgoingDoHCleanupInterval = newValue; }, std::numeric_limits<uint32_t>::max()}},
   {"setDoHDownstreamMaxIdleTime", {[](dnsdist::configuration::ImmutableConfiguration& config, uint64_t newValue) { config.d_outgoingDoHMaxIdleTime = newValue; }, std::numeric_limits<uint16_t>::max()}},
 #endif /* HAVE_DNS_OVER_HTTPS && HAVE_NGHTTP2 */
-  {"setMaxUDPOutstanding", {[](dnsdist::configuration::ImmutableConfiguration& config, uint64_t newValue) { config.d_maxUDPOutstanding = newValue; }, std::numeric_limits<uint16_t>::max()}},
+  {"setMaxUDPOutstanding", {[](dnsdist::configuration::ImmutableConfiguration& config, uint64_t newValue) { config.d_maxUDPOutstanding = newValue; }, 65536U}},
   {"setWHashedPertubation" /* Deprecated */, {[](dnsdist::configuration::ImmutableConfiguration& config, uint64_t newValue) { config.d_hashPerturbation = newValue; }, std::numeric_limits<uint32_t>::max()}},
   {"setWHashedPerturbation", {[](dnsdist::configuration::ImmutableConfiguration& config, uint64_t newValue) { config.d_hashPerturbation = newValue; }, std::numeric_limits<uint32_t>::max()}},
 #ifndef DISABLE_RECVMMSG
index 5e3129558cf65e106d3b8ab84b31646bedcbba0a..764db74c1d8d8fafb8e307ea8c04846161ceb0d2 100644 (file)
@@ -1690,7 +1690,7 @@ udp_tuning:
       runtime-configurable: false
     - name: "max_outstanding_per_backend"
       type: "u32"
-      default: 65535
+      default: 65536
       lua-name: "setMaxUDPOutstanding"
       internal-field-name: "d_maxUDPOutstanding"
       runtime-configurable: false
index 257e43190b44e508354f6a5bbcf1450925e5adf6..ebc18521d0e0fba6f2203241cc060f107e292b08 100644 (file)
@@ -103,7 +103,7 @@ Tuning related functions
 
 .. function:: setMaxUDPOutstanding(num)
 
-  Set the maximum number of outstanding UDP queries to a given backend server. This can only be set at configuration time and defaults to 65535 (10240 before 1.4.0).
+  Set the maximum number of outstanding UDP queries to a given backend server. This can only be set at configuration time and defaults to 65536 (10240 before 1.4.0).
 
   :param int num: