From 1f28d8d3311262427938180435b68f0a35c2b330 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Wed, 20 Aug 2014 22:31:06 +0000 Subject: process: Deal with infinite looping of the server Currently if an exception occurs, we just run the idle handler again and again, usually looping indefintely. Chances are the exception that occurred will keep occuring and this is not a good place to be. This was breaking the autobuilders with gigabytes of logs. At least improve things so the cooker shuts down gracefully when this happens. Some trace of the original problem may still be present on the console too! Signed-off-by: Richard Purdie --- lib/bb/server/process.py | 2 ++ 1 file changed, 2 insertions(+) (limited to 'lib') diff --git a/lib/bb/server/process.py b/lib/bb/server/process.py index 577c2503a..84f3a7541 100644 --- a/lib/bb/server/process.py +++ b/lib/bb/server/process.py @@ -139,6 +139,8 @@ class ProcessServer(Process, BaseImplServer): raise except Exception: logger.exception('Running idle function') + del self._idlefuns[function] + self.quit = True if nextsleep is not None: select.select(fds,[],[],nextsleep) -- cgit 1.2.3-korg