summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--yoyo/backends/base.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/yoyo/backends/base.py b/yoyo/backends/base.py
index 3c1f9a7..4f95a66 100644
--- a/yoyo/backends/base.py
+++ b/yoyo/backends/base.py
@@ -237,9 +237,13 @@ class DatabaseBackend:
table_name = "yoyo_tmp_{}".format(utils.get_random_string(10))
table_name_quoted = self.quote_identifier(table_name)
sql = self.create_test_table_sql.format(table_name_quoted=table_name_quoted)
- with self.transaction() as t:
- self.execute(sql)
- t.rollback()
+ try:
+ with self.transaction() as t:
+ self.execute(sql)
+ t.rollback()
+ except self.DatabaseError:
+ return False
+
try:
with self.transaction():
self.execute("DROP TABLE {}".format(table_name_quoted))