summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2014-10-26 00:14:56 +0200
committerAlexander Sulfrian <alexander@sulfrian.net>2014-10-26 01:31:49 +0200
commit12c2b9cd2bec17ffe09863abed97876b10da88ed (patch)
tree83531c005f83daee4e14bc86b9fd2bb90beee978
parentae2a2bdcaebf49b631865a6aa7d29c91654e9799 (diff)
downloadbcfg2-12c2b9cd2bec17ffe09863abed97876b10da88ed.tar.gz
bcfg2-12c2b9cd2bec17ffe09863abed97876b10da88ed.tar.bz2
bcfg2-12c2b9cd2bec17ffe09863abed97876b10da88ed.zip
fix keyboard interrupt during intial event handling
This removes some wildcard except handler because this drops some KeyboardInterrupt exceptions (for example previously a KeyboardInterrupt during the loading of the cache for Packages resulted in a fallback to file read).
-rw-r--r--src/lib/Bcfg2/Server/FileMonitor/__init__.py2
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Packages/Source.py2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/Bcfg2/Server/FileMonitor/__init__.py b/src/lib/Bcfg2/Server/FileMonitor/__init__.py
index 52c3906fa..7a5d901fd 100644
--- a/src/lib/Bcfg2/Server/FileMonitor/__init__.py
+++ b/src/lib/Bcfg2/Server/FileMonitor/__init__.py
@@ -234,6 +234,8 @@ class FileMonitor(Debuggable):
self.handles[event.requestID]))
try:
self.handles[event.requestID].HandleEvent(event)
+ except KeyboardInterrupt:
+ raise
except: # pylint: disable=W0702
err = sys.exc_info()[1]
LOGGER.error("Error in handling of event %s for %s: %s" %
diff --git a/src/lib/Bcfg2/Server/Plugins/Packages/Source.py b/src/lib/Bcfg2/Server/Plugins/Packages/Source.py
index d08c7d285..538215c85 100644
--- a/src/lib/Bcfg2/Server/Plugins/Packages/Source.py
+++ b/src/lib/Bcfg2/Server/Plugins/Packages/Source.py
@@ -364,7 +364,7 @@ class Source(Bcfg2.Server.Plugin.Debuggable): # pylint: disable=R0902
if os.path.exists(self.cachefile):
try:
self.load_state()
- except:
+ except (OSError, cPickle.UnpicklingError):
err = sys.exc_info()[1]
self.logger.error("Packages: Cachefile %s load failed: %s"
% (self.cachefile, err))