From 770066960c96986c4b0b919e24dcd84bc31b5471 Mon Sep 17 00:00:00 2001 From: Alexander Kuzmenkov Date: Wed, 1 Apr 2020 19:05:33 +0300 Subject: [PATCH 01/10] Fix some tests for random execution order. Found in MemorySanitizer CI run, by virtue of it running the tests in random order. --- dbms/tests/config/decimals_dictionary.xml | 10 +++++----- dbms/tests/config/ints_dictionary.xml | 12 +++++------ dbms/tests/config/strings_dictionary.xml | 14 ++++++------- .../queries/0_stateless/00950_dict_get.sql | 20 ++++++++++++------- 4 files changed, 31 insertions(+), 25 deletions(-) diff --git a/dbms/tests/config/decimals_dictionary.xml b/dbms/tests/config/decimals_dictionary.xml index ff465b91b85..f728fa774a7 100644 --- a/dbms/tests/config/decimals_dictionary.xml +++ b/dbms/tests/config/decimals_dictionary.xml @@ -7,7 +7,7 @@ 9000 default - test_00950 + system decimals
@@ -45,7 +45,7 @@ 9000 default - test_00950 + system decimals
@@ -83,7 +83,7 @@ 9000 default - test_00950 + system decimals
@@ -121,7 +121,7 @@ 9000 default - test_00950 + system decimals
@@ -162,7 +162,7 @@ 9000 default - test_00950 + system decimals
diff --git a/dbms/tests/config/ints_dictionary.xml b/dbms/tests/config/ints_dictionary.xml index 5cf8419ad77..a22dab8933c 100644 --- a/dbms/tests/config/ints_dictionary.xml +++ b/dbms/tests/config/ints_dictionary.xml @@ -7,7 +7,7 @@ 9000 default - test_00950 + system ints
@@ -70,7 +70,7 @@ 9000 default - test_00950 + system ints
@@ -133,7 +133,7 @@ 9000 default - test_00950 + system ints
@@ -196,7 +196,7 @@ 9000 default - test_00950 + system ints
@@ -259,7 +259,7 @@ 9000 default - test_00950 + system ints
@@ -325,7 +325,7 @@ 9000 default - test_00950 + system ints
diff --git a/dbms/tests/config/strings_dictionary.xml b/dbms/tests/config/strings_dictionary.xml index 88fad6ae2d7..c5643eecb68 100644 --- a/dbms/tests/config/strings_dictionary.xml +++ b/dbms/tests/config/strings_dictionary.xml @@ -7,7 +7,7 @@ 9000 default - test_00950 + system strings
@@ -35,7 +35,7 @@ 9000 default - test_00950 + system strings
@@ -63,7 +63,7 @@ 9000 default - test_00950 + system strings
@@ -91,7 +91,7 @@ 9000 default - test_00950 + system strings
@@ -122,7 +122,7 @@ 9000 default - test_00950 + system strings
@@ -153,7 +153,7 @@ 9000 default - test_00950 + system strings
@@ -184,7 +184,7 @@ 9000 default - test_00950 + system strings
diff --git a/dbms/tests/queries/0_stateless/00950_dict_get.sql b/dbms/tests/queries/0_stateless/00950_dict_get.sql index 2483a21c0d3..159f3eb0c4e 100644 --- a/dbms/tests/queries/0_stateless/00950_dict_get.sql +++ b/dbms/tests/queries/0_stateless/00950_dict_get.sql @@ -1,6 +1,5 @@ --- Must use `test_00950` database and these tables - they're configured in dbms/tests/*_dictionary.xml -create database if not exists test_00950; -use test_00950; +-- Must use `system` database and these tables - they're configured in dbms/tests/*_dictionary.xml +use system; drop table if exists ints; drop table if exists strings; drop table if exists decimals; @@ -270,7 +269,14 @@ select 'dictGetOrDefault', 'complex_cache_decimals' as dict_name, tuple(toUInt64 dictGetOrDefault(dict_name, 'd64', k, toDecimal64(42, 6)), dictGetOrDefault(dict_name, 'd128', k, toDecimal128(42, 1)); -drop table ints; -drop table strings; -drop table decimals; -drop database test_00950; +-- +-- Keep the tables, so that the dictionaries can be reloaded correctly and +-- SYSTEM RELOAD DICTIONARIES doesn't break. +-- We could also: +-- * drop the dictionaries -- not possible, they are configured in a .xml; +-- * switch dictionaries to DDL syntax so that they can be dropped -- tedious, +-- because there are a couple dozens of them, and also we need to have some +-- .xml dictionaries in tests so that we test backward compatibility with this +-- format; +-- * unload dictionaries -- no command for that. +-- From 7a1d40507a0ac8d837786cd2853ac45b51893d89 Mon Sep 17 00:00:00 2001 From: Alexander Kuzmenkov Date: Fri, 3 Apr 2020 12:55:22 +0300 Subject: [PATCH 02/10] fix more tests --- .../0_stateless/01048_exists_query.sql | 70 +++++++++---------- .../01073_attach_if_not_exists.sql | 14 ++-- 2 files changed, 42 insertions(+), 42 deletions(-) diff --git a/tests/queries/0_stateless/01048_exists_query.sql b/tests/queries/0_stateless/01048_exists_query.sql index 6228b57fe3f..9a4c0558b60 100644 --- a/tests/queries/0_stateless/01048_exists_query.sql +++ b/tests/queries/0_stateless/01048_exists_query.sql @@ -1,44 +1,44 @@ -EXISTS database_for_dict.t; -EXISTS TABLE database_for_dict.t; -EXISTS DICTIONARY database_for_dict.t; +EXISTS db_01048.t_01048; +EXISTS TABLE db_01048.t_01048; +EXISTS DICTIONARY db_01048.t_01048; -DROP DATABASE IF EXISTS database_for_dict; -CREATE DATABASE database_for_dict Engine = Ordinary; +DROP DATABASE IF EXISTS db_01048; +CREATE DATABASE db_01048 Engine = Ordinary; -DROP TABLE IF EXISTS database_for_dict.t; -EXISTS database_for_dict.t; -EXISTS TABLE database_for_dict.t; -EXISTS DICTIONARY database_for_dict.t; +DROP TABLE IF EXISTS db_01048.t_01048; +EXISTS db_01048.t_01048; +EXISTS TABLE db_01048.t_01048; +EXISTS DICTIONARY db_01048.t_01048; -CREATE TABLE database_for_dict.t (x UInt8) ENGINE = Memory; -EXISTS database_for_dict.t; -EXISTS TABLE database_for_dict.t; -EXISTS DICTIONARY database_for_dict.t; +CREATE TABLE db_01048.t_01048 (x UInt8) ENGINE = Memory; +EXISTS db_01048.t_01048; +EXISTS TABLE db_01048.t_01048; +EXISTS DICTIONARY db_01048.t_01048; -DROP TABLE database_for_dict.t; -EXISTS database_for_dict.t; -EXISTS TABLE database_for_dict.t; -EXISTS DICTIONARY database_for_dict.t; +DROP TABLE db_01048.t_01048; +EXISTS db_01048.t_01048; +EXISTS TABLE db_01048.t_01048; +EXISTS DICTIONARY db_01048.t_01048; -DROP DICTIONARY IF EXISTS t; -CREATE TEMPORARY TABLE t (x UInt8); -EXISTS t; -- Does not work for temporary tables. Maybe have to fix. -EXISTS TABLE t; -EXISTS DICTIONARY t; +DROP DICTIONARY IF EXISTS t_01048; +CREATE TEMPORARY TABLE t_01048 (x UInt8); +EXISTS t_01048; -- Does not work for temporary tables. Maybe have to fix. +EXISTS TABLE t_01048; +EXISTS DICTIONARY t_01048; -CREATE DICTIONARY database_for_dict.t (k UInt64, v String) PRIMARY KEY k LAYOUT(FLAT()) SOURCE(HTTP(URL 'http://example.test/' FORMAT TSV)) LIFETIME(1000); -EXISTS database_for_dict.t; -EXISTS TABLE database_for_dict.t; -- Dictionaries are tables as well. But not all tables are dictionaries. -EXISTS DICTIONARY database_for_dict.t; +CREATE DICTIONARY db_01048.t_01048 (k UInt64, v String) PRIMARY KEY k LAYOUT(FLAT()) SOURCE(HTTP(URL 'http://example.test/' FORMAT TSV)) LIFETIME(1000); +EXISTS db_01048.t_01048; +EXISTS TABLE db_01048.t_01048; -- Dictionaries are tables as well. But not all tables are dictionaries. +EXISTS DICTIONARY db_01048.t_01048; -- But dictionary-tables cannot be dropped as usual tables. -DROP TABLE database_for_dict.t; -- { serverError 60 } -DROP DICTIONARY database_for_dict.t; -EXISTS database_for_dict.t; -EXISTS TABLE database_for_dict.t; -EXISTS DICTIONARY database_for_dict.t; +DROP TABLE db_01048.t_01048; -- { serverError 60 } +DROP DICTIONARY db_01048.t_01048; +EXISTS db_01048.t_01048; +EXISTS TABLE db_01048.t_01048; +EXISTS DICTIONARY db_01048.t_01048; -DROP DATABASE database_for_dict; -EXISTS database_for_dict.t; -EXISTS TABLE database_for_dict.t; -EXISTS DICTIONARY database_for_dict.t; +DROP DATABASE db_01048; +EXISTS db_01048.t_01048; +EXISTS TABLE db_01048.t_01048; +EXISTS DICTIONARY db_01048.t_01048; diff --git a/tests/queries/0_stateless/01073_attach_if_not_exists.sql b/tests/queries/0_stateless/01073_attach_if_not_exists.sql index 1c7877a7c73..ed32e023c24 100644 --- a/tests/queries/0_stateless/01073_attach_if_not_exists.sql +++ b/tests/queries/0_stateless/01073_attach_if_not_exists.sql @@ -1,7 +1,7 @@ -CREATE TABLE t (a Int) ENGINE = Log; -ATTACH TABLE t; -- { serverError 57 } -ATTACH TABLE IF NOT EXISTS t; -DETACH TABLE t; -ATTACH TABLE IF NOT EXISTS t; -EXISTS TABLE t; -DROP TABLE t; +CREATE TABLE aine (a Int) ENGINE = Log; +ATTACH TABLE aine; -- { serverError 57 } +ATTACH TABLE IF NOT EXISTS anie; +DETACH TABLE aine; +ATTACH TABLE IF NOT EXISTS aine; +EXISTS TABLE aine; +DROP TABLE aine; From 49bc33ed3431e503a0bd454e4e6f78e2bd0d1262 Mon Sep 17 00:00:00 2001 From: Alexander Kuzmenkov <36882414+akuzm@users.noreply.github.com> Date: Fri, 3 Apr 2020 18:59:59 +0300 Subject: [PATCH 03/10] Update 01073_attach_if_not_exists.sql --- tests/queries/0_stateless/01073_attach_if_not_exists.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/queries/0_stateless/01073_attach_if_not_exists.sql b/tests/queries/0_stateless/01073_attach_if_not_exists.sql index ed32e023c24..8bb52556ccc 100644 --- a/tests/queries/0_stateless/01073_attach_if_not_exists.sql +++ b/tests/queries/0_stateless/01073_attach_if_not_exists.sql @@ -1,6 +1,6 @@ CREATE TABLE aine (a Int) ENGINE = Log; ATTACH TABLE aine; -- { serverError 57 } -ATTACH TABLE IF NOT EXISTS anie; +ATTACH TABLE IF NOT EXISTS aine; DETACH TABLE aine; ATTACH TABLE IF NOT EXISTS aine; EXISTS TABLE aine; From 0117c194c50e6ac399d3eab18eec370f5908d99f Mon Sep 17 00:00:00 2001 From: Nikolai Kochetov Date: Mon, 6 Apr 2020 13:33:59 +0300 Subject: [PATCH 04/10] Fix GroupingAggregatedTransform for single-level aggregation. Add test. --- docker/test/stateless/Dockerfile | 1 + ...gingAggregatedMemoryEfficientTransform.cpp | 9 ++++++-- src/Storages/StorageDistributed.cpp | 2 +- tests/config/clusters.xml | 20 ++++++++++++++++ ...tion_memory_efficient_mix_levels.reference | 10 ++++++++ ...ggregation_memory_efficient_mix_levels.sql | 23 +++++++++++++++++++ 6 files changed, 62 insertions(+), 3 deletions(-) create mode 100644 tests/config/clusters.xml create mode 100644 tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.reference create mode 100644 tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.sql diff --git a/docker/test/stateless/Dockerfile b/docker/test/stateless/Dockerfile index 2d2025de58b..977c580ef43 100644 --- a/docker/test/stateless/Dockerfile +++ b/docker/test/stateless/Dockerfile @@ -68,6 +68,7 @@ CMD dpkg -i package_folder/clickhouse-common-static_*.deb; \ ln -s /usr/share/clickhouse-test/config/macros.xml /etc/clickhouse-server/config.d/; \ ln -s /usr/share/clickhouse-test/config/disks.xml /etc/clickhouse-server/config.d/; \ ln -s /usr/share/clickhouse-test/config/secure_ports.xml /etc/clickhouse-server/config.d/; \ + ln -s /usr/share/clickhouse-test/config/clusters.xml /etc/clickhouse-server/config.d/; \ ln -s /usr/share/clickhouse-test/config/server.key /etc/clickhouse-server/; \ ln -s /usr/share/clickhouse-test/config/server.crt /etc/clickhouse-server/; \ ln -s /usr/share/clickhouse-test/config/dhparam.pem /etc/clickhouse-server/; \ diff --git a/src/Processors/Transforms/MergingAggregatedMemoryEfficientTransform.cpp b/src/Processors/Transforms/MergingAggregatedMemoryEfficientTransform.cpp index 4c0323fcf6a..cabe74b36e9 100644 --- a/src/Processors/Transforms/MergingAggregatedMemoryEfficientTransform.cpp +++ b/src/Processors/Transforms/MergingAggregatedMemoryEfficientTransform.cpp @@ -275,15 +275,20 @@ void GroupingAggregatedTransform::work() { if (!single_level_chunks.empty()) { - auto & header = getOutputs().front().getHeader(); + auto & header = getInputs().front().getHeader(); auto block = header.cloneWithColumns(single_level_chunks.back().detachColumns()); single_level_chunks.pop_back(); auto blocks = params->aggregator.convertBlockToTwoLevel(block); for (auto & cur_block : blocks) { + if (!cur_block) + continue; + Int32 bucket = cur_block.info.bucket_num; - chunks_map[bucket].emplace_back(Chunk(cur_block.getColumns(), cur_block.rows())); + auto chunk_info = std::make_shared(); + chunk_info->bucket_num = bucket; + chunks_map[bucket].emplace_back(Chunk(cur_block.getColumns(), cur_block.rows(), std::move(chunk_info))); } } } diff --git a/src/Storages/StorageDistributed.cpp b/src/Storages/StorageDistributed.cpp index b4375dd5b0a..adf444c3565 100644 --- a/src/Storages/StorageDistributed.cpp +++ b/src/Storages/StorageDistributed.cpp @@ -474,7 +474,7 @@ void StorageDistributed::alter(const AlterCommands & params, const Context & con void StorageDistributed::startup() { if (remote_database.empty() && !remote_table_function_ptr) - LOG_WARNING(log, "Name of remote database is empty. Default database will be used implicitly."); + LOG_INFO(log, "Name of remote database is empty. Default database will be used implicitly."); if (!volume) return; diff --git a/tests/config/clusters.xml b/tests/config/clusters.xml new file mode 100644 index 00000000000..c0babf0ff89 --- /dev/null +++ b/tests/config/clusters.xml @@ -0,0 +1,20 @@ + + + + + + shard_0 + localhost + 9000 + + + + + shard_1 + localhost + 9000 + + + + + \ No newline at end of file diff --git a/tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.reference b/tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.reference new file mode 100644 index 00000000000..ac13b3f193e --- /dev/null +++ b/tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.reference @@ -0,0 +1,10 @@ +0 2 +1 1 +2 1 +3 1 +4 1 +5 1 +6 1 +7 1 +8 1 +9 1 diff --git a/tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.sql b/tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.sql new file mode 100644 index 00000000000..6e4feda346f --- /dev/null +++ b/tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.sql @@ -0,0 +1,23 @@ +create database if not exists shard_0; +create database if not exists shard_1; + +drop table if exists shard_0.shard_01231_distributed_aggregation_memory_efficient; +drop table if exists shard_1.shard_01231_distributed_aggregation_memory_efficient; +drop table if exists ma_dist; + +create table shard_0.shard_01231_distributed_aggregation_memory_efficient (x UInt64) engine = MergeTree order by x; +create table shard_1.shard_01231_distributed_aggregation_memory_efficient (x UInt64) engine = MergeTree order by x; + +insert into shard_0.shard_01231_distributed_aggregation_memory_efficient select * from numbers(1); +insert into shard_1.shard_01231_distributed_aggregation_memory_efficient select * from numbers(10); + +create table ma_dist (x UInt64) ENGINE = Distributed(test_cluster_two_shards_different_databases, '', 'shard_01231_distributed_aggregation_memory_efficient'); + +set distributed_aggregation_memory_efficient = 1; +set group_by_two_level_threshold = 2; +set max_bytes_before_external_group_by = 16; + +select x, count() from ma_dist group by x order by x; + +drop table if exists shard_0.shard_01231_distributed_aggregation_memory_efficient; +drop table if exists shard_1.shard_01231_distributed_aggregation_memory_efficient; From 8986cf688b719e2e7dcd3fd60cdc5b2afff793c2 Mon Sep 17 00:00:00 2001 From: Nikolai Kochetov Date: Mon, 6 Apr 2020 16:28:46 +0300 Subject: [PATCH 05/10] Added comment. --- .../Transforms/MergingAggregatedMemoryEfficientTransform.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Processors/Transforms/MergingAggregatedMemoryEfficientTransform.cpp b/src/Processors/Transforms/MergingAggregatedMemoryEfficientTransform.cpp index cabe74b36e9..12d289deaed 100644 --- a/src/Processors/Transforms/MergingAggregatedMemoryEfficientTransform.cpp +++ b/src/Processors/Transforms/MergingAggregatedMemoryEfficientTransform.cpp @@ -275,7 +275,7 @@ void GroupingAggregatedTransform::work() { if (!single_level_chunks.empty()) { - auto & header = getInputs().front().getHeader(); + auto & header = getInputs().front().getHeader(); /// Take header from input port. Output header is empty. auto block = header.cloneWithColumns(single_level_chunks.back().detachColumns()); single_level_chunks.pop_back(); auto blocks = params->aggregator.convertBlockToTwoLevel(block); From 4fd5ef8bad188a9bd0f4b7bc5d686a0c8761cc39 Mon Sep 17 00:00:00 2001 From: Nikolai Kochetov Date: Mon, 6 Apr 2020 21:05:45 +0300 Subject: [PATCH 06/10] Review fixes. --- src/Storages/StorageDistributed.cpp | 2 +- ...1231_distributed_aggregation_memory_efficient_mix_levels.sql | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Storages/StorageDistributed.cpp b/src/Storages/StorageDistributed.cpp index adf444c3565..b4375dd5b0a 100644 --- a/src/Storages/StorageDistributed.cpp +++ b/src/Storages/StorageDistributed.cpp @@ -474,7 +474,7 @@ void StorageDistributed::alter(const AlterCommands & params, const Context & con void StorageDistributed::startup() { if (remote_database.empty() && !remote_table_function_ptr) - LOG_INFO(log, "Name of remote database is empty. Default database will be used implicitly."); + LOG_WARNING(log, "Name of remote database is empty. Default database will be used implicitly."); if (!volume) return; diff --git a/tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.sql b/tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.sql index 6e4feda346f..31f09b35bf3 100644 --- a/tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.sql +++ b/tests/queries/0_stateless/01231_distributed_aggregation_memory_efficient_mix_levels.sql @@ -1,3 +1,5 @@ +set send_logs_level = 'error'; + create database if not exists shard_0; create database if not exists shard_1; From 22964721958118a980f9a1f7bc7021f3231970c3 Mon Sep 17 00:00:00 2001 From: Vitaly Baranov Date: Mon, 6 Apr 2020 21:55:25 +0300 Subject: [PATCH 07/10] Enable access management in stateless tests. --- docker/test/stateless/Dockerfile | 1 + tests/config/access_management.xml | 7 +++++++ 2 files changed, 8 insertions(+) create mode 100644 tests/config/access_management.xml diff --git a/docker/test/stateless/Dockerfile b/docker/test/stateless/Dockerfile index 2d2025de58b..e4c7ee0df24 100644 --- a/docker/test/stateless/Dockerfile +++ b/docker/test/stateless/Dockerfile @@ -62,6 +62,7 @@ CMD dpkg -i package_folder/clickhouse-common-static_*.deb; \ ln -s /usr/share/clickhouse-test/config/query_masking_rules.xml /etc/clickhouse-server/config.d/; \ ln -s /usr/share/clickhouse-test/config/log_queries.xml /etc/clickhouse-server/users.d/; \ ln -s /usr/share/clickhouse-test/config/readonly.xml /etc/clickhouse-server/users.d/; \ + ln -s /usr/share/clickhouse-test/config/access_management.xml /etc/clickhouse-server/users.d/; \ ln -s /usr/share/clickhouse-test/config/ints_dictionary.xml /etc/clickhouse-server/; \ ln -s /usr/share/clickhouse-test/config/strings_dictionary.xml /etc/clickhouse-server/; \ ln -s /usr/share/clickhouse-test/config/decimals_dictionary.xml /etc/clickhouse-server/; \ diff --git a/tests/config/access_management.xml b/tests/config/access_management.xml new file mode 100644 index 00000000000..7e799cb7b10 --- /dev/null +++ b/tests/config/access_management.xml @@ -0,0 +1,7 @@ + + + + 1 + + + From 2a8867f330506dae80a6043fbdb93cd3d87de9a1 Mon Sep 17 00:00:00 2001 From: Alexander Kuzmenkov Date: Mon, 6 Apr 2020 23:47:55 +0300 Subject: [PATCH 08/10] Convenient defaults for perf test runner. --- docker/test/performance-comparison/perf.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docker/test/performance-comparison/perf.py b/docker/test/performance-comparison/perf.py index dc516d7029e..55d93f89c6e 100755 --- a/docker/test/performance-comparison/perf.py +++ b/docker/test/performance-comparison/perf.py @@ -23,8 +23,8 @@ report_stage_end('start') parser = argparse.ArgumentParser(description='Run performance test.') # Explicitly decode files as UTF-8 because sometimes we have Russian characters in queries, and LANG=C is set. parser.add_argument('file', metavar='FILE', type=argparse.FileType('r', encoding='utf-8'), nargs=1, help='test description file') -parser.add_argument('--host', nargs='*', default=['127.0.0.1', '127.0.0.1'], help="Server hostname. Parallel to '--port'.") -parser.add_argument('--port', nargs='*', default=[9001, 9002], help="Server port. Parallel to '--host'.") +parser.add_argument('--host', nargs='*', default=['localhost'], help="Server hostname(s). Corresponds to '--port' options.") +parser.add_argument('--port', nargs='*', default=[9000], help="Server port(s). Corresponds to '--host' options.") parser.add_argument('--runs', type=int, default=int(os.environ.get('CHPC_RUNS', 7)), help='Number of query runs per server. Defaults to CHPC_RUNS environment variable.') parser.add_argument('--no-long', type=bool, default=True, help='Skip the tests tagged as long.') args = parser.parse_args() From 2e804173a9f7bb7c7c9cb6e8de81a9dcdb209df7 Mon Sep 17 00:00:00 2001 From: Alexander Kuzmenkov Date: Tue, 7 Apr 2020 03:29:44 +0300 Subject: [PATCH 09/10] performance comparison --- docker/test/performance-comparison/compare.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/test/performance-comparison/compare.sh b/docker/test/performance-comparison/compare.sh index 3044050d12b..7ed2aab66bb 100755 --- a/docker/test/performance-comparison/compare.sh +++ b/docker/test/performance-comparison/compare.sh @@ -148,7 +148,7 @@ function run_tests TIMEFORMAT=$(printf "$test_name\t%%3R\t%%3U\t%%3S\n") # the grep is to filter out set -x output and keep only time output - { time "$script_dir/perf.py" "$test" > "$test_name-raw.tsv" 2> "$test_name-err.log" ; } 2>&1 >/dev/null | grep -v ^+ >> "wall-clock-times.tsv" || continue + { time "$script_dir/perf.py" --host=localhost --port=9001 --host=localhost --port=9002 "$test" > "$test_name-raw.tsv" 2> "$test_name-err.log" ; } 2>&1 >/dev/null | grep -v ^+ >> "wall-clock-times.tsv" || continue # The test completed with zero status, so we treat stderr as warnings mv "$test_name-err.log" "$test_name-warn.log" From d300a7da3ca687c111f97debdfb8535625274476 Mon Sep 17 00:00:00 2001 From: Dmitry Belyavtsev Date: Tue, 7 Apr 2020 15:48:41 +0800 Subject: [PATCH 10/10] Add ruby library clickhouse-activerecord to list in docs (#10069) * Add ruby library clickhouse-activerecord to list in docs * Add library clickhouse-activerecord in docsfor other locales --- docs/en/interfaces/third-party/client_libraries.md | 1 + docs/es/interfaces/third-party/client_libraries.md | 1 + docs/fa/interfaces/third-party/client_libraries.md | 1 + docs/fr/interfaces/third-party/client_libraries.md | 1 + docs/ja/interfaces/third-party/client_libraries.md | 1 + docs/ru/interfaces/third-party/client_libraries.md | 1 + docs/zh/interfaces/third-party/client_libraries.md | 1 + 7 files changed, 7 insertions(+) diff --git a/docs/en/interfaces/third-party/client_libraries.md b/docs/en/interfaces/third-party/client_libraries.md index 1f5c0e31933..f408e4e0193 100644 --- a/docs/en/interfaces/third-party/client_libraries.md +++ b/docs/en/interfaces/third-party/client_libraries.md @@ -34,6 +34,7 @@ toc_title: Client Libraries - [AnyEvent-ClickHouse](https://metacpan.org/release/AnyEvent-ClickHouse) - Ruby - [ClickHouse (Ruby)](https://github.com/shlima/click_house) + - [clickhouse-activerecord](https://github.com/PNixx/clickhouse-activerecord) - R - [clickhouse-r](https://github.com/hannesmuehleisen/clickhouse-r) - [RClickhouse](https://github.com/IMSMWU/RClickhouse) diff --git a/docs/es/interfaces/third-party/client_libraries.md b/docs/es/interfaces/third-party/client_libraries.md index 28c3a9529f4..31e9afcac91 100644 --- a/docs/es/interfaces/third-party/client_libraries.md +++ b/docs/es/interfaces/third-party/client_libraries.md @@ -36,6 +36,7 @@ toc_title: Bibliotecas de clientes - [Cualquier evento-ClickHouse](https://metacpan.org/release/AnyEvent-ClickHouse) - Rubí - [Haga clic en Casa (Ruby)](https://github.com/shlima/click_house) + - [clickhouse-activerecord](https://github.com/PNixx/clickhouse-activerecord) - R - [Sistema abierto.](https://github.com/hannesmuehleisen/clickhouse-r) - [Bienvenidos al Portal de Licitación Electrónica de Licitación Electrónica](https://github.com/IMSMWU/RClickhouse) diff --git a/docs/fa/interfaces/third-party/client_libraries.md b/docs/fa/interfaces/third-party/client_libraries.md index 9d61ab4bd77..dff3dc48717 100644 --- a/docs/fa/interfaces/third-party/client_libraries.md +++ b/docs/fa/interfaces/third-party/client_libraries.md @@ -37,6 +37,7 @@ toc_title: "\u06A9\u062A\u0627\u0628\u062E\u0627\u0646\u0647 \u0647\u0627\u06CC - [هرفنت-کلیکهاوس](https://metacpan.org/release/AnyEvent-ClickHouse) - روبی - [تاتر (روبی)](https://github.com/shlima/click_house) + - [clickhouse-activerecord](https://github.com/PNixx/clickhouse-activerecord) - R - [کلیک تحقیق](https://github.com/hannesmuehleisen/clickhouse-r) - [خانه روستایی](https://github.com/IMSMWU/RClickhouse) diff --git a/docs/fr/interfaces/third-party/client_libraries.md b/docs/fr/interfaces/third-party/client_libraries.md index 940887e4010..e4be3a53646 100644 --- a/docs/fr/interfaces/third-party/client_libraries.md +++ b/docs/fr/interfaces/third-party/client_libraries.md @@ -36,6 +36,7 @@ toc_title: "Biblioth\xE8ques Clientes" - [AnyEvent-ClickHouse](https://metacpan.org/release/AnyEvent-ClickHouse) - Rubis - [ClickHouse (Ruby)](https://github.com/shlima/click_house) + - [clickhouse-activerecord](https://github.com/PNixx/clickhouse-activerecord) - R - [clickhouse-r](https://github.com/hannesmuehleisen/clickhouse-r) - [RClickhouse](https://github.com/IMSMWU/RClickhouse) diff --git a/docs/ja/interfaces/third-party/client_libraries.md b/docs/ja/interfaces/third-party/client_libraries.md index bcd0ff895d5..b561e504f7c 100644 --- a/docs/ja/interfaces/third-party/client_libraries.md +++ b/docs/ja/interfaces/third-party/client_libraries.md @@ -36,6 +36,7 @@ toc_title: "\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8" - [AnyEvent-ClickHouse](https://metacpan.org/release/AnyEvent-ClickHouse) - Ruby - [クリックハウス(ruby)](https://github.com/shlima/click_house) + - [clickhouse-activerecord](https://github.com/PNixx/clickhouse-activerecord) - R - [クリックハウス-r](https://github.com/hannesmuehleisen/clickhouse-r) - [Rクリックハウス](https://github.com/IMSMWU/RClickhouse) diff --git a/docs/ru/interfaces/third-party/client_libraries.md b/docs/ru/interfaces/third-party/client_libraries.md index 3ec3901666a..27fb3f67512 100644 --- a/docs/ru/interfaces/third-party/client_libraries.md +++ b/docs/ru/interfaces/third-party/client_libraries.md @@ -29,6 +29,7 @@ - [AnyEvent-ClickHouse](https://metacpan.org/release/AnyEvent-ClickHouse) - Ruby - [ClickHouse (Ruby)](https://github.com/shlima/click_house) + - [clickhouse-activerecord](https://github.com/PNixx/clickhouse-activerecord) - R - [clickhouse-r](https://github.com/hannesmuehleisen/clickhouse-r) - [RClickhouse](https://github.com/IMSMWU/RClickhouse) diff --git a/docs/zh/interfaces/third-party/client_libraries.md b/docs/zh/interfaces/third-party/client_libraries.md index bf74c490092..4814ca5cf9a 100644 --- a/docs/zh/interfaces/third-party/client_libraries.md +++ b/docs/zh/interfaces/third-party/client_libraries.md @@ -28,6 +28,7 @@ - [AnyEvent-ClickHouse](https://metacpan.org/release/AnyEvent-ClickHouse) - Ruby - [ClickHouse (Ruby)](https://github.com/shlima/click_house) + - [clickhouse-activerecord](https://github.com/PNixx/clickhouse-activerecord) - R - [clickhouse-r](https://github.com/hannesmuehleisen/clickhouse-r) - [RClickhouse](https://github.com/IMSMWU/RClickhouse)