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

Excessive mutex contention in DeadlockChecker::check_and_resolve()

    XMLWordPrintable

    Details

      Description

      The function DeadlockChecker::check_and_resolve() is being executed while continuously holding lock_sys.mutex. Moving the deadlock detection to lock_wait() (which was refactored in MDEV-24671) will allow the check to release lock_sys.mutex between search iterations.

      It may also be possible to avoid holding lock_sys.mutex altogether, and instead only use lock_sys.wait_mutex and various trx_t::mutex.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              marko Marko Mäkelä
              Reporter:
              marko Marko Mäkelä
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: