Skip to content

Commit fd073f1

Browse files
authored
Merge branch 'master' into analyzer-00597_push_down_predicate_long
2 parents 7bec75a + ca05a73 commit fd073f1

841 files changed

Lines changed: 16089 additions & 13278 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
A technical comment, you are free to remove or leave it as it is when PR is created
33
The following categories are used in the next scripts, update them accordingly
44
utils/changelog/changelog.py
5-
tests/ci/run_check.py
5+
tests/ci/cancel_and_rerun_workflow_lambda/app.py
66
-->
77
### Changelog category (leave one):
88
- New Feature

.gitmodules

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -253,9 +253,6 @@
253253
[submodule "contrib/qpl"]
254254
path = contrib/qpl
255255
url = https://github.com/intel/qpl
256-
[submodule "contrib/idxd-config"]
257-
path = contrib/idxd-config
258-
url = https://github.com/intel/idxd-config
259256
[submodule "contrib/wyhash"]
260257
path = contrib/wyhash
261258
url = https://github.com/wangyi-fudan/wyhash
@@ -296,6 +293,9 @@
296293
[submodule "contrib/libdivide"]
297294
path = contrib/libdivide
298295
url = https://github.com/ridiculousfish/libdivide
296+
[submodule "contrib/libbcrypt"]
297+
path = contrib/libbcrypt
298+
url = https://github.com/rg3/libbcrypt.git
299299
[submodule "contrib/ulid-c"]
300300
path = contrib/ulid-c
301301
url = https://github.com/ClickHouse/ulid-c.git

CMakeLists.txt

Lines changed: 25 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ if (ENABLE_CHECK_HEAVY_BUILDS)
5757
# set CPU time limit to 1000 seconds
5858
set (RLIMIT_CPU 1000)
5959

60-
# gcc10/gcc10/clang -fsanitize=memory is too heavy
60+
# -fsanitize=memory is too heavy
6161
if (SANITIZE STREQUAL "memory")
6262
set (RLIMIT_DATA 10000000000) # 10G
6363
endif()
@@ -170,18 +170,6 @@ else ()
170170
set(NO_WHOLE_ARCHIVE --no-whole-archive)
171171
endif ()
172172

173-
option(ENABLE_CURL_BUILD "Enable curl, azure, sentry build on by default except MacOS." ON)
174-
if (OS_DARWIN)
175-
# Disable the curl, azure, senry build on MacOS
176-
set (ENABLE_CURL_BUILD OFF)
177-
endif ()
178-
179-
option(ENABLE_ISAL_LIBRARY "Enable ISA-L library ON by default except on aarch64." ON)
180-
if (ARCH_AARCH64)
181-
# Disable ISA-L libray on aarch64.
182-
set (ENABLE_ISAL_LIBRARY OFF)
183-
endif ()
184-
185173
if (NOT CMAKE_BUILD_TYPE_UC STREQUAL "RELEASE")
186174
# Can be lld or ld-lld or lld-13 or /path/to/lld.
187175
if (LINKER_NAME MATCHES "lld")
@@ -292,7 +280,7 @@ set (CMAKE_C_STANDARD 11)
292280
set (CMAKE_C_EXTENSIONS ON) # required by most contribs written in C
293281
set (CMAKE_C_STANDARD_REQUIRED ON)
294282

295-
# Compiler-specific coverage flags e.g. -fcoverage-mapping for gcc
283+
# Compiler-specific coverage flags e.g. -fcoverage-mapping
296284
option(WITH_COVERAGE "Profile the resulting binary/binaries" OFF)
297285

298286
if (COMPILER_CLANG)
@@ -399,9 +387,9 @@ else()
399387
endif ()
400388

401389
option (ENABLE_GWP_ASAN "Enable Gwp-Asan" ON)
402-
# We use mmap for allocations more heavily in debug builds,
403-
# but GWP-ASan also wants to use mmap frequently,
404-
# and due to a large number of memory mappings,
390+
# We use mmap for allocations more heavily in debug builds,
391+
# but GWP-ASan also wants to use mmap frequently,
392+
# and due to a large number of memory mappings,
405393
# it does not work together well.
406394
if ((NOT OS_LINUX AND NOT OS_ANDROID) OR (CMAKE_BUILD_TYPE_UC STREQUAL "DEBUG"))
407395
set(ENABLE_GWP_ASAN OFF)
@@ -534,6 +522,26 @@ include (cmake/print_flags.cmake)
534522

