From df386d1d6a8837dbdb3c0229ab8929e322ca6f16 Mon Sep 17 00:00:00 2001 From: Steve Miller <43918257+kc1awv@users.noreply.github.com> Date: Tue, 6 Jan 2026 10:54:20 -0500 Subject: [PATCH] implement resource cleanup loop missing a loop for periodic cleanup of expired resource expectations, whoops. --- rrcd/service.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/rrcd/service.py b/rrcd/service.py index 12af9ba..fab3261 100644 --- a/rrcd/service.py +++ b/rrcd/service.py @@ -1862,6 +1862,18 @@ class HubService: for room in rooms_to_prune: self.log.info("Pruned unused registered room %s", room) + def _resource_cleanup_loop(self) -> None: + """Periodically cleanup expired resource expectations.""" + while not self._shutdown.is_set(): + # Run cleanup every 30 seconds + time.sleep(30.0) + if self._shutdown.is_set(): + break + try: + self._cleanup_all_expired_expectations() + except Exception: + self.log.exception("Resource cleanup failed") + def _config_path_for_writes(self) -> str | None: p = self.config.config_path if not p: