[dak/master 1/3] Give slightly nicer error message on db conn failure
Signed-off-by: Mark Hymers <mhy@debian.org>
---
daklib/dbconn.py | 24 +++++++++++++++---------
1 files changed, 15 insertions(+), 9 deletions(-)
diff --git a/daklib/dbconn.py b/daklib/dbconn.py
index 6d954c8..7e9ff53 100755
--- a/daklib/dbconn.py
+++ b/daklib/dbconn.py
@@ -3664,15 +3664,21 @@ class DBConn(object):
sqlalchemy.dialects.postgresql.base.dialect = PGDialect_psycopg2_dak
- self.db_pg = create_engine(connstr, **engine_args)
- self.db_meta = MetaData()
- self.db_meta.bind = self.db_pg
- self.db_smaker = sessionmaker(bind=self.db_pg,
- autoflush=True,
- autocommit=False)
-
- self.__setuptables()
- self.__setupmappers()
+ try:
+ self.db_pg = create_engine(connstr, **engine_args)
+ self.db_meta = MetaData()
+ self.db_meta.bind = self.db_pg
+ self.db_smaker = sessionmaker(bind=self.db_pg,
+ autoflush=True,
+ autocommit=False)
+
+ self.__setuptables()
+ self.__setupmappers()
+
+ except OperationalError, e:
+ import utils
+ utils.fubar("Cannot connect to database (%s)" % str(e))
+
self.pid = os.getpid()
def session(self, work_mem = 0):
--
1.7.2.5
Reply to: