Hold a catz reference while the update process is running
This should delay the catalog zone from being destroyed during shutdown, if the update process is still running. Doing this should not introduce significant shutdown delays, as the update function constantly checks the 'shuttingdown' flag and cancels the process if it is set.
This commit is contained in:
@@ -2124,6 +2124,7 @@ dns__catz_timer_cb(void *arg) {
|
||||
ISC_LOG_INFO, "catz: %s: reload start", domain);
|
||||
|
||||
dns_catz_ref_catzs(catz->catzs);
|
||||
dns_catz_ref_catz(catz);
|
||||
isc_work_enqueue(catz->loop, dns__catz_update_cb, dns__catz_done_cb,
|
||||
catz);
|
||||
|
||||
@@ -2543,6 +2544,7 @@ dns__catz_done_cb(void *data) {
|
||||
ISC_LOG_INFO, "catz: %s: reload done: %s", dname,
|
||||
isc_result_totext(catz->updateresult));
|
||||
|
||||
dns_catz_unref_catz(catz);
|
||||
dns_catz_unref_catzs(catz->catzs);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user