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

Avoid writing freed InnoDB pages

    XMLWordPrintable

    Details

      Description

      When a InnoDB data file page is freed, its contents becomes garbage, and any storage allocated in the data file is wasted.

      MariaDB 10.4 introduced an InnoDB redo log record MLOG_INIT_FREE_PAGE for marking pages as freed. In MDEV-12353 (MariaDB 10.5.2), that record was replaced with FREE_PAGE. This record could be treated as no-op, or we can punch a hole for page_compressed=1 tables.

      If innodb_immediate_scrub_data_uncompressed is set, we should initialize the page with zeros. This will replace some of the non-working scrubbing logic (MDEV-8139). The scrubbing will be fixed further in MDEV-8139.

      The following parameters will be deprecated and ignored and the problematic ‘background scrubbing’ code removed:

      • innodb-background-scrub-data-uncompressed
      • innodb-background-scrub-data-compressed
      • innodb-background-scrub-data-interval
      • innodb-background-scrub-data-check-interval

      For page_compressed tables the freed page will be hole-punched

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              thiru Thirunarayanan Balathandayuthapani
              Reporter:
              marko Marko Mäkelä
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: