diff options
author | Alexander Sulfrian <alexander@sulfrian.net> | 2014-02-28 17:35:56 +0100 |
---|---|---|
committer | Alexander Sulfrian <alexander@sulfrian.net> | 2014-02-28 17:35:56 +0100 |
commit | 70e5771ff37d2bc345605a82020b97429fc04908 (patch) | |
tree | 3666397abe158129fc0a365259bcf5c5c190b049 | |
parent | 406ade1aa8f96fd976cfec452eae7d6e811b4c1f (diff) | |
parent | ab3748ee1bdc3ed85fc721dbfb73cf82bdccdda9 (diff) | |
download | bcfg2-70e5771ff37d2bc345605a82020b97429fc04908.tar.gz bcfg2-70e5771ff37d2bc345605a82020b97429fc04908.tar.bz2 bcfg2-70e5771ff37d2bc345605a82020b97429fc04908.zip |
Merge remote branch 'upstream/reporting-close-db-connxn' into splinev1.3.4-spline3
* upstream/reporting-close-db-connxn:
Reporting: properly close db connection
-rw-r--r-- | src/lib/Bcfg2/Reporting/Collector.py | 3 | ||||
-rw-r--r-- | src/lib/Bcfg2/Reporting/Storage/DjangoORM.py | 7 |
2 files changed, 6 insertions, 4 deletions
diff --git a/src/lib/Bcfg2/Reporting/Collector.py b/src/lib/Bcfg2/Reporting/Collector.py index 0493c907b..2859eca28 100644 --- a/src/lib/Bcfg2/Reporting/Collector.py +++ b/src/lib/Bcfg2/Reporting/Collector.py @@ -162,9 +162,6 @@ class ReportingCollector(object): pass if self.storage: self.storage.shutdown() - from django import db - self.logger.info("%s: Closing database connection" % self.name) - db.close_connection() def reap_children(self): """Join any non-live threads""" diff --git a/src/lib/Bcfg2/Reporting/Storage/DjangoORM.py b/src/lib/Bcfg2/Reporting/Storage/DjangoORM.py index ef1e92103..e2e565b1d 100644 --- a/src/lib/Bcfg2/Reporting/Storage/DjangoORM.py +++ b/src/lib/Bcfg2/Reporting/Storage/DjangoORM.py @@ -18,6 +18,7 @@ from django.core import management from django.core.exceptions import ObjectDoesNotExist, MultipleObjectsReturned from django.db.models import FieldDoesNotExist from django.core.cache import cache +from django import db #Used by GetCurrentEntry import difflib @@ -370,6 +371,11 @@ class DjangoORM(StorageBase): except: self.logger.error("Failed to import interaction: %s" % traceback.format_exc().splitlines()[-1]) + finally: + self.logger.info("%s: Closing database connection" % + self.__class__.__name__) + db.close_connection() + def validate(self): """Validate backend storage. Should be called once when loaded""" @@ -451,4 +457,3 @@ class DjangoORM(StorageBase): else: ret.append(None) return ret - |