mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-08-31 14:35:26 +00:00
Fix the fetches-per-server quota calculation
Since commit bad5a523c2
, when the fetches-per-server quota
was increased or decreased, instead of the value being set to
the newly calculated quota, it was set to the *minimum* of
the new quota or 1 - which effectively meant it was always set to 1.
it should instead have been the maximum, to prevent the value from
ever dropping to zero.
This commit is contained in:
@@ -3565,7 +3565,7 @@ maybe_adjust_quota(dns_adb_t *adb, dns_adbaddrinfo_t *addr, bool timeout) {
|
||||
uint_fast32_t new_quota =
|
||||
adb->quota * quota_adj[--addr->entry->mode] / 10000;
|
||||
atomic_store_release(&addr->entry->quota,
|
||||
ISC_MIN(1, new_quota));
|
||||
ISC_MAX(1, new_quota));
|
||||
log_quota(addr->entry,
|
||||
"atr %0.2f, quota increased to %" PRIuFAST32,
|
||||
addr->entry->atr, new_quota);
|
||||
@@ -3575,7 +3575,7 @@ maybe_adjust_quota(dns_adb_t *adb, dns_adbaddrinfo_t *addr, bool timeout) {
|
||||
uint_fast32_t new_quota =
|
||||
adb->quota * quota_adj[++addr->entry->mode] / 10000;
|
||||
atomic_store_release(&addr->entry->quota,
|
||||
ISC_MIN(1, new_quota));
|
||||
ISC_MAX(1, new_quota));
|
||||
log_quota(addr->entry,
|
||||
"atr %0.2f, quota decreased to %" PRIuFAST32,
|
||||
addr->entry->atr, new_quota);
|
||||
|
Reference in New Issue
Block a user