mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-10 01:25:21 +00:00
51 lines
1.2 KiB
Bash
Executable File
51 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Tags: no-fasttest
|
|
|
|
set -e
|
|
|
|
CURDIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
|
|
# shellcheck source=../shell_config.sh
|
|
. "$CURDIR"/../shell_config.sh
|
|
|
|
|
|
$CLICKHOUSE_CLIENT --multiquery --query "DROP TABLE IF EXISTS test; CREATE TABLE IF NOT EXISTS test (x UInt64, s Array(Nullable(String))) ENGINE = TinyLog;"
|
|
|
|
function thread_select {
|
|
local TIMELIMIT=$((SECONDS+$1))
|
|
while [ $SECONDS -lt "$TIMELIMIT" ]; do
|
|
$CLICKHOUSE_CLIENT --local_filesystem_read_method pread --query "SELECT * FROM test FORMAT Null"
|
|
sleep 0.0$RANDOM
|
|
done
|
|
}
|
|
|
|
function thread_insert {
|
|
local TIMELIMIT=$((SECONDS+$1))
|
|
while [ $SECONDS -lt "$1" ]; do
|
|
$CLICKHOUSE_CLIENT --query "INSERT INTO test VALUES (1, ['Hello'])"
|
|
sleep 0.0$RANDOM
|
|
done
|
|
}
|
|
|
|
export -f thread_select
|
|
export -f thread_insert
|
|
|
|
|
|
# Do randomized queries and expect nothing extraordinary happens.
|
|
|
|
TIMEOUT=10
|
|
|
|
thread_select $TIMEOUT &
|
|
thread_select $TIMEOUT &
|
|
thread_select $TIMEOUT &
|
|
thread_select $TIMEOUT &
|
|
|
|
thread_insert $TIMEOUT &
|
|
thread_insert $TIMEOUT &
|
|
thread_insert $TIMEOUT &
|
|
thread_insert $TIMEOUT &
|
|
|
|
wait
|
|
echo "Done"
|
|
|
|
$CLICKHOUSE_CLIENT --multiquery --query "DROP TABLE IF EXISTS test;"
|