Commit Graph

675 Commits

Author SHA1 Message Date
avogar
23f48a9fb9 Fix bug with nested short-circuit functions 2022-06-17 11:44:49 +00:00
Danila Kutenin
607dd8d6ca Restart the pipeline, I guess 2022-06-15 18:16:56 +00:00
Daniel Kutenin
a769dea8ef
Merge branch 'ClickHouse:master' into master 2022-06-15 19:12:10 +01: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
Maksim Kita
864fd627e1
Merge pull request #35762 from kitaisreal/merge-tree-multiple-order-by-columns-improve-insert-performance
MergeTree multiple ORDER BY columns improve insert performance
2022-06-15 11:01:36 +02:00
Alexey Milovidov
ab9fc572d5
Merge pull request #37667 from ClickHouse/group-by-enum-fix
Support types with non-standard defaults in ROLLUP, CUBE, GROUPING SETS
2022-06-15 05:14:33 +03:00
mergify[bot]
3f97745612
Merge branch 'master' into merge-tree-multiple-order-by-columns-improve-insert-performance 2022-06-14 10:49:48 +00:00
Anton Popov
bcd60b8293 fix build 2022-06-06 18:14:59 +00:00
Anton Popov
db6bc122ff Merge remote-tracking branch 'upstream/master' into HEAD 2022-06-06 18:13:16 +00:00
Anton Popov
d6bf9f8c6b fix insertRangeFrom for ColumnObject 2022-06-02 22:56:41 +00:00
Dmitry Novik
0e63583b8f Support types with non-standard defaults in ROLLUP, CUBE, GROUPING SETS 2022-05-31 00:11:10 +00:00
Alexey Milovidov
9e3242f186
Merge pull request #37617 from CurtizJ/aggregation-sparse-columns
Better performance with sparse columns in aggregate functions
2022-05-29 09:36:07 +03:00
Anton Popov
b2cff26ecf better performace with sparse columns in aggregate functions 2022-05-28 02:22:20 +00:00
Maksim Kita
96833b8696 ColumnImpl compareImpl added assert for compare result 2022-05-24 20:41:48 +02:00
Maksim Kita
bdc537ead3 Column compareImpl devirtualize compare call 2022-05-24 14:28:33 +02:00
Anton Popov
03c51118d5 better implementation of ColumnObject 2022-05-18 14:15:55 +00:00
Anton Popov
7477cf28a9 fix some cases of insertion nested arrays to columns of type Object 2022-05-17 22:59:16 +00:00
Maksim Kita
437d70d4da Fixed tests 2022-05-11 21:59:51 +02:00
Maksim Kita
c17a8b1a23 Fixed tests 2022-05-11 21:59:51 +02:00
Maksim Kita
8721e434e6 Fixed tests 2022-05-11 21:59:51 +02:00
Maksim Kita
8ceb63ee6c Added JIT compilation of SortDescription 2022-05-11 21:59:51 +02:00
Anton Popov
13e8db6299
Merge pull request #36762 from CurtizJ/dynamic-columns-12
Fix insertion to columns of type `Object` from multiple files
2022-05-06 14:14:32 +02:00
mergify[bot]
17aecac7ff
Merge branch 'master' into new-clangtidies 2022-05-03 19:44:01 +00:00
Robert Schulze
0a4eccb73e
Activated a bunch of LLVM 12/13/14 clang-tidy warnings
Omitted new checks which produce too many matches or which are
controversial (e.g. readability-identifier-length).

New checks:

- misc-misleading-bidirectional + misc-misleading-identifier

  Detects potential attack as described in the Trojan Source attack

- modernize-macro-to-enum

  Replaces groups of adjacent macros with an unscoped anonymous enum

- modernize-shrink-to-fit

  Replace copy and swap tricks on shrinkable containers with the
  shrink_to_fit() method call

- modernize-use-transparent-functors

  Prefer transparent functors to non-transparent ones

- modernize-use-uncaught-exceptions

  This check will warn on calls to std::uncaught_exception and replace
  them with calls to std::uncaught_exceptions (uncaught_exception was
  deprecated with C++17)

- performance-no-int-to-ptr

  Diagnoses every integer to pointer cast

- readability-duplicate-include

  Looks for duplicate includes and removes them

- readability-redundant-preprocessor

  Finds potentially redundant preprocessor directives

- bugprone-lambda-function-name

  Checks for attempts to get the name of a function from within a lambda
  expression

- bugprone-redundant-branch-condition

  Finds condition variables in nested if statements that were also
  checked in the outer if statement and were not changed

