Details
-
Task
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
None
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
- blocks
-
MDEV-11916 Page compression - use smaller writes, avoid trimming/zeroing rest of the page if possible
-
- Open
-
- causes
-
MDEV-23986 [ERROR] [FATAL] InnoDB: Page ... name ... page_type ... key_version 1 lsn ... compressed_len ...
-
- Closed
-
- relates to
-
MDEV-18958 InnoDB buffer pool load is opening an inaccessible data file
-
- Stalled
-
-
MDEV-19534 Make innodb_checksum_algorithm=full_crc32 by default, and remove innodb_checksums
-
- Closed
-
-
MDEV-20588 Mariabackup incorrectly thinks a compressed table is corrupted
-
- Closed
-
-
MDEV-23199 page_compression flag is missing for full_crc32 tablespace
-
- Closed
-
-
MDEV-27091 log_phys_t::apply_status log_phys_t::apply(const buf_block_t&, uint16_t&) const: Assertion `mach_read_from_4(frame + 34U) == block.page.id().space()' failed during CrashRecovery
-
- Open
-
-
MDEV-28168 Compressed page is read for non-compressed space during recovery
-
- Confirmed
-
-
MDEV-12026 Support encrypted SPATIAL INDEX
-
- Closed
-
Activity
Field | Original Value | New Value |
---|---|---|
Description |
Allow compressed page in full_crc32 format. The format of full_crc32 is also follows:
i) Set the MSB of FIL_PAGE_TYPE as 1 for compressed page ii) Allocate the 10 bits for storing compressed length FSP_SPACE_FLAGS already contains COMPRESSED_PAGE_ALGORITHM. So that InnoDB shouldn't allow the tablespace to open if particular algorithm is not supported. |
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}} |
Fix Version/s | 10.4 [ 22408 ] | |
Fix Version/s | 10.4.4 [ 23310 ] |
Status | Open [ 1 ] | In Progress [ 3 ] |
Assignee | Thirunarayanan Balathandayuthapani [ thiru ] | Marko Mäkelä [ marko ] |
Status | In Progress [ 3 ] | In Review [ 10002 ] |
Link |
This issue relates to |
Status | In Review [ 10002 ] | Stalled [ 10000 ] |
issue.field.resolutiondate | 2019-03-18 12:10:12.0 | 2019-03-18 12:10:12.075 |
Fix Version/s | 10.4.4 [ 23310 ] | |
Fix Version/s | 10.4 [ 22408 ] | |
Resolution | Fixed [ 1 ] | |
Status | Stalled [ 10000 ] | Closed [ 6 ] |
Link | This issue relates to MDEV-18958 [ MDEV-18958 ] |
Link | This issue blocks MDEV-11916 [ MDEV-11916 ] |
Link |
This issue relates to |
Link |
This issue relates to |
Link |
This issue causes |
Link |
This issue relates to |
Link | This issue relates to MDEV-27091 [ MDEV-27091 ] |
Workflow | MariaDB v3 [ 92699 ] | MariaDB v4 [ 133870 ] |
Link | This issue relates to MDEV-28168 [ MDEV-28168 ] |
patch is in bb-10.4-
MDEV-12026.