mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-12-18 20:32:43 +00:00
66 lines
2.2 KiB
SQL
66 lines
2.2 KiB
SQL
-- Tags: no-parallel, no-shared-merge-tree
|
|
|
|
DROP TABLE IF EXISTS t_prewarm_cache_rmt_1;
|
|
DROP TABLE IF EXISTS t_prewarm_cache_rmt_2;
|
|
|
|
CREATE TABLE t_prewarm_cache_rmt_1 (a UInt64, b UInt64, c UInt64)
|
|
ENGINE = ReplicatedMergeTree('/clickhouse/tables/{database}/03254_prewarm_mark_cache_smt/t_prewarm_cache', '1')
|
|
ORDER BY a SETTINGS prewarm_mark_cache = 1;
|
|
|
|
CREATE TABLE t_prewarm_cache_rmt_2 (a UInt64, b UInt64, c UInt64)
|
|
ENGINE = ReplicatedMergeTree('/clickhouse/tables/{database}/03254_prewarm_mark_cache_smt/t_prewarm_cache', '2')
|
|
ORDER BY a SETTINGS prewarm_mark_cache = 1;
|
|
|
|
SYSTEM DROP MARK CACHE;
|
|
|
|
SYSTEM STOP FETCHES t_prewarm_cache_rmt_2;
|
|
|
|
-- Check that prewarm works on insert.
|
|
INSERT INTO t_prewarm_cache_rmt_1 SELECT number, rand(), rand() FROM numbers(20000);
|
|
SELECT count() FROM t_prewarm_cache_rmt_1 WHERE NOT ignore(*);
|
|
|
|
-- Check that prewarm works on fetch.
|
|
SYSTEM DROP MARK CACHE;
|
|
SYSTEM START FETCHES t_prewarm_cache_rmt_2;
|
|
SYSTEM SYNC REPLICA t_prewarm_cache_rmt_2;
|
|
SELECT count() FROM t_prewarm_cache_rmt_2 WHERE NOT ignore(*);
|
|
|
|
-- Check that prewarm works on merge.
|
|
INSERT INTO t_prewarm_cache_rmt_1 SELECT number, rand(), rand() FROM numbers(20000);
|
|
OPTIMIZE TABLE t_prewarm_cache_rmt_1 FINAL;
|
|
|
|
SYSTEM SYNC REPLICA t_prewarm_cache_rmt_2;
|
|
|
|
SELECT count() FROM t_prewarm_cache_rmt_1 WHERE NOT ignore(*);
|
|
SELECT count() FROM t_prewarm_cache_rmt_2 WHERE NOT ignore(*);
|
|
|
|
-- Check that prewarm works on restart.
|
|
SYSTEM DROP MARK CACHE;
|
|
|
|
DETACH TABLE t_prewarm_cache_rmt_1;
|
|
DETACH TABLE t_prewarm_cache_rmt_2;
|
|
|
|
ATTACH TABLE t_prewarm_cache_rmt_1;
|
|
ATTACH TABLE t_prewarm_cache_rmt_2;
|
|
|
|
SELECT count() FROM t_prewarm_cache_rmt_1 WHERE NOT ignore(*);
|
|
SELECT count() FROM t_prewarm_cache_rmt_2 WHERE NOT ignore(*);
|
|
|
|
SYSTEM DROP MARK CACHE;
|
|
|
|
SELECT count() FROM t_prewarm_cache_rmt_1 WHERE NOT ignore(*);
|
|
|
|
--- Check that system query works.
|
|
SYSTEM PREWARM MARK CACHE t_prewarm_cache_rmt_1;
|
|
|
|
SELECT count() FROM t_prewarm_cache_rmt_1 WHERE NOT ignore(*);
|
|
|
|
SYSTEM FLUSH LOGS;
|
|
|
|
SELECT ProfileEvents['LoadedMarksCount'] > 0 FROM system.query_log
|
|
WHERE current_database = currentDatabase() AND type = 'QueryFinish' AND query LIKE 'SELECT count() FROM t_prewarm_cache%'
|
|
ORDER BY event_time_microseconds;
|
|
|
|
DROP TABLE IF EXISTS t_prewarm_cache_rmt_1;
|
|
DROP TABLE IF EXISTS t_prewarm_cache_rmt_2;
|