mariadb/storage/xtradb/lock
Jan Lindström 7e71dfa9f5 MDEV-6933: Spurious lock_wait_timeout_thread wakeup in lock_wait_suspend_thread()
Merged Facebooks commit 6e06bbfa315ffb97d713dd6e672d6054036ddc21
authored by Inaam Rana from https://github.com/facebook/mysql-5.6.

Fixes MySQL bug http://bugs.mysql.com/bug.php?id=72123

lock_timeout thread works in a tight loop waking up every second
and checking for lock_wait_timeout. In addition, when a mysql
thread is forced to wait on a lock, it signals the lock_timeout thread
as well. This call is not required. In a heavily contended workload
each thread going to wait will signal the lock_timeout thread making
it work all the time. As lock_timeout thread scans the array of
waiting threads under lock_sys::wait_mutex which is already very
hot in contneded loads, these extra scans can cause significanct
performance regression.

Also, in various codepaths lock_timeout thread is signalled where
actual intention was to signal the innodb monitor thread.
2014-10-24 17:56:04 +03:00
..
lock0iter.cc Percona-Server-5.6.14-rel62.0 merge 2013-12-22 17:06:50 +01:00
lock0lock.cc Fix compile failure in non-debug build. 2014-07-10 14:24:53 +02:00
lock0wait.cc MDEV-6933: Spurious lock_wait_timeout_thread wakeup in lock_wait_suspend_thread() 2014-10-24 17:56:04 +03:00