Bug #69020 | CRC32 not handled correctly + MySQL tables not CRC32 compliant | ||
---|---|---|---|
Submitted: | 21 Apr 2013 11:06 | Modified: | 31 May 2015 11:21 |
Reporter: | Louis at oracle | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: InnoDB storage engine | Severity: | S3 (Non-critical) |
Version: | 5.6.11 | OS: | Any |
Assigned to: | CPU Architecture: | Any | |
Tags: | crc32, strict |
[21 Apr 2013 11:06]
Louis at oracle
[21 Apr 2013 13:15]
MySQL Verification Team
The corruption reports are a known problem, but since it requires SUPER privs (that can do anything anyway) it didn't get much more attention than trying to document it. The limited platform support is also a known problem: http://bugs.mysql.com/bug.php?id=68036
[21 Apr 2013 13:15]
MySQL Verification Team
Bug 13630849 - CHANGING INNODB_CHECKSUM_ALGORITHM LEADS TO CORRUPTION/CRASHING Bug 13600064 - INNODB_CHECKSUM_ALGORITHM IS A DYNAMIC PARAMETER, CAN LEAD TO DB CORRUPTION
[21 Apr 2013 13:17]
MySQL Verification Team
The docs at http://dev.mysql.com/doc/refman/5.6/en/innodb-performance.html#innodb-crc32-checksum say "be sure that all the InnoDB data is created using the CRC32 ", of course that is not so easy because we ship the datadir already created on windows no-install builds .. further complicated by the fact you cannot simply remove the ibdata* without first converting `mysql`. tables from innodb to myisam.
[31 May 2015 11:21]
Erlend Dahl
[9 Apr 2015 10:55] Daniel T Price Fixed as of the upcoming 5.6.25, 5.7.8, 5.8.0 releases, and here's the changelog entry: The "strict_*" forms of "innodb_checksum_algorithm" settings ("strict_none", "strict_innodb", and "strict_crc32") caused the server to halt when a non-matching checksum was encountered, even if a non-matching checksum was valid. For example, with "innodb_checksum_algorithm=strict_crc32", encountering a valid "innodb" checksum would halt the server. Instead of halting the server, a message is now printed to the error log and the page is accepted as valid if it matches an "innodb", "crc32" or "none" checksum. The 5.6 and 5.7 innodb_checksum_algorithm description was also updated. Bug#20568464 MITIGATE THE STRICTNESS OF STRICT_* MODES OF INNODB_CHECKSUM_ALGORITHM