diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2021-08-26 10:20:17 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2021-08-26 10:20:17 +0300 |
commit | cc4e20e56f1e558a23ef15be5819fde0f2dfd284 (patch) | |
tree | a244dd8a3bea772c997a02f8c48fef1426a39181 /sql/wsrep_thd.cc | |
parent | ded27d28968e6e47e901b9472001550ec3dbfdd1 (diff) | |
parent | 87ff4ba7c874ccb8a5b1105571569a94ca959d53 (diff) | |
download | mariadb-git-cc4e20e56f1e558a23ef15be5819fde0f2dfd284.tar.gz |
Merge 10.5 into 10.6
Diffstat (limited to 'sql/wsrep_thd.cc')
-rw-r--r-- | sql/wsrep_thd.cc | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/sql/wsrep_thd.cc b/sql/wsrep_thd.cc index e4e598d472a..bccd1a4f8b3 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()) { @@ -368,6 +377,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); |