ClickHouse/tests/queries/0_stateless/02049_clickhouse_local_merge_tree.expect
Azat Khuzhin 6db867b03d Fix 02049_clickhouse_local_merge_tree flakiness
Likely if \4 is sent before replxx spawns the interactive prompt it
will not be handled:

    send: sending "\u0004" to { exp4 }
    0 rows in set. Elapsed: 0.001 sec.

    [1Gce90d76fd35f :)
    [1Gce90d76fd35f :) expect: timed out
    , result:

So let's use plain "exit" instead.

CI: https://s3.amazonaws.com/clickhouse-test-reports/46779/fa3aeb6ff9c9409416c983151da73c6b8a2c5d66/stateless_tests_flaky_check__asan_/run.log
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-02-24 11:24:31 +01:00

55 lines
1.3 KiB
Plaintext
Executable File

#!/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