ClickHouse/dbms/tests/queries/0_stateless/00715_fetch_merged_or_mutated_part_zookeeper.sql

43 lines
1.4 KiB
MySQL
Raw Normal View History

DROP TABLE IF EXISTS test.fetches_r1;
DROP TABLE IF EXISTS test.fetches_r2;
CREATE TABLE test.fetches_r1(x UInt32) ENGINE ReplicatedMergeTree('/clickhouse/tables/test/fetches', 'r1') ORDER BY x;
CREATE TABLE test.fetches_r2(x UInt32) ENGINE ReplicatedMergeTree('/clickhouse/tables/test/fetches', 'r2') ORDER BY x
SETTINGS prefer_fetch_merged_part_time_threshold=0,
prefer_fetch_merged_part_size_threshold=0;
INSERT INTO test.fetches_r1 VALUES (1);
INSERT INTO test.fetches_r1 VALUES (2);
INSERT INTO test.fetches_r1 VALUES (3);
SYSTEM SYNC REPLICA test.fetches_r2;
DETACH TABLE test.fetches_r2;
SET replication_alter_partitions_sync=0;
OPTIMIZE TABLE test.fetches_r1 PARTITION tuple() FINAL;
SYSTEM SYNC REPLICA test.fetches_r1;
-- After attach replica r2 should fetch the merged part from r1.
ATTACH TABLE test.fetches_r2;
SYSTEM SYNC REPLICA test.fetches_r2;
SELECT '*** Check data after fetch of merged part ***';
SELECT _part, * FROM test.fetches_r2 ORDER BY x;
DETACH TABLE test.fetches_r2;
-- Add mutation that doesn't change data.
ALTER TABLE test.fetches_r1 DELETE WHERE x = 0;
SYSTEM SYNC REPLICA test.fetches_r1;
-- After attach replica r2 should compare checksums for mutated part and clone the local part.
ATTACH TABLE test.fetches_r2;
SYSTEM SYNC REPLICA test.fetches_r2;
SELECT '*** Check data after fetch/clone of mutated part ***';
SELECT _part, * FROM test.fetches_r2 ORDER BY x;
DROP TABLE test.fetches_r1;
DROP TABLE test.fetches_r2;