-
Jan Lindström authored
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.
7e71dfa9