From: Vasek Sraier Date: Tue, 11 Jan 2022 13:02:40 +0000 (+0100) Subject: process management: GC was not stopped during graceful shutdown X-Git-Tag: v6.0.0a1~52 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=30c36ca9fea3e3f40fa4d0285b3858b0d3322fad;p=thirdparty%2Fknot-resolver.git process management: GC was not stopped during graceful shutdown fixes #45 --- diff --git a/manager/knot_resolver_manager/kres_manager.py b/manager/knot_resolver_manager/kres_manager.py index c4205afc6..1cc218b02 100644 --- a/manager/knot_resolver_manager/kres_manager.py +++ b/manager/knot_resolver_manager/kres_manager.py @@ -160,6 +160,8 @@ class KresManager: async with self._manager_lock: await self._ensure_number_of_children(KresConfig(), 0) + if self._gc is not None: + await self._stop_gc() await self._controller.shutdown_controller() async def _instability_handler(self) -> None: diff --git a/manager/knot_resolver_manager/kresd_controller/systemd/__init__.py b/manager/knot_resolver_manager/kresd_controller/systemd/__init__.py index 8c6bfd33a..64d5adef6 100644 --- a/manager/knot_resolver_manager/kresd_controller/systemd/__init__.py +++ b/manager/knot_resolver_manager/kresd_controller/systemd/__init__.py @@ -40,13 +40,13 @@ class SystemdSubprocess(Subprocess): @property def systemd_id(self) -> str: if self._type is SubprocessType.GC: - return "kres-cache-gc.service" + return systemd.GC_SERVICE_NAME else: return f"kresd_{self._id}.service" @staticmethod def is_unit_name_ours(unit_name: str) -> bool: - is_ours = unit_name == "kres-cache-gc.service" + is_ours = unit_name == systemd.GC_SERVICE_NAME is_ours |= unit_name.startswith("kresd_") and unit_name.endswith(".service") return is_ours