diff options
| author | Aymeric Augustin <aymeric.augustin@m4x.org> | 2014-03-23 23:09:26 +0100 |
|---|---|---|
| committer | Aymeric Augustin <aymeric.augustin@m4x.org> | 2014-04-10 23:21:55 +0200 |
| commit | 746cded010c7ba3e2bf2df4cde32dcc9b75cb0d3 (patch) | |
| tree | 81446fca6ffc551660c32f0a177099dd1b227bf6 /django/db/backends/postgresql_psycopg2/base.py | |
| parent | 9afedbef4207a86d17d9525664bcd06f403cc6f9 (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/base.py')
| -rw-r--r-- | django/db/backends/postgresql_psycopg2/base.py | 15 |
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): """ |
