From 73abfc6fa0158b287819d116542f1be1fe9dab8a Mon Sep 17 00:00:00 2001 From: Fabio Erculiani Date: Mon, 4 Mar 2013 13:59:44 +0000 Subject: [PATCH] [RigoDaemon] schedule a reload every 24 hours to cut on Python leaks. --- rigo/RigoDaemon/app.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/rigo/RigoDaemon/app.py b/rigo/RigoDaemon/app.py index a71b92644..045d094a7 100755 --- a/rigo/RigoDaemon/app.py +++ b/rigo/RigoDaemon/app.py @@ -741,6 +741,7 @@ class RigoDaemonService(dbus.service.Object): self._start_package_cache_timer() self._start_repositories_update_timer() + self._start_timed_reload() def _thread_dumper(self): """ @@ -766,6 +767,16 @@ class RigoDaemonService(dbus.service.Object): task.daemon = True task.start() + def _start_timed_reload(self): + """ + Start timer thread that reloads RigoDaemon every 24 hours. + This avoids the Python process to grow over time. + """ + task = Timer(3600 * 24, self.reload) + task.daemon = True + task.name = "TimedReloadTimer" + task.start() + def _start_package_cache_timer(self): """ Start timer thread that handles old package files