Commit Graph

986 Commits

Author SHA1 Message Date
Azat Khuzhin
a16535687e Fix typo for parallel link jobs condition 2020-12-24 22:57:44 +03:00
Denis Glazachev
1ddea6d7ee
Allow AppleClang builds 2020-12-24 22:08:20 +04:00
alexey-milovidov
e06b251121
Merge pull request #18441 from azat/ccache-SOURCE_DATE_EPOCH
Ignore SOURCE_DATE_EPOCH for newer ccache (4+)
2020-12-24 11:49:07 +03:00
Azat Khuzhin
763844beac Make poco library path variable scope less global 2020-12-23 23:55:39 +03:00
Azat Khuzhin
d97455a94b Ignore SOURCE_DATE_EPOCH for newer ccache (4+)
ccache 4+ starts respecting SOURCE_DATE_EPOCH [1], it will include it
into the hash of the manifest.

SOURCE_DATE_EPOCH will be passed from debhelpers, by extracting last
entry from d/changelog (or current time if there is entries)

And this will make ccache unusable.

Fix this by ignoring SOURCE_DATE_EPOCH, like current ccache version on
CI does (3.7.7)

  [1]: 238553a1c4/src/ccache.cpp (L1279)
2020-12-23 22:15:57 +03:00
Alexey Milovidov
b99634dc5d Merge branch 'master' into harmful 2020-12-21 03:03:10 +03:00
Alexey Milovidov
bf2df558d4 Merge branch 'master' into FawnD2-switch-upstream-for-arrow-submodule 2020-12-20 09:38:46 +03:00
alexey-milovidov
41b2503d1a
Merge pull request #18114 from azat/20.13-gcc10-sanitizers
gcc10 sanitizers support
2020-12-19 12:54:36 +03:00
Alexey Milovidov
42a4e38f08 Merge branch 'master' into harmful 2020-12-17 06:28:55 +03:00
Azat Khuzhin
fd19fa1b70 Disable grpc protocol by default for TSAN and gcc
Since libtsan.a already has them:

    ld.lld: error: duplicate symbol: RunningOnValgrind
    >>> defined at dynamic_annotations.cc:99 (../contrib/abseil-cpp/absl/base/dynamic_annotations.cc:99)
    >>>            dynamic_annotations.cc.o:(RunningOnValgrind) in archive contrib/abseil-cpp/absl/base/libabsl_dynamic_annotations.a
    >>> defined at tsan_interface_ann.o:(.text+0x15A0) in archive /usr/lib/gcc/x86_64-linux-gnu/10/libtsan.a

    ld.lld: error: duplicate symbol: AnnotateMemoryIsInitialized
    >>> defined at dynamic_annotations.cc:75 (../contrib/abseil-cpp/absl/base/dynamic_annotations.cc:75)
    >>>            dynamic_annotations.cc.o:(AnnotateMemoryIsInitialized) in archive contrib/abseil-cpp/absl/base/libabsl_dynamic_annotations.a
    >>> defined at tsan_interface_ann.o:(.text+0x1600) in archive /usr/lib/gcc/x86_64-linux-gnu/10/libtsan.a

    ld.lld: error: duplicate symbol: AnnotateMemoryIsUnt show initialized
    >>> defined at dynamic_annotations.cc:75 (../contrib/abseil-cpp/absl/base/dynamic_annotations.cc:75)
    >>>            dynamic_annotations.cc.o:(AnnotateMemoryIsUninitialized) in archive contrib/abseil-cpp/absl/base/libabsl_dynamic_annotations.a
    >>> defined at tsan_interface_ann.o:(.text+0x1610) in archive /usr/lib/gcc/x86_64-linux-gnu/10/libtsan.a

    ...

And after this patch I successfully managed to build with thread
sanitizer under gcc.
2020-12-16 21:31:03 +03:00
Azat Khuzhin
c862ae0c42 Explicitly link with -llib$SANITIZER for gcc
gcc with -nodefaultlibs does not add sanitizers library during linkage
with -static-libasan and similar, fix this, by add them explicitly.

From the gcc(1) about -nodefaultlibs:

    Do not use the standard system libraries when linking. Only the
    libraries you specify are passed to the linker, and options specifying
    linkage of the system libraries, such as -static-libgcc or
    -shared-libgcc, are ignored. The standard startup files are used
    normally, unless -nostartfiles is used.

Plus checked it manually, w/o -nodefaultlibs everything works without
this explicit linkage.

After this patch UBSAN under gcc compiled successfully.

