diff options
author | Marko Kreen | 2011-12-08 16:15:28 +0000 |
---|---|---|
committer | Marko Kreen | 2011-12-08 16:33:16 +0000 |
commit | b1e3350a364282b22c69236af6a2b5654cae8b28 (patch) | |
tree | 20691aa41e602b8cc83a1a0acc7839da4439a47c /python/skytools/scripting.py | |
parent | 8227d443103bf209d7a5d60b8dd9cabe8452ac55 (diff) |
skytools: seems psycopg2 isolation constants do change
Psycopg 2.4.2 moved them around.
Stop hard-coding them, instead import from psycopg2.externsions
Also have a symbol for repeatable read.
Diffstat (limited to 'python/skytools/scripting.py')
-rw-r--r-- | python/skytools/scripting.py | 23 |
1 files changed, 6 insertions, 17 deletions
diff --git a/python/skytools/scripting.py b/python/skytools/scripting.py index 558998c2..ad6a2fd6 100644 --- a/python/skytools/scripting.py +++ b/python/skytools/scripting.py @@ -18,7 +18,7 @@ except ImportError: __pychecker__ = 'no-badexcept' __all__ = ['BaseScript', 'signal_pidfile', 'UsageError', 'daemonize', - 'DBScript', 'I_AUTOCOMMIT', 'I_READ_COMMITTED', 'I_SERIALIZABLE'] + 'DBScript'] class UsageError(Exception): """User induced error.""" @@ -637,17 +637,6 @@ class BaseScript(object): #: how old connections need to be closed DEF_CONN_AGE = 20*60 # 20 min -#: isolation level not set -I_DEFAULT = -1 - -#: isolation level constant for AUTOCOMMIT -I_AUTOCOMMIT = 0 -#: isolation level constant for READ COMMITTED -I_READ_COMMITTED = 1 -#: isolation level constant for SERIALIZABLE -I_SERIALIZABLE = 2 - - class DBScript(BaseScript): """Base class for database scripts. @@ -708,7 +697,7 @@ class DBScript(BaseScript): elif params.get('autocommit', 0): params['isolation_level'] = 0 elif not 'isolation_level' in params: - params['isolation_level'] = I_READ_COMMITTED + params['isolation_level'] = skytools.I_READ_COMMITTED if not 'max_age' in params: params['max_age'] = max_age @@ -933,7 +922,7 @@ class DBCachedConn(object): self.conn_time = 0 self.max_age = max_age self.autocommit = -1 - self.isolation_level = I_DEFAULT + self.isolation_level = -1 self.verbose = verbose self.setup_func = setup_func self.listen_channel_list = [] @@ -943,11 +932,11 @@ class DBCachedConn(object): return None return self.conn.cursor().fileno() - def get_connection(self, isolation_level = I_DEFAULT, listen_channel_list = []): + def get_connection(self, isolation_level = -1, listen_channel_list = []): # default isolation_level is READ COMMITTED if isolation_level < 0: - isolation_level = I_READ_COMMITTED + isolation_level = skytools.I_READ_COMMITTED # new conn? if not self.conn: @@ -978,7 +967,7 @@ class DBCachedConn(object): for ch in new_clist: if ch not in self.listen_channel_list: curs.execute("LISTEN %s" % skytools.quote_ident(ch)) - if self.isolation_level != I_AUTOCOMMIT: + if self.isolation_level != skytools.I_AUTOCOMMIT: self.conn.commit() self.listen_channel_list = new_clist[:] |