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

buf_read_page() should return a buffer-fixed block

    XMLWordPrintable

Details

    • Related to performance
    • When a page needs to be read into the InnoDB buffer pool, concurrent access to the page will avoid some hash table lookup and busy waiting.
    • Q4/2025 Server Maintenance

    Description

      Every caller of buf_read_page() is expecting to gain access to the block. If that function returned a buffer-fixed block descriptor, we could avoid some busy work, such as a redundant lookup of buf_pool.page_hash.

      This change was initially part of the 11.4 development version of MDEV-34431, but there are some issues with it, apparently some hangs due to not released buffer-fix under some special circumstances. In my own performance testing yesterday, I observed a 4% performance improvement in an I/O bound read-write workload where the active working set does not fit in the buffer pool.

      Attachments

        Issue Links

          Activity

            People

              marko Marko Mäkelä
              marko Marko Mäkelä
              Marko Mäkelä Marko Mäkelä
              Thirunarayanan Balathandayuthapani Thirunarayanan Balathandayuthapani
              Saahil Alam Saahil Alam
              Votes:
              1 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: