Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-6933

Spurious lock_wait_timeout_thread wakeup in lock_wait_suspend_thread()

    Details

      Description

      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.

        Attachments

          Issue links

            Activity

              People

              • Assignee:
                jplindst Jan Lindström
                Reporter:
                jplindst Jan Lindström
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: