Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/MariaDB/mysql-test/main/   (MariaDB Server Version 8.1-8.4©)  Datei vom 1.9.2026 mit Größe 1 kB image not shown  

Quelle  func_xxh_partition.test  Sprache: unbekannt

 
Spracherkennung für: .test vermutete Sprache: SQL {SQL[168] ABAP[132] VDM[80]} [Methode: maximale Elemente, drei Dimensionen]

--source include/have_partition.inc
--source include/have_sequence.inc

--echo ## XXH32: sql function modulo distribution agrees with KEY partitioning
CREATE OR REPLACE TABLE t1 (c1 VARCHAR(10))
PARTITION BY KEY ALGORITHM=XXH32 (c1) PARTITIONS 7;

INSERT INTO t1
SELECT CAST(seq AS CHAR) FROM seq_735000_to_736000;

SELECT partition_name, table_rows
FROM information_schema.partitions
WHERE table_schema=DATABASE() AND table_name='t1'
ORDER BY partition_name;

CREATE OR REPLACE TABLE t2 (part_id INT, part_rows INT);
INSERT INTO t2
SELECT MOD(XXH32(c1), 7) AS part_id, COUNT(*)
FROM t1
GROUP BY part_id;

SELECT CONCAT('p', part_id) AS partition_name, part_rows
FROM t2
ORDER BY partition_name;

DROP TABLE t1, t2;

--echo ## XXH3: sql function modulo distribution agrees with KEY partitioning
CREATE OR REPLACE TABLE t1 (c1 VARCHAR(10))
PARTITION BY KEY ALGORITHM=XXH3 (c1) PARTITIONS 7;

INSERT INTO t1
SELECT CAST(seq AS CHAR) FROM seq_735000_to_736000;

SELECT partition_name, table_rows
FROM information_schema.partitions
WHERE table_schema=DATABASE() AND table_name='t1'
ORDER BY partition_name;

CREATE OR REPLACE TABLE t2 (part_id INT, part_rows INT);
INSERT INTO t2
SELECT MOD(XXH3(c1), 7) AS part_id, COUNT(*)
FROM t1
GROUP BY part_id;

SELECT CONCAT('p', part_id) AS partition_name, part_rows
FROM t2
ORDER BY partition_name;

DROP TABLE t1, t2;

--echo ## Partition agreement
CREATE OR REPLACE TABLE tp (c1 VARCHAR(10)) PARTITION BY KEY ALGORITHM=XXH3 (c1) PARTITIONS 4;
INSERT INTO tp SELECT CAST(seq AS CHAR) FROM seq_1_to_200;

SELECT partition_name, table_rows FROM information_schema.partitions
WHERE table_schema=DATABASE() AND table_name='tp' ORDER BY partition_name;

SELECT MOD(XXH3(c1),4) AS pid, COUNT(*) FROM tp GROUP BY pid ORDER BY pid;

DROP TABLE tp;

[Dauer der Verarbeitung: 0.12 Sekunden, vorverarbeitet 2026-10-08]