ClickHouse/tests/queries/0_stateless/01632_tinylog_read_write.sh

46 lines
1.1 KiB
Bash
Raw Normal View History

2021-01-01 20:15:43 +00:00
#!/usr/bin/env bash
set -e
CURDIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
2021-01-03 15:45:08 +00:00
# shellcheck source=../shell_config.sh
2021-01-01 20:15:43 +00:00
. "$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 {
while true; do
$CLICKHOUSE_CLIENT --query "SELECT * FROM test FORMAT Null"
sleep 0.0$RANDOM
done
2021-01-01 20:15:43 +00:00
}
function thread_insert {
while true; do
$CLICKHOUSE_CLIENT --query "INSERT INTO test VALUES (1, ['Hello'])"
sleep 0.0$RANDOM
done
2021-01-01 20:15:43 +00:00
}
export -f thread_select
export -f thread_insert
2021-01-01 20:15:43 +00:00
# Do randomized queries and expect nothing extraordinary happens.
timeout 10 bash -c 'thread_select' &
timeout 10 bash -c 'thread_select' &
timeout 10 bash -c 'thread_select' &
timeout 10 bash -c 'thread_select' &
2021-01-01 20:15:43 +00:00
timeout 10 bash -c 'thread_insert' &
timeout 10 bash -c 'thread_insert' &
timeout 10 bash -c 'thread_insert' &
timeout 10 bash -c 'thread_insert' &
2021-01-01 20:15:43 +00:00
wait
echo "Done"
$CLICKHOUSE_CLIENT --multiquery --query "DROP TABLE IF EXISTS test;"