Commit Graph

2993 Commits

Author SHA1 Message Date
BoloniniD
ef4ca4279a Fix build cfg for BLAKE3 2022-08-06 18:24:25 +03:00
BoloniniD
d2e554e4f6 Fix build cfg for BLAKE3 2022-08-06 11:11:45 +03:00
Alexey Milovidov
adc880f362
Merge pull request #39867 from ClickHouse/keeper-block-memory-tracker-commit
Block memory tracker in Keeper during commit
2022-08-06 02:02:29 +03:00
Kseniia Sumarokova
ba53ed274b
Merge pull request #39327 from kssenii/update-azure-lib
Update azure library (removed "harmful" function)
2022-08-05 00:20:43 +02:00
BoloniniD
48c91619b0
Merge branch 'master' into BLAKE3 2022-08-04 20:30:47 +03:00
Antonio Andelic
f63e4ba261 Update NuRaft 2022-08-04 13:14:57 +00:00
Antonio Andelic
c99c5a0dd1 Merge branch 'master' into keeper-block-memory-tracker-commit 2022-08-04 13:04:11 +00:00
Kseniia Sumarokova
92882fe337
Update CMakeLists.txt 2022-08-04 11:08:59 +02:00
BoloniniD
f09c8c8a50
Enable aarch64-darwin build 2022-08-04 09:02:46 +03:00
Alexey Milovidov
f474eb957d
Merge pull request #39758 from ClickHouse/tsan_clang_15
Try clang-15 for build with tsan
2022-08-04 01:56:52 +03:00
Kseniia Sumarokova
bd5610b732
Merge branch 'master' into update-azure-lib 2022-08-03 23:00:57 +02:00
Antonio Andelic
56ca93ca3f Block memory tracker in Keeper during commit 2022-08-03 14:14:57 +00:00
kssenii
da49a0cc02 Fix build 2022-08-03 12:32:55 +02:00
BoloniniD
be8eefa3cd
Fix BLAKE3 crate name 2022-08-03 11:18:35 +03:00
BoloniniD
29084d92d8 Fix CMake for ENABLE_RUST 2022-08-02 20:44:12 +03:00
Alexander Tokmakov
82b50e79cf
Merge branch 'master' into tsan_clang_15 2022-08-02 13:00:55 +03:00
avogar
3be13e4f92 Try fix build under ppc64 2022-08-02 08:25:46 +00:00
Kruglov Pavel
6976c690bd
Revert "Revert "Update arrow to fix possible data race"" 2022-08-02 10:09:18 +02:00
Alexander Tokmakov
55af8878a5
Revert "Update arrow to fix possible data race" 2022-08-01 22:18:34 +03:00
BoloniniD
aee6a72049 Add BLAKE3 as shims only with blake3 as Rust crate 2022-08-01 21:31:38 +03:00
BoloniniD
15773e5b01 Remove BLAKE3 as submodule 2022-08-01 21:30:15 +03:00
BoloniniD
720cc6335b Merge branch 'BLAKE3' of github.com:BoloniniD/ClickHouse into BLAKE3 2022-08-01 20:44:50 +03:00
Alexander Tokmakov
0d68b1c67f fix build with clang-15 2022-08-01 18:00:54 +02:00
kssenii
96f476d078 Merge remote-tracking branch 'upstream/master' into update-azure-lib 2022-07-31 20:17:10 +03:00
Alexey Milovidov
075ff5005e
Merge branch 'master' into update-arrow 2022-07-31 03:05:53 +03:00
Alexey Milovidov
36e6500e54
Merge branch 'master' into BLAKE3 2022-07-30 23:14:05 +03:00
kssenii
f5f6c74648 One more update 2022-07-29 22:00:21 +03:00
Antonio Andelic
3b96ff0fe4 Merge branch 'master' into fix-rollback-inconsistency-keeper 2022-07-29 07:53:00 +00:00
Yakov Olkhovskiy
7c48886d23
Merge pull request #39411 from michael1589/for-update-libgsasl
compile secure rpc need the latest libgsasl
2022-07-28 16:07:53 -04:00
Antonio Andelic
c0a5d45258 Rollback on failed PreAppend 2022-07-28 14:06:45 +00:00
Antonio Andelic
1090d6bca7 Rollback request if storing log fails 2022-07-28 12:55:29 +00:00
Antonio Andelic
0ff9fc2eb9 Use commit with init 2022-07-28 07:11:03 +00:00
Yakov Olkhovskiy
c865c85b61
Merge branch 'master' into for-update-libgsasl 2022-07-27 19:01:29 -04:00
Filatenkov Artur
a218597546
Merge branch 'master' into annoy-2 2022-07-27 15:37:58 +03:00
avogar
c9ad914164 Update arrow to fix special build 2022-07-27 09:32:54 +00:00
Kruglov Pavel
79c455fadd
Merge branch 'master' into update-arrow 2022-07-27 11:25:58 +02:00
Antonio Andelic
c5bbf44492 Update NuRaft 2022-07-26 10:58:10 +00:00
avogar
9302d67fc9 Fix special build 2022-07-26 10:30:12 +00:00
Alexey Milovidov
c78fe0fc10
Merge pull request #39498 from Avogar/fix-avro
Fix data race and possible heap-buffer-overflow in Avro format
2022-07-26 03:20:01 +03:00
Alexander Tokmakov
917fbb9b07 remove c-ares from grpc 2022-07-25 15:49:03 +02:00
Kruglov Pavel
0655ff3265
Merge branch 'master' into fix-avro 2022-07-25 13:41:21 +02:00
avogar
5503d92d97 Fix submodules 2022-07-25 11:30:23 +00:00
Robert Schulze
c788e05c77
Merge pull request #39292 from zvonand/zvonand-b58-datatype
Simplify Base58 encoding/decoding
2022-07-24 18:09:40 +02:00
avogar
d41292bf42 Update arrow to fix possible data race 2022-07-22 18:51:26 +00:00
avogar
8283cc9e2c Fix possible heap-buffer-overflow in Avro 2022-07-22 17:59:43 +00:00
avogar
c6d0ca2940 Fix data race in Avro format 2022-07-22 14:23:05 +00:00
jinjunzh
8fb0d63010 Merge branch 'dev_intel_iaa_deflate' of https://github.com/jinjunzh/ClickHouse into dev_intel_iaa_deflate 2022-07-22 12:02:32 -04:00
jinjunzh
e7562f85fe Update sysroot aligned with master for missing files 2022-07-22 12:00:53 -04:00
jinjunzh
aab7ce1aa8 Revert "restore aarch64 files due to a oversight"
This reverts commit 151a98b18e.
2022-07-22 10:25:14 -04:00
jinjunzh
151a98b18e restore aarch64 files due to a oversight 2022-07-22 10:08:46 -04:00
jasperzhu
614f3b14a2
Merge branch 'master' into dev_intel_iaa_deflate 2022-07-22 11:05:44 +08:00
Andrey Zvonov
e473606cd1
Merge branch 'master' into zvonand-b58-datatype 2022-07-21 15:55:05 +02:00
Alexander Tokmakov
9e9969cea7
Merge pull request #37827 from arthurpassos/host_regexp_multiple_domains
Test host_regexp against all PTR records instead of only one
2022-07-21 16:43:05 +03:00
Azat Khuzhin
0e95dba3ef Fix make clean (due to crosscompile of llvm)
Without ADDITIONAL_CLEAN_FILES it reports an error:

    Cleaning... ninja: error: remove(contrib/llvm/llvm/NATIVE): Directory not empty
    ninja: error: remove(/bld/contrib/llvm/llvm/NATIVE): Directory not empty
    0 files.

