Skip to content
Permalink
Browse files
Merge pull request #1348 from imincik/db_manager_connection_holding
db manager: fix connection holding - idle in transaction (QGIS bug #7162...
  • Loading branch information
brushtyler committed May 19, 2014
2 parents aa70851 + 0d3e5e4 commit d522059524770ee80402400494f44436317c15b1
Showing with 2 additions and 6 deletions.
  1. +1 −4 python/plugins/db_manager/db_plugins/postgis/connector.py
  2. +1 −2 python/plugins/db_manager/db_plugins/postgis/data_model.py
@@ -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 d522059

Please sign in to comment.