2022-10-01 21:00:23 +00:00
|
|
|
#!/usr/bin/expect -f
|
|
|
|
|
|
|
|
set basedir [file dirname $argv0]
|
|
|
|
set basename [file tail $argv0]
|
2022-10-01 21:19:02 +00:00
|
|
|
exp_internal -f $env(CLICKHOUSE_TMP)/$basename.debuglog 0
|
2022-10-01 21:00:23 +00:00
|
|
|
|
2022-10-01 21:18:54 +00:00
|
|
|
log_user 0
|
2022-10-01 21:00:23 +00:00
|
|
|
set timeout 60
|
|
|
|
match_max 100000
|
2022-10-01 21:17:49 +00:00
|
|
|
set stty_init "rows 25 cols 120"
|
2022-10-01 21:00:23 +00:00
|
|
|
|
|
|
|
expect_after {
|
2023-02-20 14:50:15 +00:00
|
|
|
-i $any_spawn_id eof { exp_continue }
|
|
|
|
-i $any_spawn_id timeout { exit 1 }
|
2022-10-01 21:00:23 +00:00
|
|
|
}
|
|
|
|
|
2022-10-01 21:17:49 +00:00
|
|
|
spawn bash
|
|
|
|
send "source $basedir/../shell_config.sh\r"
|
|
|
|
|
2022-11-09 19:46:47 +00:00
|
|
|
# Progress is not displayed by default
|
|
|
|
send "\$CLICKHOUSE_LOCAL --query 'SELECT sleep(1), \$\$Hello\$\$ FROM numbers(3) SETTINGS max_block_size = 1' 2>/dev/null\r"
|
|
|
|
expect -exact "0\tHello\r\n"
|
2022-10-01 21:17:49 +00:00
|
|
|
send "\3"
|
2022-10-01 21:00:23 +00:00
|
|
|
|
2022-11-09 19:46:47 +00:00
|
|
|
# The option --progress has implicit value of true
|
|
|
|
send "\$CLICKHOUSE_LOCAL --progress --query 'SELECT sum(sleep(1) = 0) FROM numbers(3) SETTINGS max_block_size = 1' >/dev/null\r"
|
2022-10-01 21:00:23 +00:00
|
|
|
expect "Progress: "
|
|
|
|
expect "█"
|
2022-10-01 21:17:49 +00:00
|
|
|
send "\3"
|
2022-10-01 21:00:23 +00:00
|
|
|
|
2022-11-09 19:46:47 +00:00
|
|
|
# It works even if we redirect both stdout and stderr to /dev/null
|
2022-10-01 21:17:49 +00:00
|
|
|
send "\$CLICKHOUSE_LOCAL --progress --query 'SELECT sum(sleep(1) = 0) FROM numbers(3) SETTINGS max_block_size = 1' >/dev/null 2>&1\r"
|
2022-10-01 21:00:23 +00:00
|
|
|
expect "Progress: "
|
|
|
|
expect "█"
|
2022-10-01 21:17:49 +00:00
|
|
|
send "\3"
|
2022-10-01 21:00:23 +00:00
|
|
|
|
2022-11-10 07:33:54 +00:00
|
|
|
# But we can set it to false
|
|
|
|
send "\$CLICKHOUSE_LOCAL --progress false --query 'SELECT sleep(1), \$\$Hello\$\$ FROM numbers(3) SETTINGS max_block_size = 1' 2>/dev/null\r"
|
|
|
|
expect -exact "0\tHello\r\n"
|
|
|
|
send "\3"
|
|
|
|
|
|
|
|
# As well as to 0 for the same effect
|
|
|
|
send "\$CLICKHOUSE_LOCAL --progress 0 --query 'SELECT sleep(1), \$\$Hello\$\$ FROM numbers(3) SETTINGS max_block_size = 1' 2>/dev/null\r"
|
|
|
|
expect -exact "0\tHello\r\n"
|
|
|
|
send "\3"
|
|
|
|
|
2022-10-01 21:00:23 +00:00
|
|
|
# If we set it to 1, the progress will be displayed as well
|
2022-10-01 21:17:49 +00:00
|
|
|
send "\$CLICKHOUSE_LOCAL --progress 1 --query 'SELECT sum(sleep(1) = 0) FROM numbers(3) SETTINGS max_block_size = 1' >/dev/null 2>&1\r"
|
2022-10-01 21:00:23 +00:00
|
|
|
expect "Progress: "
|
|
|
|
expect "█"
|
2022-10-01 21:17:49 +00:00
|
|
|
send "\3"
|
|
|
|
|
|
|
|
send "exit\r"
|
|
|
|
expect eof
|