Spurious lock_wait_timeout_thread wakeup in lock_wait_suspend_thread()

Bug #1704267 reported by Laurynas Biveinis on 2017-07-14
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MySQL Server
Unknown
Unknown
Percona Server moved to https://jira.percona.com/projects/PS
Status tracked in 5.7
5.5
Won't Fix
Wishlist
Unassigned
5.6
Won't Fix
Wishlist
Unassigned
5.7
Fix Released
Wishlist
Laurynas Biveinis

Bug Description

This is a copy of https://bugs.mysql.com/bug.php?id=72123:

"When a query thread has to wait on a rec or table lock it goes to sleep by calling lock_wait_suspend_thread(). In this function before starting the wait we do the following:

        /* Wake the lock timeout monitor thread, if it is suspended */

        os_event_set(lock_sys->timeout_event);

This is totally unnecessary because lock timeout monitor thread wakes up every second to release waiting threads. There is no need to wake it up when we are going to start a wait."

and

"On a related note, there are various other wakeup calls for lock_monitor thread in the code. These calls are actually meant for srv_monitor_thread as they relate to printing monitor output and lock monitor has nothing to do with printing stuff."

tags: added: innodb performance upstream

Percona now uses JIRA for bug reports so this bug report is migrated to: https://jira.percona.com/browse/PS-2504

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.