bind9/bin
Ondřej Surý eba7fb5f9f
Create a second pruning task for rbtdb with unlimited quantum
Previously, rbtdb->task had quantum of 1 because it was originally used
just for freeing RBTDB contents, which can happen on a "best effort"
basis (does not need to be prioritized).  However, when tree pruning was
implemented, it also started sending events to that task, enabling the
latter to become clogged up with a significant event backlog because it
only pruned a single RBTDB node per event.

To prioritize tree pruning (as it is necessary for enforcing the
configured memory use limit for the cache memory context), create a
second task with a virtually unlimited quantum (UINT_MAX) and send the
tree-pruning events to this new task, to ensure that all nodes scheduled
for pruning will be processed before further nodes are queued in a
similar fashion.

This change enables dropping the prunenodes list and restoring the
originally-used logic that allocates and sends a separate event for each
node to prune.

(cherry picked from commit 540a5b5a2c)
2024-03-06 19:17:32 +01:00
..
check Extend dns_db_allrdatasets to control interation results 2022-12-08 11:20:35 +11:00
confgen Update sources to Clang 15 formatting 2022-11-29 10:30:34 +01:00
delv Update sources to Clang 15 formatting 2022-11-29 10:30:34 +01:00
dig Don't use reference counting in isc_timer unit 2023-01-19 11:28:10 +01:00
dnssec Update the source code formatting using clang-format-17 2023-10-17 17:56:31 +02:00
named Update b.root-servers.net IP addresses 2023-11-03 03:44:43 +11:00
nsupdate Handle address lookup failure more gracefully 2023-02-01 00:41:09 +11:00
pkcs11 Update sources to Clang 15 formatting 2022-11-29 10:30:34 +01:00
plugins Backport isc_ht API changes from BIND 9.18 2024-01-05 11:52:05 +01:00
python Adapt to Python scripts to black 23.1.0 2023-02-17 16:55:47 +01:00
rndc Document that reloading happens asynchronously 2023-09-27 10:14:35 +10:00
tests Create a second pruning task for rbtdb with unlimited quantum 2024-03-06 19:17:32 +01:00
tools Update sources to Clang 15 formatting 2022-11-29 10:30:34 +01:00
win32/BINDInstall Update the copyright information in all files in the repository 2022-01-11 12:22:09 +01:00
Makefile.in Update the copyright information in all files in the repository 2022-01-11 12:22:09 +01:00