mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-27 18:12:02 +00:00
29 lines
1.1 KiB
Bash
Executable File
29 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
CUR_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
|
|
# shellcheck source=../shell_config.sh
|
|
. "$CUR_DIR"/../shell_config.sh
|
|
|
|
${CLICKHOUSE_CLIENT} --multiquery --query "
|
|
drop table if exists aliases_lazyness;
|
|
create table aliases_lazyness (x UInt32, y ALIAS sleepEachRow(0.1)) Engine=MergeTree ORDER BY x;
|
|
insert into aliases_lazyness(x) select * from numbers(40);
|
|
"
|
|
|
|
# In very old ClickHouse versions alias column was calculated for every row.
|
|
# If it works this way, the query will take at least 0.1 * 40 = 4 seconds.
|
|
# If the issue does not exist, the query should take slightly more than 0.1 seconds.
|
|
# The exact time is not guaranteed, so we check in a loop that at least once
|
|
# the query will process in less than one second, that proves that the behaviour is not like it was long time ago.
|
|
|
|
i=0 retries=300
|
|
while [[ $i -lt $retries ]]; do
|
|
timeout 1 ${CLICKHOUSE_CLIENT} --query "SELECT x, y FROM aliases_lazyness WHERE x = 1 FORMAT Null" && break
|
|
((++i))
|
|
done
|
|
|
|
${CLICKHOUSE_CLIENT} --multiquery --query "
|
|
drop table aliases_lazyness;
|
|
SELECT 'Ok';
|
|
"
|