mirror of https://github.com/MariaDB/server
Browse Source
Problem was that thread was holding lock_sys.wait_mutex when streaming replication transaction rollback was handled and in wsrep-lib requests THD::LOCK_thd_kill mutex causing wrong mutex usage (thd->reset_globals()). Fix is to remove streaming replication rollback handling from Deadlock::report() i.e. wsrep_handle_SR_rollback call. Purpose of Deadloc::report() is to find a cycle in the waits-for graph if exists, report it, mark victim transaction as deadlock victim and release locks it is waiting for. Actual streaming replication rollback that can take longer time can be handled later at trx_t::rollback where lock_sys.wait_mutex is not held. Signed-off-by: Julius Goryavsky <julius.goryavsky@mariadb.com>pull/3983/head
committed by
Julius Goryavsky
1 changed files with 0 additions and 4 deletions
Loading…
Reference in new issue