- bugprone-shared-ptr-array-mismatch

  Finds initializations of C++ shared pointers to non-array type that
  are initialized with an array

- bugprone-stringview-nullptr

  Checks for various ways that the const CharT* constructor of
  std::basic_string_view can be passed a null argument and replaces them
  with the default constructor in most cases

- bugprone-suspicious-memory-comparison

  Finds potentially incorrect calls to memcmp() based on properties of
  the arguments
2022-05-03 09:22:11 +02:00
Dmitry Novik
9be17ef50c
Merge pull request #35111 from azat/optimize_aggregation_in_order-prefix
Implement partial GROUP BY key for optimize_aggregation_in_order
2022-05-02 17:49:48 +02:00
Alexey Milovidov
b79c6cef84
Merge pull request #36756 from CurtizJ/type-json-bool
Deduce `UInt8` type for bools from json instead of `UInt64`
2022-05-01 13:51:28 +03:00
Anton Popov
243315b826 fix insert to Object columns 2022-04-29 17:26:05 +00:00
Azat Khuzhin
767acd53fb Add ability to pass range of rows to Aggregator
v2: fix compiled aggregate functions (seek result to row_start)
v3: fix compiled aggregate functions (seek args to row_start)
v4: change signatures for JIT
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-04-29 06:57:55 +03:00
Anton Popov
1fc51e09ff fix insertion to column of type Object from multiple files via table function 2022-04-28 18:51:13 +00:00
mergify[bot]
20e2fa9b3f
Merge branch 'master' into dynamic-columns-9 2022-04-28 17:53:03 +00:00
Anton Popov
54f074e104 deduce UInt8 type for bools from json instead of UInt64 2022-04-28 15:30:43 +00:00
Anton Popov
a87f19b493 fix more cases with nested arrays 2022-04-21 14:57:12 +00:00
Maksim Kita
57444fc7d3
Merge pull request #36444 from rschu1ze/clang-tidy-fixes
Clang tidy fixes
2022-04-21 16:11:27 +02:00
Robert Schulze
b24ca8de52
Fix various clang-tidy warnings
When I tried to add cool new clang-tidy 14 warnings, I noticed that the
current clang-tidy settings already produce a ton of warnings. This
commit addresses many of these. Almost all of them were non-critical,
i.e. C vs. C++ style casts.
2022-04-20 10:29:05 +02:00
Antonio Andelic
bbb0be6a44
Merge pull request #36402 from rschu1ze/clang-tidy-contains
Activate clang-tidy warning "readability-container-contains"
2022-04-20 08:15:46 +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
Alexey Milovidov
c23e451b04 Add nodiscard attribute to immutable methods of IColumn to avoid errors 2022-04-18 04:22:40 +02:00
Anton Popov
3fce23357c fix insertion of complex json with nested arrays 2022-04-08 14:58:02 +00:00
Maksim Kita
61212635d8 MergeTree multiple ORDER BY columns improve insert performance 2022-03-30 16:03:36 +02:00
Azat Khuzhin
a847b71611 Fix SubcolumnsTree declaration
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-03-26 23:42:46 +03:00
Kruglov Pavel
9ae52910f0
Fix style 2022-03-23 23:15:07 +01:00
Kruglov Pavel
c4713a9159
Update MaskOperations.cpp 2022-03-23 11:39:38 +01:00
Kruglov Pavel
9bf1cb6636
Fix 2022-03-22 20:15:05 +01:00
Kruglov Pavel
763a80e405
Add more validations in mask operations 2022-03-22 18:46:59 +01:00
Maksim Kita
d24795405c Fixed tests 2022-03-22 15:12:43 +01:00
Maksim Kita
fcbf97ba68 Fix crash during short circuit function evaluation 2022-03-22 14:10:47 +01:00
Maksim Kita
695b1300f9
Merge pull request #35383 from rschu1ze/enable-if-to-concepts-pt2
Replace more uses of std::enable_if for SFINAE by concepts
2022-03-21 10:47:28 +01:00
Anton Popov
d26ba35c2d fix race in Object type and improve performance of inserts 2022-03-19 00:26:39 +00:00
Anton Popov
b0316c1a7a better performance of inserts to Object type 2022-03-17 22:25:44 +00:00
Robert Schulze
df73c75456
Replace more uses of std::enable_if for SFINAE by concepts
- enable_if is usually regarded as fragile and unreadable
- C++20 concepts are much easier to read and produce more expressive error messages

- this is follow-up to PR #35347 but this time most of the remaining and
  more complex usages of enable_if in the codebase were replaced.
2022-03-17 20:44:55 +01:00