]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
chg: dev: Remove opportunistic node cleaning from qpzone
authorAlessio Podda <alessio@isc.org>
Tue, 19 Aug 2025 13:00:47 +0000 (13:00 +0000)
committerAlessio Podda <alessio@isc.org>
Tue, 19 Aug 2025 13:00:47 +0000 (13:00 +0000)
Currently, when releasing a qpznode after a read operation, we will
check if the node is dirty due to a previous write, upgrade the lock to
a write lock and perform a cleanup.

An unintended side effect of this is that protecting a node by
increasing the reference count must also protect its parent database.
For the very common case where only one zone is configured, this is a
non-trivial source of contention, as the same refcount will be hit by
all threads.

This MR removes the opportunistic cleaning and the database
refcount, reducing contention. Cleaning will be done only on
closeversion.

Merge branch 'alessio/remove-opportunistic-node-cleaning' into 'main'

See merge request isc-projects/bind9!10814


Trivial merge