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;"
2022-02-26 19:09:34 +00:00
function thread_select( )
{
$CLICKHOUSE_CLIENT --query "SELECT * FROM test FORMAT Null"
sleep 0.0$RANDOM
2021-01-01 20:15:43 +00:00
}
2022-02-26 19:09:34 +00:00
function thread_insert( )
{
$CLICKHOUSE_CLIENT --query "INSERT INTO test VALUES (1, ['Hello'])"
sleep 0.0$RANDOM
2021-01-01 20:15:43 +00:00
}
export -f thread_select
export -f thread_insert
# Do randomized queries and expect nothing extraordinary happens.
2022-02-26 19:09:34 +00:00
clickhouse_client_loop_timeout 10 thread_select &
clickhouse_client_loop_timeout 10 thread_select &
clickhouse_client_loop_timeout 10 thread_select &
clickhouse_client_loop_timeout 10 thread_select &
2021-01-01 20:15:43 +00:00
2022-02-26 19:09:34 +00:00
clickhouse_client_loop_timeout 10 thread_insert &
clickhouse_client_loop_timeout 10 thread_insert &
clickhouse_client_loop_timeout 10 thread_insert &
clickhouse_client_loop_timeout 10 thread_insert &
2021-01-01 20:15:43 +00:00
wait
echo "Done"
$CLICKHOUSE_CLIENT --multiquery --query "DROP TABLE IF EXISTS test;"