v2: freebsd and darwin
2020-12-16 21:31:03 +03:00
Azat Khuzhin
1dca6e9269 cmake/linux/default_libs.cmake: fix alignment 2020-12-16 21:31:03 +03:00
Azat Khuzhin
90df89b504 cmake/sanitizers.cmake: tiny refactoring 2020-12-16 21:31:03 +03:00
Alexey Milovidov
dabde573df Adjust CMake 2020-12-16 19:30:23 +03:00
Azat Khuzhin
8de0c0e8fc Fix warning message for unusupported -fsanitize-blacklist 2020-12-15 02:29:09 +03:00
Azat Khuzhin
519d89dc9f Do not pass -fsanitize-blacklist for gcc (it does not support it) for UBSAN 2020-12-15 02:24:28 +03:00
Azat Khuzhin
75153c9663 build: ThinLTO provides its own parallel linking, limit to 2 in case of ThinLTO 2020-12-11 01:32:38 +03:00
Maksim Kita
5b57c59a3b Updated fast_float integration 2020-12-06 23:37:55 +03:00
Maksim Kita
87c50602bc Fast float updated implementation 2020-12-06 23:37:35 +03:00
Maksim Kita
80d66b8868 FastFloat library integration 2020-12-06 23:37:35 +03:00
Ivan
315ff4f0d9
ANTLR4 Grammar for ClickHouse and new parser (#11298) 2020-12-04 05:15:44 +03:00
FawnD2
26488467f8 Merge branch 'master' into switch-upstream-for-arrow-submodule 2020-11-29 15:53:28 +03:00
Denis Glazachev
0e6dd287e7 Fix CMake generation and build for native Xcode and AppleClang 2020-11-27 20:33:16 +04:00
Nikolai Kochetov
9291bbb04b
Merge pull request #16804 from vdimir/ip-dict-no-trie
sorted-array based ip_dict
2020-11-26 19:26:06 +03:00
Alexander Kuzmenkov
394b81ac46 Merge remote-tracking branch 'origin/master' into HEAD 2020-11-25 23:38:55 +03:00
Nikolai Kochetov
729272391f
Merge branch 'master' into ip-dict-no-trie 2020-11-25 23:07:19 +03:00
Vitaly Baranov
8d96a11d8d Update grpc build scripts. 2020-11-24 17:53:34 +03:00
myrrc
fbb0e6e6aa Merge remote-tracking branch 'upstream/master' into improvement/diff-types-in-avg-weighted 2020-11-24 16:04:17 +03:00
robot-clickhouse
dc19fba36f Auto version update to [20.13.1.1] [54444] 2020-11-23 10:29:26 +03:00
robot-clickhouse
67e9901cda Auto version update to [20.12.1.5236] [54443] 2020-11-23 10:26:45 +03:00
vdimir
e2fac19686
Remove libbtrie 2020-11-21 21:31:15 +03:00
myrrc
a8d8dd7d3e Merge remote-tracking branch 'upstream/master' into improvement/diff-types-in-avg-weighted 2020-11-12 14:50:59 +03:00
sundy-li
46c01eb7a2 improve unbundle build 2020-11-11 09:08:53 +08:00
sundy-li
fb7066d73d * fix fasttest and cmake && pipline for all_scan
* unique the keys
* add inputstream && outputstream
2020-11-11 09:08:53 +08:00
sundy-li
c7617173c4 add sync_file_range for glibc-compatibility 2020-11-11 09:08:52 +08:00
sundy-li
1fa4906dd2 update cmake && remove useless codes 2020-11-11 09:08:52 +08:00
sundy-li
20315edae8 update cmake 2020-11-11 09:08:52 +08:00
root
e9de5b6ad4 Add StorageEmbeddedRocksdb Engine 2020-11-11 09:08:52 +08:00
myrrc
e460248624 Merge remote-tracking branch 'upstream/master' into improvement/diff-types-in-avg-weighted 2020-11-10 14:54:24 +03:00
Danila Kutenin
3c6794bf37 Add Floyd-Rivest selection algorithm instead of std::partial_sort 2020-11-09 20:22:05 +03:00
FawnD2
6a89d965fd Merge branch 'master' into switch-upstream-for-arrow-submodule 2020-11-07 22:34:55 +03:00
FawnD2
65e4fa555b Remove build branch with internal parquet native cmake 2020-11-07 19:49:36 +03:00
robot-clickhouse
f7b7854ace Auto version update to [20.12.1.1] [54443] 2020-11-05 21:52:50 +03:00
robot-clickhouse
19ea4f1a95 Auto version update to [20.11.1.5109] [54442] 2020-11-05 21:50:15 +03:00
myrrc
ab1b7267b6 fixed the build, added some comments 2020-11-03 17:56:07 +03:00
alexey-milovidov
2d80c98964
Merge pull request #16509 from kitaisreal/cmake-moved-power-pc-check-in-tools
CMake moved power pc check in tools
2020-10-30 16:03:50 +03:00
Maksim Kita
d3f08b21de CMake moved power pc check in tools 2020-10-29 11:28:40 +03:00
Alexey Milovidov
91e80598cd Add "harmful" library 2020-10-28 02:00:16 +03:00
Mikhail Filimonov
41971e073a
Fix typos reported by codespell 2020-10-27 12:04:03 +01:00
alexey-milovidov
2b00b5391a
Merge pull request #11844 from Enmk/AES_encrypt_decrypt
encrypt and decrypt functions
2020-10-20 22:57:35 +03:00
Alexey Milovidov
19e31578df Better message about build error on Mac #16072 2020-10-16 15:00:26 +03:00
Alexey Milovidov
5e502c52b3 Merge branch 'master' into AES_encrypt_decrypt 2020-10-14 16:30:23 +03:00
Azat Khuzhin
0f5ba33be8 Exclude zero-as-null-pointer-constant for libstdc++ under WEVERYTHING 2020-10-11 22:11:18 +03:00
alexey-milovidov
557002262f
Merge pull request #15828 from azat/unbundled-INTERFACE_COMPILE_DEFINITIONS
Fix INTERFACE_COMPILE_DEFINITIONS for IMPORTED targets
2020-10-11 19:28:18 +03:00
Azat Khuzhin
35335f07db Fix INTERFACE_COMPILE_DEFINITIONS for IMPORTED targets
INTERFACE_COMPILE_DEFINITIONS does not work IMPORTED targets:

From 3.6:

    Specify compile definitions to use when compiling a given <target>.
    The named <target> must have been created by a command such as
    add_executable() or add_library() and must not be an Imported Target.

Since 3.11:

    Specify compile definitions to use when compiling a given <target>.
    The named <target> must have been created by a command such as
    add_executable() or add_library() and must not be an ALIAS target.

And this causes the -Wundef warning:
    src/Functions/FunctionsHashing.h:1326:5: warning: 'USE_XXHASH' is not defined, evaluates to 0 [-Wundef]
2020-10-11 09:06:01 +03:00
Azat Khuzhin
4e49812e32 Enable Wzero-as-null-pointer-constant only for libcxx
Since libstdc++ has some of such compares for 3way compare:

    /src/ch/clickhouse/src/Common/UInt128.h:61:71: warning: zero as null pointer constant [-Wzero-as-null-pointer-constant]
        bool inline operator>= (const UInt128 rhs) const { return tuple() >= rhs.tuple(); }
                                                                          ^~
                                                                          nullptr
    /usr/include/c++/10.2.0/tuple:1426:5: note: while rewriting comparison as call to 'operator<=>' declared here
        operator<=>(const tuple<_Tps...>& __t, const tuple<_Ups...>& __u)
2020-10-10 22:48:36 +03:00
Azat Khuzhin
0813c1073b Add -Wzero-as-null-pointer-constant for gcc 2020-10-10 22:45:39 +03:00
robot-clickhouse
554fa482e6 Auto version update to [20.11.1.1] [54442] 2020-10-10 18:39:58 +03:00
robot-clickhouse
94be292b92 Auto version update to [20.10.1.4881] [54441] 2020-10-10 18:37:28 +03:00
alesapin
f950198fa5 Allow to use c11 with clang pedantic 2020-10-06 19:00:42 +03:00
Vitaly Baranov
dd634aa731
Merge pull request #15491 from vitlibar/update-grpc
Update gRPC to the latest version
2020-10-02 15:54:35 +03:00
alesapin
c5df9433f0
Merge pull request #15239 from ClickHouse/100_percent_lld_11_for_clang_11
Build ClickHouse for release with clang-11
2020-10-02 14:59:29 +03:00
Vitaly Baranov
65a1684ed7 Fix gRPC build scripts. 2020-10-02 01:45:01 +03:00
Vitaly Baranov
8a3b024a6d Fix using external protobuf library for the build. 2020-10-01 06:28:54 +03:00
tavplubix
a4b4895b26
Merge pull request #15435 from ClickHouse/ADQM-160-fix
Try merge #14265 again
2020-09-30 11:21:55 +03:00
Alexey Milovidov
b0e8119744 Merge branch 'master' into clang-tidy-11 2020-09-30 01:17:17 +03:00
alesapin
078f7075ba Fix cmake 2020-09-29 15:15:45 +03:00
Alexander Tokmakov
a7d3a024c7 Revert "Revert "Test and doc for PR12771 krb5 + cyrus-sasl + kerberized kafka""
This reverts commit c298c633a7.
2020-09-29 11:56:37 +03:00
tavplubix
c298c633a7
Revert "Test and doc for PR12771 krb5 + cyrus-sasl + kerberized kafka" 2020-09-24 16:10:24 +03:00
Ilya Yatsishin
7dad84ea6b
Merge pull request #14265 from arenadata/ADQM-160
Test and doc for PR12771 krb5 + cyrus-sasl + kerberized kafka
2020-09-23 19:02:58 +03:00
Ilya Golshtein
e2ee97202b USE_LIBGSASL not required to use internal librdkafka 2020-09-22 23:16:34 +03:00
alesapin
269d225637 Merge branch 'master' into myrrc-feature-cmake-flags-doc-generator 2020-09-22 17:00:02 +03:00
myrrc
eb1bb88fa0 updated the gtest find cmake file 2020-09-19 20:45:11 +03:00
myrrc
c78d9f9f38 moved the generators to docs/ folder 2020-09-19 19:42:36 +03:00
Alexey Milovidov
059646743b Remove OpenCL 2020-09-19 17:20:00 +03:00
Alexey Milovidov
cac65b38f2 Merge branch 'master' into clang-tidy-11 2020-09-19 00:02:44 +03:00
myrrc
f6bce8bd1e reverted USE to ENABLE 2020-09-18 17:18:59 +03:00
myrrc
3953ed485b added sub-tables in report, replaced some USE_ -> ENABLE_ for
consistency
2020-09-18 16:09:22 +03:00
Alexey Milovidov
799a675b5d Merge branch 'master' into AES_encrypt_decrypt 2020-09-17 21:42:51 +03:00
myrrc
7cd5c0d34f Merge remote-tracking branch 'upstream/master' into feature/cmake-flags-doc-generator 2020-09-17 19:17:09 +03:00
myrrc
ac606dca77 updated cmake/ files, added some comments 2020-09-17 18:37:23 +03:00
Vitaly Baranov
3356d75b23
Merge pull request #13156 from azat/cluster-secure
Secure inter-cluster query execution (with initial_user as current query user) [v3]
2020-09-17 17:11:00 +03:00
Alexey Milovidov
9ceb4934c2 Use clang-tidy 11 2020-09-17 13:32:16 +03:00
Simon Liu
c41e230589 Modify the minimum version of the Clang compiler that Clickhouse can support (8 -> 9),
The main reason is that in Clang 8.0 "#pragma clang attribute" cannot be used in the namesapce scope.
2020-09-16 22:14:30 +08:00
alesapin
a75254766e
Merge pull request #14609 from ClickHouse/update_to_gcc_10
Update default build to gcc-10
2020-09-15 09:49:43 +03:00
Azat Khuzhin
85b63ecadf Bump revision manually (to make it compatible with other version from this tag)
As @alexey-milovidov wrote.

P.S. I did not use ./utils/release/release_lib.sh (via ./release), since
it is pretty complex (it fetches tags and so on)

The following macros has been updated:
- VERSION_REVISION -- usually bumped with utils/release/release_lib.sh
  (interesting that even if there were no changes)
- DBMS_MIN_REVISION_WITH_INTERSERVER_SECRET
- DBMS_TCP_PROTOCOL_VERSION -- does not affect anything, some internal
  yandex stuff
2020-09-15 01:36:28 +03:00
alesapin
fb7fc28e6f
Update warnings.cmake 2020-09-14 12:20:43 +03:00
alesapin
8075ce2809
Update warnings.cmake 2020-09-12 15:42:32 +03:00
alesapin
e25b1da29f Disable -Wstringop-overflow for gcc-10 2020-09-11 13:53:26 +03:00
Azat Khuzhin
0f4fdcbf38 Pass -fsanitize-blacklist for TSAN only under clang (gcc does not support this)
And no such check for -fsnaitize=memory, since gcc does not support it
anyway.
2020-09-10 02:07:28 +03:00
alesapin
4ba8f8960b Increase frame-larger-than 2020-09-09 12:53:24 +03:00
robot-clickhouse
8def718661 Auto version update to [20.10.1.1] [54440] 2020-09-08 17:04:41 +03:00
robot-clickhouse
7bc3c43a38 Auto version update to [20.9.1.4585] [54439] 2020-09-08 17:04:06 +03:00
alesapin
b91f37169d Fix cmake 2020-09-08 10:09:40 +03:00
Vasily Nemkov
b147ffcd43 encrypt, aes_encrypt_mysql, decrypt, aes_decrypt_mysql functions
Functions to encrypt/decrypt any input data with OpenSSL's ciphers
with custom key, iv, and add (-gcm mode only).

_mysql versions are 100% compatitable with corresponding MySQL functions

Supported modes depend on OpenSSL version, but generally are:
aes-{128,192,56}-{ecb,cbc,cfb1,cfb8,cfb128,ofb,gcm}

Please note that in a -gcm mode a 16-byte tag is appended to the ciphertext
on encryption and is expected to be found at the end of ciphertext on decryption.

Added tests that verify compatibility with MySQL functions,
and test vectors for GCM mode from OpenSSL.

Added masking rules for aes_X funtions
Rules are installed by default to config.d/query_masking_rules.xml
2020-09-01 12:42:15 +03:00
robot-clickhouse
e2fa0eae2f Auto version update to [20.9.1.1] [54439] 2020-08-31 23:07:41 +03:00
robot-clickhouse
f63e5faac0 Auto version update to [20.8.1.4513] [54438] 2020-08-31 23:07:05 +03:00
alesapin
30cf59fc9a Revert version update 2020-08-31 22:51:56 +03:00
robot-clickhouse
59a3937adb Auto version update to [20.8.1.4513] [54438] 2020-08-31 19:41:50 +03:00
Konstantin Podshumok
a9d2de595d
xcmake: enbale ccache by default if it is installed
Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-27 14:27:00 +03:00
Konstantin Podshumok
8ce844a40d
cmake: when USE_STATIC_LIBRARIES prefer bundled brotli
even if UNBUNDLED=ON because libbrotli*.a and similar are not
available in most of the systems

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:44 +03:00
Konstantin Podshumok
e296997b6c
cmake: fix potential curl linking problems
Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:44 +03:00
Konstantin Podshumok
68a921cdea
cmake: use bundled rdkafaka for in unbundled tests for now
Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:43 +03:00
Konstantin Podshumok
5097793872
cmake: Fix odbc in unbudled
Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:43 +03:00
Konstantin Podshumok
5d13c1f03f
cmake: unbundled: libxml2 requires liblzma when building static
Squashed:
- fixup hdfs3-libxml2

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:43 +03:00
Konstantin Podshumok
ef858027d4
unbundled: fix detection of mariadb headers
Squashed:
- unbundled: add warning about mariadbclient dependencies

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:42 +03:00
Konstantin Podshumok
d989e59699
unbundled: link with termcap when using static llvm
ld.lld: error: undefined symbol: setupterm
referenced by Process.cpp.o:(llvm::sys::Process::FileDescriptorHasColors(int)) in archive /usr/lib/llvm-9/lib/libLLVMSupport.a

Squashed:
- fixup termcap + external llvm

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:42 +03:00
Konstantin Podshumok
d739c6a38f
Revert "Merge pull request #13689 from ClickHouse/remove-termcap"
This reverts commit da8d8f35dd, reversing
changes made to c3d0a87b8b.
2020-08-25 20:16:42 +03:00
Konstantin Podshumok
cc6a59d59b
cmake: disable internal ORC when using external Parquet
Squashed:
- fix internal poco linking with `zlib`

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:42 +03:00
Konstantin Podshumok
e0939a8666
unbundled: add thrift when using external parquet
Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:41 +03:00
Konstantin Podshumok
17c46faaa7
cmake: fix parquet/arrow variables
squashed:

- sync FindArrow.cmake and FindParquet.cmake with arrow repo
- unbundled: add arrow to dbms link libraries
- cmake: fix-up unbundled Arrow support

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:41 +03:00
Konstantin Podshumok
3e3b67601f
cmake: USE_INTERNAL_GSASL_LIBRARY by default when USE_STATIC_LIBRARIES
Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:41 +03:00
Konstantin Podshumok
2b867cb2db
cmake: disable external avro as we don't support it yet
Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:41 +03:00
Konstantin Podshumok
2c9c7c9e95
cmake: USE_INTERNAL_H3_LIBRARY is always ON by default
as I don't know any system with package for it

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:40 +03:00
Konstantin Podshumok
e101db600c
cmake: set USE_INTERNAL_SPARSEHASH_LIBRARY=ON by default
as we don't know any distribution with sparsehash-c11 package

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:40 +03:00
Konstantin Podshumok
f40a9f5b20
cmake: set USE_INTERNAL_ORC and USE_INTERNAL_HDFS3 to OFF by default even in unbundled
Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:40 +03:00
Konstantin Podshumok
139ba52944
cmake: unbundled + use_static_libs = no ldap
Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:40 +03:00
Konstantin Podshumok
0c30721b91
cmake: set ENABLE_ORC to OFF by default on platforms that don't support protobuf or parquet
Squashed:
- cmake: Better diagnostic message about broken ORC dependencies

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:39 +03:00
Konstantin Podshumok
3ec7a4bc53
cmake: make sure ENABLE_GRPC is off by default when PROTOBUF is OFF by default
Squashed:
- cmake: make sure protobuf compiler and snappy are there for unbundled build
- cmake: Turn ON internal GRPC library by default until relevant features will be implemented
- cmake: allow unbundled grpc

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:39 +03:00
Konstantin Podshumok
986bdf86ee
cmake: don't enable internal llvm with disabled embedded compiler
Even if UNBUNDLED is off

Squashed:
- cmake: fix misleading error message about internal llvm on unsupported arches
- cmake: re-do some checks for LLVM options

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:39 +03:00
Konstantin Podshumok
1913522233
cmake: always use internal poco library as it went too far from upstream
Squashed:
- cmake: move USE_INTERNAL_POCO_LIBRARY option to separate file
- point contrib/poco to "add <atomic> to TCPServerDispatcher"

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:38 +03:00
Konstantin Podshumok
528f9d587f
cmake: find/s3: use FAIL_ON_UNSUPPORTED_OPTIONS_COMBINATION
Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:38 +03:00
Konstantin Podshumok
d456aa86ef
Revert "Revert "cmake: Add option to fail configuration instead of auto-reconfiguration""
This reverts commit 89419ceb9b
(curl part moved to separate commit)

Squashed:
- termcap removed
- fix for cassandra on apple merged
- cmake: fix "Can't find system zlib library" in unbundled build
- cmake: fix condition when testing for rdkafka platform
- cmake: PROTOBUF_OLD_ABI_COMPAT shouldn't be enabled for internal protobuf

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:37 +03:00
alexey-milovidov
fb0e68f808
Merge pull request #12771 from arenadata/ADQM-109
krb5 + cyrus-sasl + kerberized kafka
2020-08-20 20:13:01 +03:00
Ilya Yatsishin
e0d86f8b45
Merge pull request #13708 from qoega/cassandra-macos-rpath
Fix cassandra build on macos
2020-08-14 15:49:47 +03:00
Yatsishin Ilya
4c1e5d9d56 Fix cassandra build on macos 2020-08-14 09:25:08 +03:00
Alexey Milovidov
ad20a384c1 Remove useless code 2020-08-14 02:55:10 +03:00
alexey-milovidov
89419ceb9b
Revert "cmake: Add option to fail configuration instead of auto-reconfiguration" 2020-08-13 23:10:06 +03:00
Konstantin Podshumok
d22de6c7e9 cmake: Make sure USE_SIMDJSON default value is in sync with ENABLE_LIBRARIES
Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-09 21:37:46 +03:00
Konstantin Podshumok
fe56697893 cmake: Add option to fail configuration instead of auto-reconfiguration
squashed:
find/msgpack.cmake - merge collision fix, trivial

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-09 21:37:26 +03:00
robot-clickhouse
a82c0f5371 Auto version update to [20.8.1.1] [54438] 2020-08-07 21:45:49 +03:00
robot-clickhouse
19f3800a55 Auto version update to [20.7.1.4310] [54437] 2020-08-07 21:45:15 +03:00
Alexey Milovidov
cf6ccbc656 Adjustments 2020-08-03 20:44:23 +03:00
Alexey Milovidov
f5f0c788b8 Relax the limit 2020-08-03 00:10:57 +03:00
Alexey Milovidov
cf388cc32f Slightly lower the limit 2020-08-02 04:35:49 +03:00
Ilya Golshtein
ff92812ac5 openssl to link with krb5 2020-07-31 13:49:08 +03:00
Ilya Golshtein
017a433403 some cleanup, disabling sasl really works 2020-07-31 13:49:08 +03:00
Ilya Golshtein
d93f0c7548 initial - kerberized kafka works 2020-07-31 13:49:07 +03:00
Alexey Milovidov
c202691319 Merge branch 'master' into stack-frams-size-limit 2020-07-30 23:53:52 +03:00
alesapin
d52f67d24e Fix abtesting build 2020-07-29 14:00:04 +03:00
Alexey Milovidov
50bbfc848d Merge branch 'master' into stack-frams-size-limit 2020-07-21 14:45:15 +03:00
Vitaly Baranov
0b17595a91
Merge pull request #12423 from vitlibar/update-simdjson
Update simdjson
2020-07-20 10:15:38 +03:00
Vitaly Baranov
4cc101f1d4 Fix build scripts. 2020-07-17 10:30:13 +03:00
Vitaly Baranov
000b197ad1
Merge pull request #11234 from traceon/ldap-per-user-authentication
Add LDAP authentication support
2020-07-16 13:17:21 +03:00
Denis Glazachev
59cb758cf7 Merge branch 'master' into ldap-per-user-authentication 2020-07-16 02:29:24 +04:00
alesapin
e35c49faa2 Merge branch 'master' into fasttest 2020-07-15 22:35:46 +03:00
Alexander Kuzmenkov
3e6b9f297f Some provisions for Android build 2020-07-15 14:16:00 +03:00
alesapin
a31109f023 Better submdoules 2020-07-14 21:44:57 +03:00
alesapin
0740b88d6b Merge branch 'master' into fasttest 2020-07-14 15:19:05 +03:00
robot-clickhouse
0f23642a3d Auto version update to [20.7.1.1] [54437] 2020-07-13 18:26:03 +03:00
robot-clickhouse
0c5be7309c Auto version update to [20.6.1.4066] [54436] 2020-07-13 18:25:23 +03:00
alesapin
a9824fd650 Better cmake and less libraries 2020-07-10 22:08:18 +03:00
alesapin
4ab5edadb7 Less libraries 2020-07-10 12:47:50 +03:00
Denis Glazachev
5a4762bb8a
Merge branch 'master' into ldap-per-user-authentication 2020-07-09 14:50:02 +04:00
alexey-milovidov
f021376874
Merge pull request #12178 from azat/gcc10-build-fixes
gcc10/cmake build fixes
2020-07-09 01:49:07 +03:00
Denis Glazachev
9effacfbc1 Merge branch 'master' into ldap-per-user-authentication
* master: (1102 commits)
  Update README.md
  Update README.md
  Update README.md
  Update index.md
  [docs] add intrdocution for statements page (#12189)
  Revert "Run perf tests with memory sampling (for allocations >1M)"
  Sanitize LINK_LIBRARIES property for the directories (#12160)
  [docs] refactor Domains overview (#12186)
  DOCS-647: toStartOfSecond (#12190)
  [docs] add intrdocution for commercial page (#12187)
  DOCSUP-1348 Russian translation for new functions (#133) (#12194)
  changelog fixes
  Update index.md (#12191)
  Update zh kafka.md title (#12192)
  Added test for #3767
  style fix for #12152
  Tests for fixed issues #10846 and #7347
  changelog fixes
  [docs] introduction for special table engines (#12170)
  [docs] introduction for third-party interfaces (#12175)
  ...

# Conflicts:
#	src/Access/ya.make
#	src/Common/ErrorCodes.cpp
2020-07-08 00:42:09 +04:00
Azat Khuzhin
a5cb0aed12
Sanitize LINK_LIBRARIES property for the directories (#12160)
When you will try to link target with the directory (that exists), cmake will
skip this without an error, only the following warning will be reported:

    target_link_libraries(main /tmp)

    WARNING: Target "main" requests linking to directory "/tmp".  Targets may link only to libraries.  CMake is dropping the item.

And there is no cmake policy that controls this.
(I guess the reason that it is allowed is because of FRAMEWORK for OSX).

So to avoid error-prone cmake rules, this can be sanitized.
There are the following ways:
- overwrite target_link_libraries()/link_libraries() and check *before*
  calling real macro, but this requires duplicate all supported syntax
  -- too complex
- overwrite target_link_libraries() and check LINK_LIBRARIES property, this
  works great
  -- but cannot be used with link_libraries()
- use BUILDSYSTEM_TARGETS property to get list of all targets and sanitize
  -- this will work.

I also tested it with the following patch:

    $ git di
    diff --git a/base/daemon/CMakeLists.txt b/base/daemon/CMakeLists.txt
    index 26d59a57e7..35e6ff6432 100644
    --- a/base/daemon/CMakeLists.txt
    +++ b/base/daemon/CMakeLists.txt
    @@ -9,4 +9,5 @@ target_link_libraries (daemon PUBLIC loggers PRIVATE clickhouse_common_io clickh

     if (USE_SENTRY)
         target_link_libraries (daemon PRIVATE ${SENTRY_LIBRARY})
    +    target_link_libraries (daemon PRIVATE /tmp)
     endif ()

And it works:

    CMake Error at cmake/sanitize_target_link_libraries.cmake:48 (message):
       daemon requested to link with directory: /tmp
    Call Stack (most recent call first):
      cmake/sanitize_target_link_libraries.cmake:55 (sanitize_link_libraries)
      CMakeLists.txt:425 (include)

Refs: #12041
2020-07-07 19:22:41 +03:00
Azat Khuzhin
2d2a34d6cd Use ENABLE_LIBRARIES option for AMQP-CPP
This is tiny fix, there are more problems that just this small little
bit.
2020-07-06 23:34:40 +03:00
alexey-milovidov
1719ab1ec5
Merge pull request #12041 from azat/curl-proper-cmake
Rewrite curl dependency in a more ch compatible way
2020-07-06 06:31:51 +03:00
Azat Khuzhin
e6aacaac5c Do not enable sentry if ENABLE_LIBRARIES is not set 2020-07-04 16:41:22 +03:00
Azat Khuzhin
0700a705bc Rewrite curl dependency in a more ch compatible way
- add support of unbundled curl
- add CURL::libcurl libraries
- avoid explicit linkage of daemon with curl (added with sentry)
- set CACHE variables for non-direct users:
  - mariadb-connector-c
  - aws-s3-cmake
  - sentry-native

Cc: @alexey-milovidov
Cc: @alesapin (requires docker image update)
Cc: @abyss7

Refs: #11300
Refs: #8011
Refs: #8905

v2: replace cmake/find/curl.cmake with proper contrib/curl-cmake (as
pointed by @abyss7, cmake/find/*.cmake is deprecated)
2020-07-03 00:57:08 +03:00
alesapin
64583ceb22 Merge branch 'master' into add-storage-rabbitmq-read-only 2020-07-02 16:08:29 +03:00
kssenii
3d2cc9d4b2 Remove libevent library 2020-06-29 12:11:17 +00:00
alesapin
3fc65b3269 Merge branch 'master' into kssenii-rabbit-mq 2020-06-24 20:14:28 +03:00
Ivan Blinkov
45d1ca2567 merge master 2020-06-24 00:18:16 +03:00
robot-clickhouse
4bd47b8adc Auto version update to [20.6.1.1] [54436] 2020-06-22 20:40:26 +03:00
robot-clickhouse
bc7f98141f Auto version update to [20.5.1.3833] [54435] 2020-06-22 20:39:51 +03:00
alexey-milovidov
efc57fb063
Make the comment more readable. 2020-06-22 17:59:38 +03:00
Ivan Blinkov
5f73c87c71 change used flag 2020-06-11 15:18:19 +03:00
kssenii
18820814f5 Merge 2020-06-10 23:25:33 +00:00
Denis Glazachev
9e3a28a6b8 Merge branch 'master' into ldap-per-user-authentication
* master: (414 commits)
  Update file.md
  Update merge.md
  Update dictionary.md
  Update external-data.md
  Update distributed.md
  Update null.md
  Update set.md
  Update join.md
  Update url.md
  Update view.md
  Update materializedview.md
  Update memory.md
  Update buffer.md
  Update generate.md
  removed a sentence about global lock during rename (#11577)
  greatCircleAngle en translation (#11584)
  Update configuration-files.md
  try fix flacky test
  Update why.html
  Update rich.html
  ...

# Conflicts:
#	src/Common/ErrorCodes.cpp
#	utils/ci/jobs/quick-build/run.sh
2020-06-11 03:06:17 +04:00
Ivan Blinkov
67ccd6703e maybe fix the unbundled gcc build 2020-06-11 00:03:13 +03:00
Ivan Blinkov
6191d33bd9 Do not cache frames inside StackTrace 2020-06-10 16:30:12 +03:00
Ivan Blinkov
90ee4d52f4 merge master 2020-06-10 13:18:41 +03:00
Ivan Blinkov
f872c639ed Try to disable linker options from sentry 2020-06-09 20:44:56 +03:00
Alexander Tokmakov
6bb68329f8 Merge branch 'master' into merging_external_source_cassandra 2020-06-09 19:51:14 +03:00
Ivan Blinkov
6f7064928f Merge branch 'master' of github.com:ClickHouse/ClickHouse into sentry 2020-06-09 19:07:57 +03:00
Ivan
47ad338cb2
Refactor CMake build files (#11390)
* Get rid of lib_name.cmake
* Refactor Boost and HyperScan libraries
* Refactor lz4
* Fix build with xxHash
2020-06-09 13:54:49 +03:00
Ivan Blinkov
5b3fef526e Merge branch 'master' of github.com:ClickHouse/ClickHouse into sentry 2020-06-09 11:51:29 +03:00
Alexey Milovidov
48e48a1e09 Decrease maximum stack frame size while we can 2020-06-08 23:00:17 +03:00
Alexey Milovidov
475af33319 Avoid too large stack frames 2020-06-08 20:35:45 +03:00
Alexey Milovidov
d91dab0d8f Fixed "unbundled" build 2020-06-08 02:11:37 +03:00
Ivan Blinkov
6f0e754f1e try to fix the glibc compatibility 2020-06-04 11:57:01 +03:00
Alexander Tokmakov
e67837bc4a cleenup 2020-06-04 00:11:17 +03:00
Ivan Blinkov
2f74c58b05 experiment with BUILD_SHARED_LIBS 2020-06-02 23:50:18 +03:00
Ivan Blinkov
921b7c7480 partial revert 2020-06-02 22:25:34 +03:00
Ivan Blinkov
711e7d101d experiment 2020-06-02 21:50:55 +03:00
Ivan Blinkov
0e8d559d83 disable for splitted 2020-06-02 13:13:21 +03:00
Ivan Blinkov
9c1ac2f1c1 experiment 2020-06-02 09:46:36 +03:00
Ivan Blinkov
5a32d79135 experiment 2020-06-01 23:55:32 +03:00
Ivan Blinkov
65ff11aeac old cmake compatibility 2020-06-01 22:49:00 +03:00
Ivan Blinkov
8babd4d18c experiment 2020-06-01 21:36:33 +03:00
Ivan Blinkov
1ce25238f8 try fix some more build issues 2020-06-01 19:49:11 +03:00
Alexander Tokmakov
62761eddcc Merge branch 'master' into merging_external_source_cassandra 2020-06-01 14:44:46 +03:00
Ivan Blinkov
fcc7ff0ef9 Merge branch 'master' of github.com:ClickHouse/ClickHouse into sentry 2020-06-01 08:42:03 +03:00
Denis Glazachev
e8144976fe Merge branch 'master' into ldap-per-user-authentication 2020-05-31 15:09:16 +04:00
Denis Glazachev
165dc4e109 Disable system static OpenLDAP linking support (due to fPIC mismatch) 2020-05-31 15:04:56 +04:00
kssenii
e80b405359 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into add-storage-rabbitmq-read-only 2020-05-31 10:30:53 +00:00
Ivan Blinkov
77d8c9baca Add anonymize option and version tag 2020-05-30 11:02:13 +03:00
Vitaly Baranov
69afc13d55 Fix build scripts related to protobuf and gRPC for Mac. 2020-05-29 23:09:01 +03:00
Ivan Blinkov
95ee742ee7 merge master 2020-05-29 22:56:10 +03:00
Denis Glazachev
ec9cb953b4 Try to find and link with Cyrus SASL and GSSAPI too, if static OpenLDAP libraries are requested 2020-05-29 23:26:41 +04:00
Alexander Tokmakov
8921041706 Merge branch 'master' into merging_external_source_cassandra 2020-05-29 18:20:39 +03:00
Denis Glazachev
9fb0a95c75 Compilation fix: add missing "/include"
Style fix
2020-05-29 16:14:42 +04:00
Denis Glazachev
d9ca9cd9b2 Compilation fix
Typo fix
2020-05-29 14:00:12 +04:00
Maxim Akhmedov
ce52a2c820 Add lost VERSION_* defines to ya.make.versions.inc 2020-05-28 19:44:30 +03:00
Maxim Akhmedov
f5b1ab8e4a Use proper versions in Arcadia build. 2020-05-28 16:46:56 +03:00
Ivan Blinkov
709b4f42c8 Prototype sending crash reports on segfaults 2020-05-27 22:11:04 +03:00
Vitaly Baranov
7b03e36c2a Improve build scripts related to protobuf and gRPC a little more. 2020-05-27 20:14:44 +03:00
Alexander Tokmakov
940132adc4 Merge branch 'master' into merging_external_source_cassandra 2020-05-27 00:13:57 +03:00
kssenii
ad1c0de8db Merge 2020-05-26 17:45:39 +00:00
Vitaly Baranov
58a2172154 Improve build scripts related to protobuf and gRPC. 2020-05-25 18:46:57 +03:00
Alexander Tokmakov
ac54d470da Merge branch 'master' into merging_external_source_cassandra 2020-05-22 17:27:40 +03:00
Alexander Tokmakov
e6ca09e134 fix build 2020-05-22 17:19:33 +03:00
Azat Khuzhin
23044ac02c Disable -Wsequence-point on gcc10 (otherwise it stuck on GatherUtils compiling)
clang (10.0.0 is fine BTW) will warn about this anyway on CI.

For the debug build gcc10:

- before patch:
  - concat.cpp -> >5m (stuck on cc1plus, not as)
  - has.cpp    -> >10m (stuck on cc1plus, not as)

- after this patch:
  - concat.cpp -> 1m16s
  - has.cpp    -> 4m (and most of the time eats, as from binutils 2.34.50.20200508)

Command for build:
- ninja src/Functions/GatherUtils/CMakeFiles/clickhouse_functions_gatherutils.dir/concat.cpp.o
- ninja src/Functions/GatherUtils/CMakeFiles/clickhouse_functions_gatherutils.dir/has.cpp.o

The test case should be reduced and then it can be reported to the gcc
bugzilla.

P.S. Looks like a signal not to switch to gcc10 for now
2020-05-21 21:18:34 +03:00
Alexander Tokmakov
31b6f5f0d2 Merge branch 'master' into merging_external_source_cassandra 2020-05-20 23:44:53 +03:00
Alexander Tokmakov
4b30b3168c try fix build 2020-05-20 23:26:39 +03:00
kssenii
a055e33087 Add libevent & AMQP-CPP libraries 2020-05-20 09:08:27 +03:00
Alexander Tokmakov
175b7aedf3 Merge branch 'master' into merging_external_source_cassandra 2020-05-19 05:21:27 +03:00
Artem Zuikov
97c7447130
Bitonic sort improvements (#10934) 2020-05-19 00:41:23 +03:00
Alexey Milovidov
6b650d0e47 Fix mistake in FreeBSD toolchain 2020-05-17 06:57:16 +03:00
Azat Khuzhin
f748021d9a Use libc-headers only for BUNDLED build (fixes gcc10 unbundled build)
libstdc++ from gcc10 uses pthread_mutex_clocklock() which is not yet
exists in contrib/libc-headres.

P.S. I can prepare an update for libc-contrib
2020-05-16 00:00:38 +03:00
alexey-milovidov
5898f611da Merge pull request #10861 from traceon/contrib-openldap
Add OpenLDAP third-party library integration (system or contrib/build)
2020-05-15 23:13:23 +03:00
Denis Glazachev
bad61a659c Allow Linux aarch64 2020-05-15 15:15:13 +04:00
Ri
fc7afaa639
Bitonic sort on GPU (OpenCL) (#10232) 2020-05-15 03:01:14 +03:00
Denis Glazachev
b68664d332 Normalize CMAKE_SYSTEM_NAME and platform dependent folder names 2020-05-15 00:40:27 +04:00
Denis Glazachev
38320e6444 Normalize CMAKE_SYSTEM_PROCESSOR and platform dependent folder names 2020-05-15 00:25:27 +04:00
Denis Glazachev
3586fb1dc0 Clean and adjust the generated files
Add FreeBSD amd64 generated files/support
2020-05-14 23:53:11 +04:00
Denis Glazachev
36cb24377b Merge branch 'master' into contrib-openldap
* master: (204 commits)
  DOCS-289: randConstant (#10838)
  Update performance_comparison.md
  fix docs build
  Adjust ld+json images, remove feather icons (#10843)
  [docs] faster local/debug build (#10840)
  CLICKHOUSE-4862: some markdown fixes @ ru mergetree.md (#10835)
  CLICKHOUSE-4862: fix link (#10836)
  Some fixes at ru merge-tree-settings.md (#10837)
  Fix MSan failure in cache dictionary
  Fix double whitespace
  Additional assert in ColumnVector
  Fix paths in compiler error messages #10434
  Fix "Arcadia" build
  Fix style check in Block::sortColumns() (sigh)
  Sort iterators to avoid extra std::string creation in Block::sortColumns()
  Optimize Block::sortColumns()
  Better DNS exception message
  Fix logical error in convertFieldToType
  Make order of columns strict in Block::sortColumns()
  Add a test for INSERT into Buffer() with different order of columns (via MV)
  ...
2020-05-13 00:29:09 +04:00
Denis Glazachev
acd8cfc5d2 Added contrib/openldap submodule
Added OpenLDAP find/detection cmake scripts
Added integration for OpenLDAP Linux and Darwin x86_64 platforms (following OpenSSL integration approach)
2020-05-12 23:19:15 +04:00
Alexey Milovidov
99e64729bb Remove obsolete TSan suppressions 2020-05-11 10:05:46 +03:00
Alexey Milovidov
ce59ad8e04 Merge branch 'master' into even-more-warnings 2020-05-10 03:49:12 +03:00
Alexey Milovidov
d9257a8682 Merge branch 'arrow-io-format' of https://github.com/FawnD2/ClickHouse into FawnD2-arrow-io-format 2020-05-10 03:26:10 +03:00
Alexey Milovidov
a576a4fbcd Enable extra warnings for base, utils, programs 2020-05-10 01:59:34 +03:00
Ivan
85d783c247
Poco contrib refactoring (#10396)
* Remove config_common.h
* Refactor libcpuid contrib
* Remove support for libcpuinfo
* Define USE_CPUID in Arcadia
* Refactor Poco libraries
2020-05-08 17:11:19 +03:00
Ivan
038e371570
Update cross-builds to use clang-10 compiler (#10724)
* Update FreeBSD toolchain
* Update cross-builds to use clang-10
2020-05-07 15:32:17 +03:00
Denis Glazachev
69052493eb Cleaned up AppleClang version check 2020-05-06 20:47:13 +04:00
Denis Glazachev
688867d917 Blind fix for AppleClang version and char8_t support check 2020-05-06 19:54:04 +04:00
FawnD2
ea87bd1c64 Merge branch 'master' into arrow-io-format 2020-05-05 18:52:44 +03:00
Alexey Milovidov
3a0b77132d Check for AppleClang 2020-05-04 18:12:06 +03:00
FawnD2
112758b99d Merge branch 'master' into arrow-io-format 2020-05-04 00:53:17 +03:00
alexey-milovidov
aeb5487261
Merge branch 'master' into xcode-build-fix 2020-05-03 05:03:49 +03:00
Ivan
e5ca9a3789
Fix FreeBSD build (#10150)
* Add ranlib into toolchain
* Disable LLVM
2020-05-02 15:07:57 +03:00
FawnD2
538e6c39da Arrow input format 2020-04-28 22:52:22 +03:00
robot-clickhouse
de4e88ff97 Auto version update to [20.5.1.1] [54435] 2020-04-28 20:12:16 +03:00
robot-clickhouse
73e5353ed8 Auto version update to [20.4.1.3177] [54434] 2020-04-28 20:11:43 +03:00
Denis Glazachev
6b02bfadaf Use deduced paths to target executables 2020-04-27 21:46:41 +04:00
Eldar Zaitov
d7a037c26b split fuzzers and sanitizers 2020-04-25 10:12:38 +03:00
Vitaly
d64c6b2134
build on FreeBSD fix (amd64) 2020-04-18 16:54:45 +03:00
Vitaly
96b5e7d3df
Update default_libs.cmake 2020-04-18 13:05:43 +03:00