Commit Graph

20 Commits

Author SHA1 Message Date
Robert Schulze
1a7727a254
Prefix overridden add_executable() command with "clickhouse_"
A simple HelloWorld program with zero includes except iostream triggers
a build of ca. 2000 source files. The reason is that ClickHouse's
top-level CMakeLists.txt overrides "add_executable()" to link all
binaries against "clickhouse_new_delete". This links against
"clickhouse_common_io", which in turn has lots of 3rd party library
dependencies ... Without linking "clickhouse_new_delete", the number of
compiled files for "HelloWorld" goes down to ca. 70.

As an example, the self-extracting-executable needs none of its current
dependencies but other programs may also benefit.

In order to restore access to the original "add_executable()", the
overriding version is now prefixed. There is precedence for a
"clickhouse_" prefix (as opposed to "ch_"), for example
"clickhouse_split_debug_symbols". In general prefixing makes sense also
because overriding CMake commands relies on undocumented behavior and is
considered not-so-great practice (*).

(*) https://crascit.com/2018/09/14/do-not-redefine-cmake-commands/
2022-07-11 19:36:18 +02:00
Antonio Andelic
3a71b63b5d Add list request type 2022-06-23 10:28:12 +00:00
alesapin
3107b2bcd6 Add small script for stupid keeper check 2022-04-28 18:13:54 +02:00
Robert Schulze
118e94523c
Activate clang-tidy warning "readability-container-contains"
This check suggests replacing <Container>.count() by
<Container>.contains() which is more speaking and in case of
multimaps/multisets also faster.
2022-04-18 23:53:11 +02:00
alesapin
eaa0e4e542 Add set generator 2022-01-20 20:06:34 +03:00
alesapin
9ea6b8c2d3 Some interm state 2022-01-19 14:46:29 +03:00
alesapin
3d325aacf6 Merge branch 'master' into better_hashmap 2022-01-19 12:31:23 +03:00
Azat Khuzhin
4a2bc64989 Introduce clickhouse_common_zookeeper_no_log (w/o extra deps for examples)
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-01-11 23:51:41 +03:00
alesapin
f8114126ed Use HashMap and arena with free lists for keeper 2021-12-30 19:21:49 +03:00
Raúl Marín
4b65db4231 Fix keeper bench compilation 2021-07-28 11:06:27 +02:00
Raúl Marín
7f6bf6513f Link keeper-bench to clickhouse_common_zookeeper 2021-04-19 11:46:28 +02:00
alesapin
e9e9a7d7d5 Upload binary via scp 2021-04-14 19:25:48 +03:00
alesapin
c506e3218b Teaching jepsen to run external programs 2021-04-14 16:40:53 +03:00
alesapin
a893cd3fe6 Integrating into jepsen 2021-04-14 12:01:33 +03:00
alesapin
9a59c12f7e Fix some stupid things 2021-04-13 16:26:55 +03:00
alesapin
8653975f83 Some missed files 2021-04-13 15:36:47 +03:00
alesapin
b115b8af3d Something working 2021-04-13 14:55:08 +03:00
alesapin
13d3e59b6a More fixes 2021-04-13 10:33:18 +03:00
alesapin
05959d482b Better 2021-04-12 18:40:42 +03:00
alesapin
fea0ec5046 Some code 2021-04-12 11:10:23 +03:00