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

innodb buffer pool - lazy initialization

    XMLWordPrintable

    Details

      Description

      The initialization of innodb buffer pool chunks/blocks on allocation has a number of consequences.

      • on very large memory systems this can take significant time
      • the initialization of data in the allocated memory forces this to paged into the process resulting in a real allocation out of the available OS space.

      The second becomes a problem when a large number of processes are on the system, potentially a large number of mariadb instances all competing for memory. A claim on use approach leaves more RAM available for other processes if mariadb doesn't end up using it.

      Sizing innodb buffer pool is a hard task so lets try to make it easier, or just less consequences if its wrong.

      The proposal is buf_pool_t::chunk_t::create removed the initialization (buf_block_init) and this becomes detected when blocks/chunks are used and then initialized there.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              danblack Daniel Black
              Reporter:
              danblack Daniel Black
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Dates

                Created:
                Updated:

                  Git Integration