summaryrefslogtreecommitdiff
path: root/sql/transaction.cc
diff options
context:
space:
mode:
Diffstat (limited to 'sql/transaction.cc')
-rw-r--r--sql/transaction.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/sql/transaction.cc b/sql/transaction.cc
index 7cb6e132932..72b7f8e6fe4 100644
--- a/sql/transaction.cc
+++ b/sql/transaction.cc
@@ -614,6 +614,9 @@ bool trans_savepoint(THD *thd, LEX_STRING name)
if (thd->transaction.xid_state.check_has_uncommitted_xa())
DBUG_RETURN(TRUE);
+ if (WSREP_ON)
+ wsrep_register_hton(thd, thd->in_multi_stmt_transaction_mode());
+
sv= find_savepoint(thd, name);
if (*sv) /* old savepoint of the same name exists */
@@ -690,6 +693,9 @@ bool trans_rollback_to_savepoint(THD *thd, LEX_STRING name)
if (thd->transaction.xid_state.check_has_uncommitted_xa())
DBUG_RETURN(TRUE);
+ if (WSREP_ON)
+ wsrep_register_hton(thd, thd->in_multi_stmt_transaction_mode());
+
/**
Checking whether it is safe to release metadata locks acquired after
savepoint, if rollback to savepoint is successful.