-
Debarun Banerjee authored
Problem : --------- When a page checksum validation fails for default crc32, we always try computing legacy big endian crc32 checksum first and then the innodb checksum. While upgrading from 5.6 (default checksum innodb) to 5.7 (default checksum crc32), this would cause repeated evaluation of the legacy checksum. This issue is there for both compressed and uncompressed pages. Solution : ---------- Since it is likely that all the pages would have same checksum algorithm, we optimize the order dynamically. 1. By default attempt innodb checksum after crc32 2. Once we find a page with legacy big endian crc32 checksum we switch the order and attempt big endian checksum first. Reviewed-by:
Jimmy Yang <Jimmy.Yang@oracle.com> RB: 11403
Debarun Banerjee authoredProblem : --------- When a page checksum validation fails for default crc32, we always try computing legacy big endian crc32 checksum first and then the innodb checksum. While upgrading from 5.6 (default checksum innodb) to 5.7 (default checksum crc32), this would cause repeated evaluation of the legacy checksum. This issue is there for both compressed and uncompressed pages. Solution : ---------- Since it is likely that all the pages would have same checksum algorithm, we optimize the order dynamically. 1. By default attempt innodb checksum after crc32 2. Once we find a page with legacy big endian crc32 checksum we switch the order and attempt big endian checksum first. Reviewed-by:
Jimmy Yang <Jimmy.Yang@oracle.com> RB: 11403
Loading