From: Remi Gacogne Date: Wed, 4 Dec 2024 14:28:50 +0000 (+0100) Subject: dnsdist: Fix `whashed` and `wrandom` using the wrong parameter for consistent hashing X-Git-Tag: rec-5.2.0-rc1~6^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=34ce59c2574bde9d5117996d8f1d4f9f9c8ff380;p=thirdparty%2Fpdns.git dnsdist: Fix `whashed` and `wrandom` using the wrong parameter for consistent hashing --- diff --git a/pdns/dnsdistdist/dnsdist-lbpolicies.cc b/pdns/dnsdistdist/dnsdist-lbpolicies.cc index 337a062669..298565cdd6 100644 --- a/pdns/dnsdistdist/dnsdist-lbpolicies.cc +++ b/pdns/dnsdistdist/dnsdist-lbpolicies.cc @@ -87,7 +87,7 @@ template static std::shared_ptr getValRandom(const Se int sum = 0; size_t usableServers = 0; - const auto weightedBalancingFactor = dnsdist::configuration::getImmutableConfiguration().d_consistentHashBalancingFactor; + const auto weightedBalancingFactor = dnsdist::configuration::getImmutableConfiguration().d_weightedBalancingFactor; for (const auto& d : servers) { // w=1, w=10 -> 1, 11 if (d.second->isUp() && (weightedBalancingFactor == 0 || (static_cast(d.second->outstanding.load()) <= (targetLoad * d.second->d_config.d_weight)))) { // Don't overflow sum when adding high weights @@ -121,7 +121,7 @@ static shared_ptr valrandom(const unsigned int val, const Serve { using ValRandomType = int; double targetLoad = std::numeric_limits::max(); - const auto weightedBalancingFactor = dnsdist::configuration::getImmutableConfiguration().d_consistentHashBalancingFactor; + const auto weightedBalancingFactor = dnsdist::configuration::getImmutableConfiguration().d_weightedBalancingFactor; if (weightedBalancingFactor > 0) { /* we start with one, representing the query we are currently handling */ double currentLoad = 1;