Pause the catz dbiterator while processing the zone

The dbiterator read-locks the whole zone and it stayed locked during
whole processing time when catz is being read.  Pause the iterator, so
the updates to catz zone are not being blocked while processing the catz
update.
This commit is contained in:
Ondřej Surý 2023-02-23 11:10:39 +01:00
parent b1cd4a066a
commit 4e7187601f
No known key found for this signature in database
GPG key ID: 2820F37E873DEA41

View file

@ -2285,6 +2285,9 @@ dns__catz_update_cb(void *data) {
break;
}
result = dns_dbiterator_pause(it);
RUNTIME_CHECK(result == ISC_R_SUCCESS);
if (!is_vers_processed) {
/* Keep the version node to skip it later in the loop */
vers_node = node;