From b2682be48bca3c8b47384f5d1f970ed95dfba5b0 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Ale=C5=A1=20Mr=C3=A1zek?= Date: Wed, 3 Jul 2024 07:06:55 +0200 Subject: [PATCH] manager: config_store: renew with old config --- manager/knot_resolver_manager/config_store.py | 7 ++++--- manager/knot_resolver_manager/kres_manager.py | 4 +--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/manager/knot_resolver_manager/config_store.py b/manager/knot_resolver_manager/config_store.py index b4e2d62c8..e5fbaf60d 100644 --- a/manager/knot_resolver_manager/config_store.py +++ b/manager/knot_resolver_manager/config_store.py @@ -27,9 +27,7 @@ class ConfigStore: err_res = filter(lambda r: r.is_err(), results) errs = list(map(lambda r: r.unwrap_err(), err_res)) if len(errs) > 0: - raise KresManagerException( - "Validation of the new config failed. The reasons are:\n - " + "\n - ".join(errs) - ) + raise KresManagerException("Configuration validation failed. The reasons are:\n - " + "\n - ".join(errs)) async with self._update_lock: # update the stored config with the new version @@ -39,6 +37,9 @@ class ConfigStore: for call in self._callbacks: await call(config) + async def renew(self) -> None: + await self.update(self._config) + async def register_verifier(self, verifier: VerifyCallback) -> None: self._verifiers.append(verifier) res = await verifier(self.get(), self.get()) diff --git a/manager/knot_resolver_manager/kres_manager.py b/manager/knot_resolver_manager/kres_manager.py index 6682d9262..1090ad5db 100644 --- a/manager/knot_resolver_manager/kres_manager.py +++ b/manager/knot_resolver_manager/kres_manager.py @@ -337,9 +337,7 @@ class KresManager: # pylint: disable=too-many-instance-attributes self._fix_counter.increase() await self._reload_system_state() logger.warning("Workers reloaded. Applying old config....") - old_config = self._config_store.get() - await self.load_policy_rules(old_config, old_config) - await self.apply_config(old_config, _noretry=True) + await self._config_store.renew() logger.warning(f"System stability hopefully renewed. Fix attempt counter is currently {self._fix_counter}") except BaseException: logger.error("Failed attempting to fix an error. Forcefully shutting down.", exc_info=True) -- 2.47.2