Note, that ADDITIONAL_CLEAN_FILES had been added since cmake 3.15.

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-07-20 17:34:10 +03:00
zvonand
562148e0e2 remove basex 2022-07-20 15:04:15 +02:00
zvonand
260d4e5455 fix remaining basex files 2022-07-20 15:02:30 +02:00
FArthur-cmd
4b71760f7d fix build 2022-07-20 15:32:41 +03:00
Peng Liu
af50b04cd0
Merge branch 'master' into for-update-libgsasl 2022-07-20 17:47:24 +08:00
FArthur-cmd
f290f7692f annoy interface 2022-07-20 12:38:56 +03:00
Peng Liu
128e3ec97f compile secure rpc need the latest libgsasl 2022-07-20 17:33:55 +08:00
Suzy Wang
0c9d7f7060 Update libuv to 1.44.1 2022-07-19 12:42:50 -07:00
jasperzhu
c044c67745
Merge branch 'master' into dev_intel_iaa_deflate 2022-07-19 15:32:57 +08:00
FArthur-cmd
25dc3e26aa change submodule path 2022-07-19 01:00:50 +03:00
FArthur-cmd
3b30cd9259 improvements 2022-07-19 00:59:07 +03:00
kssenii
8eb628f7fa Update azure 2022-07-18 17:23:50 +02:00
Azat Khuzhin
d99851bcbe Fix googletest contrib compilation (due to GTEST_HAS_POSIX_RE=0)
By some reason cmake rules for googletest sets GTEST_HAS_POSIX_RE=0
(Compatibilty? But which platform that does support ClickHouse does not
have it?)

