CRC32C
Введена в MariaDB 10.8.0 для вычисления значения циклической избыточности (CRC) с использованием многочлена Кастаньоли.
Синтаксис
CRC32C([par,]expr)
Описание
MariaDB всегда включала встроенную унарную функцию CRC32(), которая вычисляет CRC-32 строки, используя полином ISO 3309, используемый zlib и многими другими.
InnoDB и MyRocks используют другой полином, который был реализован в инструкциях SSE4.2, представленных в микроархитектуре Intel Nehalem. Это обычно называется CRC-32C (Кастаньоли).
Функция CRC32C использует полином Кастаньоли.
Это позволяет SELECT…INTO DUMPFILE использовать для создания файлов с корректными контрольными суммами, например, логически пустого файла журнала повтора InnoDB ib_logfile0 соответствующего определённому номеру последовательности журнала.
Необязательный параметр позволяет вычислять контрольную сумму частями: CRC32C('MariaDB')=CRC32C(CRC32C('Maria'),'DB').
Примеры
SELECT CRC32C('MariaDB');
+-------------------+
| CRC32C('MariaDB') |
+-------------------+
| 809606978 |
+-------------------+
SELECT CRC32C(CRC32C('Maria'),'DB');
+------------------------------+
| CRC32C(CRC32C('Maria'),'DB') |
+------------------------------+
| 809606978 |
+------------------------------+
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/crc32c/