summaryrefslogtreecommitdiff
path: root/bin/sql_db.py
diff options
context:
space:
mode:
authorP. Christeas <p_christ@hol.gr>2008-12-18 18:49:25 +0200
committerP. Christeas <p_christ@hol.gr>2008-12-18 18:49:25 +0200
commit18b1a8a843c513dda615c9adcc0dbacf1e153049 (patch)
tree7c387729a0352a8aaaf54f18adefa8b609eb038e /bin/sql_db.py
parent66df224068eee395c24e3caff13cd606ac708361 (diff)
parentf510071f6b14a5534cadc0aced4dae67c60a2c79 (diff)
Merge commit 'origin/master' into mdv-gpl3-fwd
Conflicts: bin/addons/base/ir/ir_actions.py bin/netsvc.py bin/report/report_sxw.py bin/tools/translate.py bzr revid: p_christ@hol.gr-20081218164925-uarehzvo3ocu0x2w
Diffstat (limited to 'bin/sql_db.py')
-rw-r--r--bin/sql_db.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/bin/sql_db.py b/bin/sql_db.py
index ad3068a08e2..ba5e3457df5 100644
--- a/bin/sql_db.py
+++ b/bin/sql_db.py
@@ -140,6 +140,12 @@ class Cursor(object):
self.sql_into_log[res_into.group(1)][1] += mdt.now() - now
return res
+ def drop_view_if_exists(self, viewname):
+ self._obj.execute("select count(1) from pg_class where relkind=%s and relname=%s", ('v', viewname,))
+ if self._obj.fetchone()[0]:
+ self._obj.execute("DROP view %s" % (viewname,))
+ self._obj.commit()
+
def print_log(self):
def process(type):
sqllogs = {'from':self.sql_from_log, 'into':self.sql_into_log}
@@ -220,13 +226,15 @@ class PoolManager(object):
logger.notifyChannel('dbpool', netsvc.LOG_INFO, 'Connecting to %s' % (db_name,))
PoolManager._pools[db_name] = ConnectionPool(ThreadedConnectionPool(1, PoolManager.maxconn, PoolManager.dsn(db_name)), db_name)
except Exception, e:
- logger.notifyChannel('dbpool', netsvc.LOG_CRITICAL, 'Unable to connect to %s: %s' % (db_name, e.message))
+ logger.notifyChannel('dbpool', netsvc.LOG_ERROR, 'Unable to connect to %s: %s' %
+ (db_name, str(e)))
raise
return PoolManager._pools[db_name]
get = staticmethod(get)
def close(db_name):
if db_name in PoolManager._pools:
+ logger = netsvc.Logger()
logger.notifyChannel('dbpool', netsvc.LOG_INFO, 'Closing all connections to %s' % (db_name,))
PoolManager._pools[db_name].closeall()
del PoolManager._pools[db_name]