summaryrefslogtreecommitdiff
path: root/django/db/backends/postgresql_psycopg2
diff options
context:
space:
mode:
authorAymeric Augustin <aymeric.augustin@m4x.org>2014-03-23 23:09:26 +0100
committerAymeric Augustin <aymeric.augustin@m4x.org>2014-04-10 23:21:55 +0200
commit746cded010c7ba3e2bf2df4cde32dcc9b75cb0d3 (patch)
tree81446fca6ffc551660c32f0a177099dd1b227bf6 /django/db/backends/postgresql_psycopg2
parent9afedbef4207a86d17d9525664bcd06f403cc6f9 (diff)
[1.6.x] Fixed #22321 -- Wrapped exceptions in _set_autocommit.
Refs #21202. Backport of 3becac84 from master
Diffstat (limited to 'django/db/backends/postgresql_psycopg2')
-rw-r--r--django/db/backends/postgresql_psycopg2/base.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/django/db/backends/postgresql_psycopg2/base.py b/django/db/backends/postgresql_psycopg2/base.py
index 23da101d01..d44bb5cdd9 100644
--- a/django/db/backends/postgresql_psycopg2/base.py
+++ b/django/db/backends/postgresql_psycopg2/base.py
@@ -169,14 +169,15 @@ class DatabaseWrapper(BaseDatabaseWrapper):
self.connection.set_isolation_level(isolation_level)
def _set_autocommit(self, autocommit):
- if self.psycopg2_version >= (2, 4, 2):
- self.connection.autocommit = autocommit
- else:
- if autocommit:
- level = psycopg2.extensions.ISOLATION_LEVEL_AUTOCOMMIT
+ with self.wrap_database_errors:
+ if self.psycopg2_version >= (2, 4, 2):
+ self.connection.autocommit = autocommit
else:
- level = self.isolation_level
- self.connection.set_isolation_level(level)
+ if autocommit:
+ level = psycopg2.extensions.ISOLATION_LEVEL_AUTOCOMMIT
+ else:
+ level = self.isolation_level
+ self.connection.set_isolation_level(level)
def check_constraints(self, table_names=None):
"""