But everything will be okay, if these macros was set PUBLIC (i.e. for
compiling googletest library itself and it's users), however it was
added as INTERFACE only (so library itself does not know about
GTEST_HAS_POSIX_RE=0), and this leads to UB, here ASan report (while I
was trying to use ASSERT_EXIT()).

<details>

<summary>ASan report</summary>

    [ RUN      ] Common.LSan
    =================================================================
    ==7566==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030005b2388 at pc 0x00000d00924c bp 0x7ffcd3b7cfb0 sp 0x7ffcd3b7c770
    WRITE of size 64 at 0x6030005b2388 thread T0
        0 0xd00924b in regcomp (/bld/src/unit_tests_dbms+0xd00924b) (BuildId: 40d3fa83125f9047)
        1 0x29ca243b in testing::internal::RE::Init(char const*) /bld/./contrib/googletest/googletest/src/gtest-port.cc:750:15
        2 0xd4d92b3 in testing::internal::RE::RE(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) /bld/./contrib/googletest/googletest/include/gtest/internal/gtest-port.h:896:36
        3 0xd4d92b3 in testing::PolymorphicMatcher<testing::internal::MatchesRegexMatcher> testing::ContainsRegex<char const*>(char const* const&) /bld/./contrib/googletest/googletest/include/gtest/gtest-matchers.h:868:28
        4 0xd4d813a in testing::internal::MakeDeathTestMatcher(char const*) /bld/./contrib/googletest/googletest/include/gtest/internal/gtest-death-test-internal.h:173:10
        5 0xd4d813a in Common_LSan_Test::TestBody() /bld/./src/Common/tests/gtest_lsan.cpp:11:5

    0x6030005b2388 is located 0 bytes to the right of 24-byte region [0x6030005b2370,0x6030005b2388)
    allocated by thread T0 here:
        0 0xd066fbd in operator new(unsigned long) (/bld/src/unit_tests_dbms+0xd066fbd) (BuildId: 40d3fa83125f9047)
        1 0xd4d913d in testing::PolymorphicMatcher<testing::internal::MatchesRegexMatcher> testing::ContainsRegex<char const*>(char const* const&) /bld/./contrib/googletest/googletest/include/gtest/gtest-matchers.h:868:24
        2 0xd4d813a in testing::internal::MakeDeathTestMatcher(char const*) /bld/./contrib/googletest/googletest/include/gtest/internal/gtest-death-test-internal.h:173:10
        3 0xd4d813a in Common_LSan_Test::TestBody() /bld/./src/Common/tests/gtest_lsan.cpp:11:5

</details>
2022-07-17 17:24:02 +03:00
zvonand
91be72dbb4 updated 2022-07-17 12:17:16 +02:00
zvonand
d07a652883 merge 2022-07-16 19:05:07 +02:00
zvonand
4ab52b6873 added new DataType + fixes 2022-07-16 18:58:47 +02:00
Robert Schulze
1d61ff1474
Merge pull request #38280 from ClibMouse/thrift_update
Update thrift to 0.16.0
2022-07-15 09:19:22 +02:00
Suzy Wang
f3650d8769 Add back accidentally removed line 2022-07-14 18:42:41 -07:00
Suzy Wang
0804ff9284 Update as suggested 2022-07-14 07:12:59 -07:00
FArthur-cmd
ad459bc6e4 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into annoy-2 2022-07-14 14:10:44 +03:00
Arthur Passos
a0055fc47a Add force cache to gRPC_CARES_PROVIDER set 2022-07-13 15:49:22 -03:00
Arthur Passos
7f4043a3ed Force use of c-ares inet_net_pton and style adjustments 2022-07-13 11:51:43 -03:00
Antonio Andelic
b49ac48bfd Merge branch 'master' into keeper-linearizable-reads 2022-07-13 09:30:21 +00:00
Suzy Wang
0dde11d5dd Merge remote-tracking branch 'upstream/master' into thrift_update 2022-07-12 08:02:59 -07:00
Antonio Andelic
5f661e3e2b Merge branch 'master' into keeper-linearizable-reads 2022-07-12 07:33:34 +00:00
Azat Khuzhin
1f049e8bac Bump jemalloc to fix possible assertion
This patch also updates the jemalloc version.

Note, that I've enabled page_id for jemalloc
PR_SET_VMA/PR_SET_VMA_ANON_NAME, that requires linux 5.17+ (but ignores
EINVAL anyway).

v2: add -isystem to fix reserved name for JEMALLOC_OVERRIDE___LIBC_PVALLOC
Refs: https://github.com/jemalloc/jemalloc/pull/2304
Refs: https://github.com/ClickHouse/ClickHouse/issues/31531
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-07-12 07:57:27 +03:00
FArthur-cmd
0fa354a77a remove hyperscan 2022-07-11 23:07:06 +03:00
FArthur-cmd
783e6e398c merge with other working branch 2022-07-11 23:02:58 +03:00
Arthur Passos
f176024eb3 prevent grpc from building c-ares 2022-07-11 12:29:38 -03:00
Arthur Passos
624ae4d8e9 link grpc against project-wide c-ares 2022-07-11 12:15:53 -03:00
FArthur-cmd
868628d3fd make stable prototype with arrays support 2022-07-11 18:02:50 +03:00
FArthur-cmd
7b7a9521c7 change submodule path 2022-07-10 18:10:47 +03:00
FArthur-cmd
2f9f5f172a Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into annoy_3 2022-07-10 17:25:21 +03:00
jinjunzh
825b7511e4 improve cosmetics 2022-07-09 14:13:12 -04:00
Arthur Passos
4f4acfabe5 c-ares draft wrapper and draft build rules 2022-07-08 17:52:14 -03:00
Suzy Wang
5f7002eafc Include boringssl header files 2022-07-07 09:08:46 -07:00
jinjunzh
65a91864b3 revise comments 2022-07-06 13:26:07 -04:00
FArthur-cmd
a3407ba6db Merge branch 'master' of github.com:FArthur-cmd/ClickHouse into annoy-2 2022-07-06 19:42:55 +03:00
jinjunzh
f91d73fa37 adjust AS_FEATURE_LEVEL 2022-07-06 12:19:37 -04:00
jinjunzh
b13b1cf226 add some comments in CMakeLists.txt 2022-07-06 10:34:22 -04:00
Nikolai Kochetov
020c99a269
Merge pull request #38617 from azat/contrib-debug-symbols
Add separate option to omit symbols from heavy contrib
2022-07-06 14:40:24 +02:00
FArthur-cmd
c94d6a57ec add arrays 2022-07-06 14:39:49 +03:00
jinjunzh
720c179963 remove redundant flags 2022-07-05 17:40:54 -04:00
jinjunzh
08907f8220 change HAVE_AVX512 in qpl cmake to ENABLE_AVX512 2022-07-05 16:54:17 -04:00
jinjunzh
ba38969e9c enable qpl for clickhouse-keeper build 2022-07-05 15:28:41 -04:00
jinjunzh
463c03b84e improve qpl section in CMakefile:remove windows build flag, modify qpl build option dependency on avx2/avx512 2022-07-05 14:08:44 -04:00
Kseniia Sumarokova
3e803006a2
Merge pull request #37171 from tchepavel/nats-integration
Nats Integration
2022-07-05 17:47:02 +02:00
Suzy Wang
93e2921edb Merge remote-tracking branch 'upstream/master' into thrift_update 2022-07-05 07:18:13 -07:00
jinjunzh
8b008fb726 remove nasm as a submodule 2022-07-05 09:42:44 -04:00
Nikita Mikhaylov
736fa4bb72
Update libprotobuf-mutator + fix build (#38834) 2022-07-05 12:31:50 +02:00
kssenii
7a4be3b748 Fix build, disable for freebsd 2022-07-05 12:10:49 +02:00
Alexey Milovidov
0def9a89f7 Update simdjson 2022-07-05 06:08:44 +02:00
Kseniia Sumarokova
6c3d648f49
Merge branch 'master' into nats-integration 2022-07-04 21:06:07 +02:00
FArthur-cmd
deb14fbaf2 update annoy 2022-07-04 19:34:41 +03:00
FArthur-cmd
21df8ed12f refactoring 2022-07-04 17:21:50 +03:00
Arthur Passos
6c987fb28e Minor adjustments 2022-07-04 10:13:50 -03:00
Arthur Passos
5c00dcd884 Link cpp-dns/udns unconditionally and update submodules to clickhouse fork 2022-07-04 10:07:03 -03:00
Arthur Passos
78519847a6 Fix wrong udns submodule 2022-07-04 10:05:56 -03:00
Arthur Passos
e030d49d97 Remove unnecessary CMake comments 2022-07-04 10:05:30 -03:00
Arthur Passos
d66154e697 Test host_regexp against all PTR records instead of only one 2022-07-04 10:05:28 -03:00
FArthur-cmd
21b99e7304 Merge branch 'master' of https://github.com/Vector-Similarity-Search-for-ClickHouse/ClickHouse into annoy-2 2022-07-04 14:54:21 +03:00
Azat Khuzhin
cd2d053ce5 Update poco to fix GCS via proxy tunnel usage
GCS server does not handle requests with port, and simply report an
error:

```xml
    <?xml version="1.0"?>
    <?xml version='1.0' encoding='UTF-8'?>
    <Error>
        <Code>InvalidURI</Code>
        <Message>Couldn't parse the specified URI.</Message>
        <Details>Invalid URL: storage.googleapis.com:443/...</Details>
    </Error>
```

Removing the port fixes the issue. Note that there is port in the Host
header anyway.

Note, this is a problem only for proxy in a tunnel mode, since only it
sends such requests, other sends requests directly via HTTP methods.

Refs: https://github.com/ClickHouse/poco/pull/22#22 (cc @Jokser)
Refs: https://github.com/ClickHouse/poco/pull/63
Refs: #38069 (cc @CurtizJ)
Cc: @alesapin @kssenii

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-07-04 08:46:10 +03:00
Azat Khuzhin
e8f5cd3c68 Add separate option to omit symbols from heavy contrib
Sometimes it is useful to build contrib with debug symbols for further
debugging.

With everything turned ON (i.e. debug build) I got 3.3GB vs 3.0GB w/o
this patch, 9% bloat, thoughts about this is this OK or not for you, if
not STRIP_DEBUG_SYMBOLS_HEAVY_CONTRIB can be OFF by default (regardless
of build type).

P.S. aws debug symbols adds just 1.7%.
v2: rename STRIP_HEAVY_DEBUG_SYMBOLS
v3: OMIT_HEAVY_DEBUG_SYMBOLS
v4: documentation had been removed
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-07-02 06:32:03 +03:00
Yakov Olkhovskiy
ab7bdd856f
Merge pull request #38599 from ClibMouse/mcc_zlib_removal
Remove zlib in mariadb-connector-c
2022-06-29 20:27:37 -04:00
Suzy Wang
eb3f49426c Remove zlib in mariadb-connector-c 2022-06-29 10:03:55 -07:00
Antonio Andelic
7333e36639 Merge branch 'master' into keeper-linearizable-reads 2022-06-29 13:59:31 +00:00
Maksim Kita
24e8ba5f9a
Merge pull request #38540 from ClickHouse/update-poco
Update poco
2022-06-29 11:02:43 +02:00
jinjunzh
fe451a4317 remove compress sync interface 2022-06-28 22:52:11 -04:00
Yakov Olkhovskiy
e78db73078 update poco 2022-06-28 12:56:43 -04:00
Yakov Olkhovskiy
52d6b45a09 update poco 2022-06-28 12:37:07 -04:00
BoloniniD
6ddcec0906
Merge branch 'master' into BLAKE3 2022-06-28 16:53:06 +03:00
Suzy Wang
b014df386e Merge remote-tracking branch 'upstream/master' into thrift_update 2022-06-27 12:14:14 -07:00
Antonio Andelic
b8c26e3ad0 Merge branch 'master' into keeper-linearizable-reads 2022-06-27 06:59:23 +00:00
jasperzhu
b2f98fa73b
Merge branch 'master' into dev_intel_iaa_deflate 2022-06-27 10:21:21 +08:00
Peng Liu
03b846e112
Merge branch 'ClickHouse:master' into master 2022-06-27 09:38:48 +08:00
Alexey Milovidov
b3098822e0
Merge pull request #38171 from ClickHouse/hyper-to-vectorscan
Replace hyperscan by vectorscan
2022-06-26 10:01:45 +03:00
Robert Schulze
07f14c9bb2
Disable vectorscan-on-ARM for now 2022-06-26 00:03:01 +02:00
Alexey Milovidov
13a6254e1e Correct submodule 2022-06-25 01:45:38 +02:00
Andrey Zvonov
ea73d9c492
Merge branch 'master' into zvonand-base58 2022-06-24 21:37:20 +03:00
Alexander Tokmakov
cfe0e434e5
Revert "Add support for io_uring read method" 2022-06-24 12:19:41 +03:00
Robert Schulze
2c828338f4
Replace hyperscan by vectorscan
This commit migrates ClickHouse to Vectorscan. The first 10 min of
[0] explain the reasons for it.

(*) Addresses (but does not resolve) #38046

(*) Config parameter names (e.g. "max_hyperscan_regexp_length") are
    preserved for compatibility. Likewise, error codes (e.g.
    "ErrorCodes::HYPERSCAN_CANNOT_SCAN_TEXT") and function/class names (e.g.
    "HyperscanDeleter") are preserved as vectorscan aims to be a drop-in
    replacement.

[0] https://www.youtube.com/watch?v=KlZWmmflW6M
2022-06-24 10:47:52 +02:00
Andrey Zvonov
c18d09a617
Merge branch 'master' into zvonand-base58 2022-06-24 07:05:49 +03:00
Alexey Milovidov
812ab9bd6b
Merge pull request #36103 from sauliusvl/uring
Add support for io_uring read method
2022-06-24 00:34:29 +03:00
Suzy Wang
45f94c3d23 Add new files to makefile for thrift 0.16.0 2022-06-23 14:01:45 -07:00
Alexey Milovidov
e7c8023ef5
Merge pull request #38201 from ClickHouse/revert-35914-FIPS_compliance
Revert "ClickHouse's boringssl module updated to the official version of the FIPS compliant."
2022-06-23 20:22:03 +03:00
Antonio Andelic
91637bf79a Merge branch 'master' into keeper-linearizable-reads 2022-06-23 14:07:00 +00:00
mergify[bot]
234f0c6399
Merge branch 'master' into revert-35914-FIPS_compliance 2022-06-23 12:06:17 +00:00
zvonand
946117ec89 Merge branch 'master' of github.com:ClickHouse/ClickHouse into zvonand-base58 2022-06-23 17:04:40 +05:00
zvonand
267025c35b update base-x cmakelists 2022-06-23 16:51:15 +05:00
Robert Schulze
42e70b7cd3
Document why the submodule check does not halt the configuration 2022-06-23 13:41:05 +02:00
Suzy Wang
4deddbf900 Update thrift to 0.16.0(latest) 2022-06-21 12:28:40 -07:00
Robert Schulze
0d80874d40
Merge pull request #38068 from ClickHouse/clang-tsa
Support for Clang Thread Safety Analysis (TSA)
2022-06-21 20:19:33 +02:00
Suzy Wang
1a23dfa827 Update thrift to 0.13.0 2022-06-21 06:54:54 -07:00
Saulius Valatka
a7152fe5ec bump liburing 2022-06-21 13:20:46 +03:00
Saulius Valatka
7b5e13a9eb implement pending request queue to prevent CQ overflows, more error checking, reduce size of io_uring 2022-06-21 13:17:56 +03:00
Saulius Valatka
6bbabf59d9 simplify build, add read method randomized tests, fix typos 2022-06-21 09:59:46 +03:00
Saulius Valatka
3f755a2505 add liburing to build 2022-06-21 09:59:46 +03:00
zvonand
22af00b757 rename variable + fix handling of ENABLE_LIBRARIES 2022-06-20 23:53:47 +05:00
Robert Schulze
55b39e709d
Merge remote-tracking branch 'origin/master' into clang-tsa 2022-06-20 16:39:32 +02:00
Robert Schulze
5a4f21c50f
Support for Clang Thread Safety Analysis (TSA)
- TSA is a static analyzer build by Google which finds race conditions
  and deadlocks at compile time.

- It works by associating a shared member variable with a
  synchronization primitive that protects it. The compiler can then
  check at each access if proper locking happened before. A good
  introduction are [0] and [1].

- TSA requires some help by the programmer via annotations. Luckily,
  LLVM's libcxx already has annotations for std::mutex, std::lock_guard,
  std::shared_mutex and std::scoped_lock. This commit enables them
  (--> contrib/libcxx-cmake/CMakeLists.txt).

- Further, this commit adds convenience macros for the low-level
  annotations for use in ClickHouse (--> base/defines.h). For
  demonstration, they are leveraged in a few places.

- As we compile with "-Wall -Wextra -Weverything", the required compiler
  flag "-Wthread-safety-analysis" was already enabled. Negative checks
  are an experimental feature of TSA and disabled
  (--> cmake/warnings.cmake). Compile times did not increase noticeably.

- TSA is used in a few places with simple locking. I tried TSA also
  where locking is more complex. The problem was usually that it is
  unclear which data is protected by which lock :-(. But there was
  definitely some weird code where locking looked broken. So there is
  some potential to find bugs.

*** Limitations of TSA besides the ones listed in [1]:

- The programmer needs to know which lock protects which piece of shared
  data. This is not always easy for large classes.

- Two synchronization primitives used in ClickHouse are not annotated in
  libcxx:
  (1) std::unique_lock: A releaseable lock handle often together with
      std::condition_variable, e.g. in solve producer-consumer problems.
  (2) std::recursive_mutex: A re-entrant mutex variant. Its usage can be
      considered a design flaw + typically it is slower than a standard
      mutex. In this commit, one std::recursive_mutex was converted to
      std::mutex and annotated with TSA.

- For free-standing functions (e.g. helper functions) which are passed
  shared data members, it can be tricky to specify the associated lock.
  This is because the annotations use the normal C++ rules for symbol
  resolution.

[0] https://clang.llvm.org/docs/ThreadSafetyAnalysis.html
[1] https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/42958.pdf
2022-06-20 16:13:25 +02:00
Rafael Acevedo
51035ee300
Update librdkafka
Update to get fixes from https://github.com/ClickHouse/librdkafka/pull/5

Refs https://github.com/ClickHouse/ClickHouse/issues/38151
2022-06-20 07:19:58 -03:00
zvonand
832fd6e0a9 Added tests + minor updates 2022-06-19 23:10:28 +05:00
Alexey Milovidov
0cf88e0950
Revert "ClickHouse's boringssl module updated to the official version of the FIPS compliant." 2022-06-18 23:16:18 +03:00
Antonio Andelic
fdef4cc44d Update NuRaft 2022-06-18 19:25:43 +00:00
alesapin
0ae0cc54aa
Merge pull request #38106 from ClickHouse/tsan_less_flaky_tests
Some fixes for tests with tsan
2022-06-18 14:22:43 +02:00
Alexey Milovidov
d43492a512
Merge pull request #37795 from DevTeamBK/curl_upgrade
Upgrade curl to 7.83.1
2022-06-18 04:14:09 +03:00
Antonio Andelic
fa8bfced1a Update NuRaft 2022-06-17 18:19:09 +00:00
alesapin
ca33ff93cb
Merge pull request #37555 from ClickHouse/revert-37534-revert-37036-keeper-preprocess-operations
Add support for preprocessing ZooKeeper operations and real-time digest in `clickhouse-keeper`
2022-06-16 17:29:00 +02:00
Suzy Wang
b80b9ec8b9 Merge branch 'master' into curl_upgrade 2022-06-16 08:09:15 -07:00
jasperzhu
bca18b2caf
Merge branch 'master' into dev_intel_iaa_deflate 2022-06-16 08:56:27 +08:00
Daniel Kutenin
a769dea8ef
Merge branch 'ClickHouse:master' into master 2022-06-15 19:12:10 +01:00
Alexander Tokmakov
9cac78b498 make tests with tsan less flaky 2022-06-15 19:54:46 +02:00
Maksim Kita
5729210f22
Merge pull request #37797 from kitaisreal/libunwind-update-version
libunwind update version
2022-06-15 19:32:42 +02:00
Danila Kutenin
08e3f77a9c Optimize most important parts with NEON SIMD
First part, updated most UTF8, hashing, memory and codecs. Except
utf8lower and upper, maybe a little later.

That includes huge amount of research with movemask dealing. Exact
details and blog post TBD.
2022-06-15 13:19:29 +00:00
mergify[bot]
68d043869c
Merge branch 'master' into libunwind-update-version 2022-06-15 11:43:01 +00:00
Maksim Kita
1c841fadcd Updated libunwind 2022-06-15 10:59:23 +02:00
zvonand
c149c916ec initial setup 2022-06-15 11:49:55 +05:00
mergify[bot]
17cc36e0e2
Merge branch 'master' into grpc_update_to_PR9 2022-06-15 02:10:38 +00:00
Antonio Andelic
b7bd5a8eb1 Merge branch 'master' into revert-37534-revert-37036-keeper-preprocess-operations 2022-06-14 12:51:35 +00:00
Maksim Kita
4a37e36d78 Updated libunwind 2022-06-14 12:52:52 +02:00
Antonio Andelic
e5504f1b33 Merge branch 'master' into revert-37534-revert-37036-keeper-preprocess-operations 2022-06-13 15:43:10 +00:00
Robert Schulze
027fe1db9d
Merge pull request #37970 from ClickHouse/color_diagnostics
Always disable --color-diagnostics for LLVM
2022-06-13 13:32:19 +02:00
Maksim Kita
fb54a1cb6a Updated libunwind 2022-06-13 11:44:45 +02:00
Maksim Kita
8907c4b5b0 Updated libunwind 2022-06-13 11:44:45 +02:00
Maksim Kita
25a886a78c libunwind update version fix sanitizers 2022-06-13 11:44:45 +02:00
Maksim Kita
d8c4af725a libunwind update version 2022-06-13 11:44:45 +02:00
BoloniniD
617ef0809f Minor fixes 2022-06-12 01:22:33 +03:00
BoloniniD
43cafcc4dc Fix submodules 2022-06-10 22:33:45 +03:00
Robert Schulze
0696ee3758
Always disable --color-diagnostics for LLVM
The flag is not only not recognized on MacOS, it is not recognized by
the gold linker in general.
2022-06-10 10:39:38 +02:00
BoloniniD
14ddcee432 Trying another Rust target to fix compatibility test 2022-06-07 18:10:49 +03:00
BoloniniD
4dd7638cca Trying another Rust target to fix compatibility test 2022-06-06 18:03:41 +03:00
BoloniniD
b05ee41d25 Merge branch 'master' of github.com:ClickHouse/ClickHouse into BLAKE3 2022-06-06 16:03:10 +03:00
Antonio Andelic
2c37fe3d7b Merge branch 'master' into revert-37534-revert-37036-keeper-preprocess-operations 2022-06-06 12:39:55 +00:00
jinjunzh
c7ca746994 fixed build issues in clickhouse-keeper 2022-06-05 14:46:28 -04:00
Peng Liu
6de7590af4 compile the new libgsasl with supportting three modes(privacy/integrity/authentication) 2022-06-04 23:30:38 +08:00
Bharat Nallan Chakravarthy
5fb9336159 add ssl version to build options 2022-06-04 15:31:08 +05:30
jinjunzh
2170a99484 revise ENABLE_QPL_COMPRESSION build option 2022-06-03 21:06:55 -04:00
Alexey Milovidov
4387379090
Merge pull request #37745 from DevTeamBK/libxml2_upgrade
Upgrade libxml2 to 2.9.14
2022-06-02 18:39:09 +03:00
jinjunzh
041a8e42ca revise code style 2022-06-02 10:34:11 -04:00
Antonio Andelic
7ee47fc5bb Merge branch 'master' into revert-37534-revert-37036-keeper-preprocess-operations 2022-06-02 13:38:52 +00:00
Alexey Milovidov
eef6a5ec96
Revert "Remove resursive submodules" 2022-06-02 09:41:12 +03:00
Suzy Wang
17fb5d8068 upgrade curl to 7.83.1 2022-06-01 21:30:02 -07:00
jinjunzh
e1426c7e9d add build option for iaa compression 2022-06-01 11:47:43 -04:00
Robert Schulze
7813cf5a8b
Merge pull request #37719 from ClickHouse/lib-dependency-mgmt
Fix build with -DENABLE_LIBRARIES=0
2022-06-01 16:53:49 +02:00
Suzy Wang
9bef38effb Upgrade libxml2 to 2.9.14 2022-06-01 06:10:05 -07:00
mergify[bot]
4aefcf29e3
Merge branch 'revert-37534-revert-37036-keeper-preprocess-operations' into keeper-real-time-digest 2022-06-01 10:17:49 +00:00
Robert Schulze
393b97763a
Make SSL a mandatory dependency for now
- SSL is a dependency of too many libs + unit tests (via poco crypto
  which requires SSL)

- optional SSL is desirable but right now, turning off SSL (via
  -DENABLE_LIBRARIES=0 or =DENABLE_SSL=0) breaks the build

- therefore make SSL mandatory for now + add a TODO comment
2022-06-01 11:26:24 +02:00