535523
if (ENABLE_RUST)
536524
add_subdirectory (rust)
525+
526+
# With LTO Rust adds few symbols with global visiblity, the most common is
527+
# rust_eh_personality. And this leads to linking errors because multiple
528+
# Rust libraries contains the same symbol.
529+
#
530+
# If it was shared library, that we could use version script for linker to
531+
# hide this symbols, but libraries are static.
532+
#
533+
# we could in theory compile everything to one library but this will be a
534+
# mess
535+
#
536+
# But this should be OK since CI has lots of other builds that are done
537+
# without LTO and it will find multiple definitions if there will be any.
538+
#
539+
# More information about this behaviour in Rust can be found here
540+
# - https://github.com/rust-lang/rust/issues/44322
541+
# - https://alanwu.space/post/symbol-hygiene/
542+
if (ENABLE_THINLTO)
543+
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--allow-multiple-definition")
544+
endif()
537545
endif()
538546

539547
add_subdirectory (base)

SECURITY.md

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,7 @@ The following versions of ClickHouse server are currently being supported with s
2222
| 22.10 ||
2323
| 22.9 ||
2424
| 22.8 | ✔️ |
25-
| 22.7 ||
26-
| 22.6 ||
27-
| 22.5 ||
28-
| 22.4 ||
29-
| 22.3 ||
30-
| 22.2 ||
31-
| 22.1 ||
25+
| 22.* ||
3226
| 21.* ||
3327
| 20.* ||
3428
| 19.* ||

base/base/defines.h

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -73,18 +73,6 @@
7373
# endif
7474
#endif
7575

76-
#if defined(ADDRESS_SANITIZER)
77-
# define BOOST_USE_ASAN 1
78-
# define BOOST_USE_UCONTEXT 1
79-
#endif
80-
81-
#if defined(THREAD_SANITIZER)
82-
# define BOOST_USE_TSAN 1
83-
# define BOOST_USE_UCONTEXT 1
84-
#endif
85-
86-
/// TODO: Strange enough, there is no way to detect UB sanitizer.
87-
8876
/// Explicitly allow undefined behaviour for certain functions. Use it as a function attribute.
8977
/// It is useful in case when compiler cannot see (and exploit) it, but UBSan can.
9078
/// Example: multiplication of signed integers with possibility of overflow when both sides are from user input.

base/harmful/harmful.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@ TRAP(argp_state_help)
3131
TRAP(argp_usage)
3232
TRAP(asctime)
3333
TRAP(clearenv)
34-
TRAP(crypt)
34+
// Redefined at contrib/libbcrypt/crypt_blowfish/wrapper.c:186
35+
// TRAP(crypt)
3536
TRAP(ctime)
3637
TRAP(cuserid)
3738
TRAP(drand48)

base/poco/Foundation/include/Poco/Config.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353

5454

5555
// Define if no <locale> header is available (such as on WinCE)
56-
// #define POCO_NO_LOCALE
56+
#define POCO_NO_LOCALE
5757

5858

5959
// Define to desired default thread stack size

base/poco/Foundation/include/Poco/NumericString.h

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,6 @@
3030
#include <cctype>
3131
#include <cmath>
3232
#include <limits>
33-
#if !defined(POCO_NO_LOCALE)
34-
# include <locale>
35-
#endif
3633

3734

3835
// binary numbers are supported, thus 64 (bits) + 1 (string terminating zero)
@@ -53,23 +50,15 @@ inline char decimalSeparator()
5350
/// Returns decimal separator from global locale or
5451
/// default '.' for platforms where locale is unavailable.
5552
{
56-
#if !defined(POCO_NO_LOCALE)
57-
return std::use_facet<std::numpunct<char>>(std::locale()).decimal_point();
58-
#else
5953
return '.';
60-
#endif
6154
}
6255

6356

6457
inline char thousandSeparator()
6558
/// Returns thousand separator from global locale or
6659
/// default ',' for platforms where locale is unavailable.
6760
{
68-
#if !defined(POCO_NO_LOCALE)
69-
return std::use_facet<std::numpunct<char>>(std::locale()).thousands_sep();
70-
#else
7161
return ',';
72-
#endif
7362
}
7463

7564

base/poco/Foundation/src/Format.cpp

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@
1616
#include "Poco/Exception.h"
1717
#include "Poco/Ascii.h"
1818
#include <sstream>
19-
#if !defined(POCO_NO_LOCALE)
20-
#include <locale>
21-
#endif
2219
#include <cstddef>
2320

2421

@@ -147,9 +144,6 @@ namespace
147144
void formatOne(std::string& result, std::string::const_iterator& itFmt, const std::string::const_iterator& endFmt, std::vector<Any>::const_iterator& itVal)
148145
{
149146
std::ostringstream str;
150-
#if !defined(POCO_NO_LOCALE)
151-
str.imbue(std::locale::classic());
152-
#endif
153147
try
154148
{
155149
parseFlags(str, itFmt, endFmt);

base/poco/Foundation/src/NumberFormatter.cpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,6 @@
1515
#include "Poco/NumberFormatter.h"
1616
#include "Poco/MemoryStream.h"
1717
#include <iomanip>
18-
#if !defined(POCO_NO_LOCALE)
19-
#include <locale>
20-
#endif
2118
#include <cstdio>
2219

2320

0 commit comments

Comments
 (0)