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

Support FULL_CRC32 for compressed pages.

    XMLWordPrintable

    Details

      Description

      Allow compressed page in full_crc32 format. The format of full_crc32 is also follows:

      • Set the MSB of FIL_PAGE_TYPE as 1 for compressed page
      • Allocate the 10 bits for storing compressed (length + (4 + 63)) / 64. The 4 extra bytes are for storing the checksum over the compressed (and optionally encrypted) stream. The checksum would be stored in the last 4 bytes of a 64-byte aligned block.

      FSP_SPACE_FLAGS already contains COMPRESSED_PAGE_ALGORITHM. So that InnoDB shouldn't allow the tablespace to open if particular algorithm is not supported.

      The following should be fixed as part of this task:

      • ha_innobase::check_if_supported_inplace_alter() must allow instant change of page_compressed=1
      • buf_dblwr_check_page_lsn() must evaluate fil_space_t::full_crc32()
      • More use of #define FIL_* or #define FSP_ should be replaced with inline member functions of fil_space_t

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                Created:
                Updated:
                Resolved: