diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2021-12-14 11:45:34 +0200 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2021-12-14 11:45:34 +0200 |
commit | bc9f505f80633e537d5077534f4d8809c65c8162 (patch) | |
tree | 64b10a617bef8a4245cf81445339bb7d2d2e4e22 /mysql-test/mysql-test-run.pl | |
parent | ea9489536911b083c5e28b15c071cf6931247b7e (diff) | |
download | mariadb-git-preview-10.8-MDEV-27208.tar.gz |
MDEV-27208: Extend CRC32() and implement CRC32C()preview-10.8-MDEV-27208
We used to define a native unary function crc32() that computes the CRC-32
of a string using the ISO 3309 polynomial that is being used by zlib
and many others.
Often, CRC is computed in pieces. To faciliate this, we introduce an
optional second parameter: CRC32('MariaDB')=CRC32('DB',CRC32('Maria')).
InnoDB and MyRocks use a different polynomial, which was implemented
in SSE4.2 instructions that were introduced in the
Intel Nehalem microarchitecture. This is commonly called CRC-32C
(Castagnoli).
We introduce a native function that uses the Castagnoli polynomial:
CRC32C('MariaDB')=CRC32C('DB',CRC32C('Maria')). This allows
SELECT...INTO DUMPFILE to be used for the creation of files with
valid checksums, such as a logically empty InnoDB redo log file
ib_logfile0 corresponding to a particular log sequence number.
Diffstat (limited to 'mysql-test/mysql-test-run.pl')
0 files changed, 0 insertions, 0 deletions