Skip to content
Permalink
Browse files

db manager: fix connection holding - idle in transaction (QGIS bug #7162

)
  • Loading branch information
imincik committed May 13, 2014
1 parent 60e1a9b commit 0d3e5e4b07e42b8be52f493ea662785dc8a878c0
@@ -53,6 +53,7 @@ def __init__(self, uri):

try:
self.connection = psycopg2.connect( self._connectionInfo().encode('utf-8') )
self.connection.set_isolation_level(psycopg2.extensions.ISOLATION_LEVEL_AUTOCOMMIT)
except self.connection_error_types(), e:
raise ConnectionError(e)

@@ -751,13 +752,9 @@ def runVacuum(self):

def runVacuumAnalyze(self, table):
""" run vacuum analyze on a table """
# vacuum analyze must be run outside transaction block - we have to change isolation level
self.connection.set_isolation_level(psycopg2.extensions.ISOLATION_LEVEL_AUTOCOMMIT)
sql = u"VACUUM ANALYZE %s" % self.quoteId(table)
c = self._execute(None, sql)
self._commit()
self.connection.set_isolation_level(psycopg2.extensions.ISOLATION_LEVEL_READ_COMMITTED)


def addTableColumn(self, table, field_def):
""" add a column to table """
@@ -43,8 +43,7 @@ def _createCursor(self):
fields_txt = u", ".join(self.fields)
table_txt = self.db.quoteId( (self.table.schemaName(), self.table.name) )

# create named cursor and run query
self.cursor = self.db._get_cursor(self.table.name)
self.cursor = self.db._get_cursor()
sql = u"SELECT %s FROM %s" % (fields_txt, table_txt)
self.db._execute(self.cursor, sql)

0 comments on commit 0d3e5e4

Please sign in to comment.
You can’t perform that action at this time.