summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Server/Core.py
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2014-02-18 08:53:35 -0500
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2014-02-18 08:54:12 -0500
commit2de76a7b44c148f2ce9e851060c16513581174ff (patch)
treecec6809ccb30b8ab40c5d855dbc1eac22d03ca9b /src/lib/Bcfg2/Server/Core.py
parent48913262d9f4f716e9736bad3928eacbaeb4b774 (diff)
downloadbcfg2-2de76a7b44c148f2ce9e851060c16513581174ff.tar.gz
bcfg2-2de76a7b44c148f2ce9e851060c16513581174ff.tar.bz2
bcfg2-2de76a7b44c148f2ce9e851060c16513581174ff.zip
ensure that DB connections are always closed at thread/process exit
Diffstat (limited to 'src/lib/Bcfg2/Server/Core.py')
-rw-r--r--src/lib/Bcfg2/Server/Core.py18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/lib/Bcfg2/Server/Core.py b/src/lib/Bcfg2/Server/Core.py
index 587afefe0..cc9270a17 100644
--- a/src/lib/Bcfg2/Server/Core.py
+++ b/src/lib/Bcfg2/Server/Core.py
@@ -414,7 +414,7 @@ class BaseCore(object):
:type plugin: string
:returns: None
"""
- self.logger.debug("Loading plugin %s" % plugin)
+ self.logger.debug("%s: Loading plugin %s" % (self.name, plugin))
try:
mod = getattr(__import__("Bcfg2.Server.Plugins.%s" %
(plugin)).Server.Plugins, plugin)
@@ -450,14 +450,18 @@ class BaseCore(object):
def shutdown(self):
""" Perform plugin and FAM shutdown tasks. """
- self.logger.info("Shutting down core...")
+ self.logger.info("%s: Shutting down core..." % self.name)
if not self.terminate.isSet():
self.terminate.set()
- self.fam.shutdown()
- self.logger.info("FAM shut down")
- for plugin in list(self.plugins.values()):
- plugin.shutdown()
- self.logger.info("All plugins shut down")
+ self.fam.shutdown()
+ self.logger.info("%s: FAM shut down" % self.name)
+ for plugin in list(self.plugins.values()):
+ plugin.shutdown()
+ self.logger.info("%s: All plugins shut down" % self.name)
+ if self._database_available:
+ from django import db
+ self.logger.info("%s: Closing database connection" % self.name)
+ db.close_connection()
@property
def metadata_cache_mode(self):