summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAymeric Augustin <aymeric.augustin@m4x.org>2014-04-23 21:34:57 +0200
committerAymeric Augustin <aymeric.augustin@m4x.org>2014-04-23 21:44:36 +0200
commite74d2183c28467aefc0b87e3fa6d405dbfdea82c (patch)
treeb9acc39f59302242ede462b992bca89fce900682
parent3a435a057c691bf9d5936766f54c5f9bd01be176 (diff)
Wrapped migrations in a transaction only on DBs with transactional DDL.
-rw-r--r--django/db/backends/schema.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/django/db/backends/schema.py b/django/db/backends/schema.py
index 63b0725e22..d187c48046 100644
--- a/django/db/backends/schema.py
+++ b/django/db/backends/schema.py
@@ -71,14 +71,16 @@ class BaseDatabaseSchemaEditor(object):
def __enter__(self):
self.deferred_sql = []
- atomic(self.connection.alias, self.connection.features.can_rollback_ddl).__enter__()
+ if self.connection.features.can_rollback_ddl:
+ atomic(self.connection.alias).__enter__()
return self
def __exit__(self, exc_type, exc_value, traceback):
if exc_type is None:
for sql in self.deferred_sql:
self.execute(sql)
- atomic(self.connection.alias, self.connection.features.can_rollback_ddl).__exit__(exc_type, exc_value, traceback)
+ if self.connection.features.can_rollback_ddl:
+ atomic(self.connection.alias).__exit__(exc_type, exc_value, traceback)
# Core utility functions