MariaDB 10.6 SUX locks for improved performance

Abstract

Some original InnoDB design choices from 1990s have become obsolete. Native mutexes and condition variables usually ‘just work’. In special cases, a small futex-based mutex is cache-friendlier.

InnoDB included a custom implementation of rw-locks that support recursion and ownership transfer. We replaced it with native RW-lock where applicable. A refactored Shared/Update/eXclusive latch is used for index and page descriptors.

The transactional lock subsystem was rewritten for scalability.

Other links

Date and time

  • Wednesday 6 October, 15.50 – 16.45 CEST (UTC +2)
  • 9:50am – 10:45am New York time,
  • 21:50 – 22:45 Beijing/Singapore time

Presenters

Marko Mäkelä
Software developer – MariaDB Corporation

Marko Mäkelä holds a doctoral degree in theoretical computer science. He has worked on the InnoDB storage engine since 2003. He joined MariaDB Corporation in 2016 as Lead Developer InnoDB. He loves to tinker with low-level code, old computers, embedded systems, and bicycles.