mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
MDEV-5262, MDEV-5914, MDEV-5941, MDEV-6020: Deadlocks during parallel replication causing replication to fail.
After-review changes. For this patch in 10.0, we do not introduce a new public storage engine API, we just fix the InnoDB/XtraDB issues. In 10.1, we will make a better public API that can be used for all storage engines (MDEV-6429). Eliminate the background thread that did deadlock kills asynchroneously. Instead, we ensure that the InnoDB/XtraDB code can handle doing the kill from inside the deadlock detection code (when thd_report_wait_for() needs to kill a later thread to resolve a deadlock). (We preserve the part of the original patch that introduces dedicated mutex and condition for the slave init thread, to remove the abuse of LOCK_thread_count for start/stop synchronisation of the slave init thread).
This commit is contained in:
@ -1358,7 +1358,7 @@ enum enum_thread_type
|
||||
SYSTEM_THREAD_EVENT_SCHEDULER= 16,
|
||||
SYSTEM_THREAD_EVENT_WORKER= 32,
|
||||
SYSTEM_THREAD_BINLOG_BACKGROUND= 64,
|
||||
SYSTEM_THREAD_SLAVE_BACKGROUND= 128,
|
||||
SYSTEM_THREAD_SLAVE_INIT= 128,
|
||||
};
|
||||
|
||||
inline char const *
|
||||
|
Reference in New Issue
Block a user