summaryrefslogtreecommitdiff
path: root/sql/wsrep_thd.cc
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2021-08-25 17:35:44 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2021-08-25 17:35:44 +0300
commit15b691b7bd69568f813367d244d3744a3a04ac22 (patch)
tree3de0d5cd442865574618959e1bd92666fb99c572 /sql/wsrep_thd.cc
parent8958f05e63f2cc059025c821b5cac8e54d8b6c91 (diff)
downloadmariadb-git-15b691b7bd69568f813367d244d3744a3a04ac22.tar.gz
After-merge fix f84e28c119b495da77e197f7cd18af4048fc3126
In a rebase of the merge, two preceding commits were accidentally reverted: commit 112b23969a30ba6441efa5e22a3017435febfa17 (MDEV-26308) commit ac2857a5fbf851d90171ac55f23385869ee6ba83 (MDEV-25717) Thanks to Daniele Sciascia for noticing this.
Diffstat (limited to 'sql/wsrep_thd.cc')
-rw-r--r--sql/wsrep_thd.cc15
1 files changed, 13 insertions, 2 deletions
diff --git a/sql/wsrep_thd.cc b/sql/wsrep_thd.cc
index d8f3d8959e0..2e02110d697 100644
--- a/sql/wsrep_thd.cc
+++ b/sql/wsrep_thd.cc
@@ -340,11 +340,20 @@ int wsrep_abort_thd(THD *bf_thd_ptr, THD *victim_thd_ptr, my_bool signal)
DBUG_RETURN(1);
}
-bool wsrep_bf_abort(const THD* bf_thd, THD* victim_thd)
+bool wsrep_bf_abort(THD* bf_thd, THD* victim_thd)
{
WSREP_LOG_THD(bf_thd, "BF aborter before");
WSREP_LOG_THD(victim_thd, "victim before");
- wsrep::seqno bf_seqno(bf_thd->wsrep_trx().ws_meta().seqno());
+
+ DBUG_EXECUTE_IF("sync.wsrep_bf_abort",
+ {
+ const char act[]=
+ "now "
+ "SIGNAL sync.wsrep_bf_abort_reached "
+ "WAIT_FOR signal.wsrep_bf_abort";
+ DBUG_ASSERT(!debug_sync_set_action(bf_thd,
+ STRING_WITH_LEN(act)));
+ };);
if (WSREP(victim_thd) && !victim_thd->wsrep_trx().active())
{
@@ -362,6 +371,8 @@ bool wsrep_bf_abort(const THD* bf_thd, THD* victim_thd)
}
bool ret;
+ wsrep::seqno bf_seqno(bf_thd->wsrep_trx().ws_meta().seqno());
+
if (wsrep_thd_is_toi(bf_thd))
{
ret= victim_thd->wsrep_cs().total_order_bf_abort(bf_seqno);