From 0cebfc74b6c2a41a5788e28dae3494cfbbe016dc Mon Sep 17 00:00:00 2001 From: Alexey Milovidov Date: Sun, 19 Apr 2020 22:22:03 +0300 Subject: [PATCH] Added a test --- .../01249_flush_interactive.reference | 12 ++++++++++++ .../0_stateless/01249_flush_interactive.sh | 16 ++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 tests/queries/0_stateless/01249_flush_interactive.reference create mode 100755 tests/queries/0_stateless/01249_flush_interactive.sh diff --git a/tests/queries/0_stateless/01249_flush_interactive.reference b/tests/queries/0_stateless/01249_flush_interactive.reference new file mode 100644 index 00000000000..6d6abb2d37f --- /dev/null +++ b/tests/queries/0_stateless/01249_flush_interactive.reference @@ -0,0 +1,12 @@ +0 +1 +2 +3 +4 +--- +0 +1 +2 +3 +4 +--- diff --git a/tests/queries/0_stateless/01249_flush_interactive.sh b/tests/queries/0_stateless/01249_flush_interactive.sh new file mode 100755 index 00000000000..a489806ceb9 --- /dev/null +++ b/tests/queries/0_stateless/01249_flush_interactive.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash + +CURDIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) +. $CURDIR/../shell_config.sh + +# A question for curious reader: +# How to break shell pipeline as soon as 5 lines are found in the following command: +# ./my-program | head -n5 +# When I tried to do it, pipeline was not actively terminated, +# unless the my-program will try to output a thousand more lines overflowing pipe buffer and terminating with Broken Pipe. +# But if my program just output 5 (or slightly more) lines and hang up, the pipeline is not terminated. + +timeout 1 ${CLICKHOUSE_LOCAL} --max_execution_time 10 --query "SELECT DISTINCT number % 5 FROM system.numbers" ||: +echo '---' +timeout 1 ${CLICKHOUSE_CURL} -sS --no-buffer "${CLICKHOUSE_URL}&max_execution_time=10" --data-binary "SELECT DISTINCT number % 5 FROM system.numbers" ||: +echo '---'