Commit 093227c0 authored by mkaruza's avatar mkaruza Committed by Jan Lindström

MDEV-25410 Assertion `state_ == s_exec' failed - mysqld got signal 6

Victim threads which are in currently in process of aborting or already
aborted should be skipped for another kill process.
Reviewed-by: default avatarJan Lindström <jan.lindstrom@mariadb.com>
parent 386ac12a
......@@ -349,6 +349,15 @@ bool wsrep_bf_abort(const THD* bf_thd, THD* victim_thd)
if (WSREP(victim_thd) && !victim_thd->wsrep_trx().active())
{
WSREP_DEBUG("wsrep_bf_abort, BF abort for non active transaction");
switch (victim_thd->wsrep_trx().state())
{
case wsrep::transaction::s_aborting: /* fall through */
case wsrep::transaction::s_aborted:
WSREP_DEBUG("victim thd is already aborted or in aborting state.");
return false;
default:
break;
}
wsrep_start_transaction(victim_thd, victim_thd->wsrep_next_trx_id());
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment