diff options
author | Jan Lindström <jan.lindstrom@mariadb.com> | 2020-05-14 09:17:14 +0300 |
---|---|---|
committer | Jan Lindström <jan.lindstrom@mariadb.com> | 2020-05-15 09:04:02 +0300 |
commit | 523d67a272ca37bf6c1972bae09f59d72a78d99c (patch) | |
tree | 080619db9c8cd5266d28540685a241b6068a0c5d /mysql-test/suite/galera/t/galera_bf_lock_wait.cnf | |
parent | 3bfe305c5cd678a8563f7a76d6ed59095129007e (diff) | |
download | mariadb-git-523d67a272ca37bf6c1972bae09f59d72a78d99c.tar.gz |
MDEV-22494 : Galera assertion lock_sys.mutex.is_owned() at lock_trx_handle_wait_low
Problem was that trx->lock.was_chosen_as_wsrep_victim variable was
not set back to false after it was set true.
wsrep_thd_bf_abort
Add assertions for correct mutex status and take necessary
mutexes before calling thd->awake_no_mutex().
innobase_rollback_trx()
Reset trx->lock.was_chosen_as_wsrep_victim
wsrep_abort_slave_trx()
Removed unused function.
wsrep_innobase_kill_one_trx()
Added function comment, removed unnecessary parameters
and added debug assertions to enforce correct usage. Added
more debug output to help out on error analysis.
wsrep_abort_transaction()
Added debug assertions and removed unused variables.
trx0trx.h
Removed assert_trx_is_free macro and replaced it with
assert_freed() member function.
trx_create()
Use above assert_free() and initialize wsrep variables.
trx_free()
Use assert_free()
trx_t::commit_in_memory()
Reset lock.was_chosen_as_wsrep_victim
trx_rollback_for_mysql()
Reset trx->lock.was_chosen_as_wsrep_victim
Add test case galera_bf_kill
Diffstat (limited to 'mysql-test/suite/galera/t/galera_bf_lock_wait.cnf')
-rw-r--r-- | mysql-test/suite/galera/t/galera_bf_lock_wait.cnf | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/mysql-test/suite/galera/t/galera_bf_lock_wait.cnf b/mysql-test/suite/galera/t/galera_bf_lock_wait.cnf new file mode 100644 index 00000000000..e68f891792c --- /dev/null +++ b/mysql-test/suite/galera/t/galera_bf_lock_wait.cnf @@ -0,0 +1,7 @@ +!include ../galera_2nodes.cnf + +[mysqld.1] +wsrep-debug=SERVER + +[mysqld.2] +wsrep-debug=SERVER |