#!/usr/bin/expect -f set basedir [file dirname $argv0] set basename [file tail $argv0] exp_internal -f $env(CLICKHOUSE_TMP)/$basename.debuglog 0 log_user 0 set timeout 60 match_max 100000 expect_after { # Do not ignore eof from expect -i $any_spawn_id eof { exp_continue } # A default timeout action is to do nothing, change it to fail -i $any_spawn_id timeout { exit 1 } } spawn bash -c "source $basedir/../shell_config.sh ; \$CLICKHOUSE_LOCAL --disable_suggestion" expect ":) " send -- "drop table if exists t\r" expect "Ok." send -- "create table t engine=MergeTree() order by tuple() as select 1\r" expect "Ok." send -- "set optimize_on_insert = 0\r" expect "Ok." send -- "drop table if exists tt\r" expect "Ok." send -- "create table tt (date Date, version UInt64, val UInt64) engine = ReplacingMergeTree(version) partition by date order by date\r" expect "Ok." send -- "insert into tt values ('2020-01-01', 2, 2), ('2020-01-01', 1, 1)\r" expect "Ok." send -- "insert into tt values ('2020-01-01', 0, 0)\r" expect "Ok." send -- "OPTIMIZE TABLE tt\r" expect "Ok." send -- "select * from tt order by version format TSV\r" expect "2020-01-01\t2\t2" send -- "drop table tt\r" expect "Ok." send -- "drop table t\r" expect "Ok." send -- "exit\r" expect eof