ClickHouse/tests/queries/0_stateless/mergetree_mutations.lib
Azat Khuzhin e3218af9e6 tests: make wait_for_all_mutations faster
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2024-04-25 14:15:01 +02:00

45 lines
1.1 KiB
Bash

#!/usr/bin/env bash
function wait_for_mutation()
{
local table=$1
local mutation_id=$2
local database=$3
database=${database:="${CLICKHOUSE_DATABASE}"}
for i in {1..100}
do
sleep 0.1
if [[ $(${CLICKHOUSE_CLIENT} --query="SELECT min(is_done) FROM system.mutations WHERE database='$database' AND table='$table' AND mutation_id='$mutation_id'") -eq 1 ]]; then
break
fi
if [[ $i -eq 100 ]]; then
echo "Timed out while waiting for mutation to execute!"
fi
done
}
function wait_for_all_mutations()
{
local table=$1
local database=$2
database=${database:="${CLICKHOUSE_DATABASE}"}
for i in {1..200}
do
if [[ $(${CLICKHOUSE_CLIENT} --query="SELECT coalesce(minOrNull(is_done), 1) FROM system.mutations WHERE database='$database' AND table like '$table'") -eq 1 ]]; then
break
fi
if [[ $i -eq 200 ]]; then
echo "Timed out while waiting for mutation to execute!"
fi
sleep 0.1
done
}
# vi: ft=bash