Commit Graph

135 Commits

Author SHA1 Message Date
Azat Khuzhin
6a9dd9828d Move protocol macros into separate header
Defines.h is a very common header, so lots of modules will be recompiled
on changes.
Move macros for protocol into separate header, this should significantly
decreases number of units to compile on it's changes.
2021-10-03 14:34:03 +03:00
Amos Bird
91293c7449
Fix crash on exception with projection aggregate 2021-09-09 10:43:56 +08:00
Maksim Kita
07c1a8e26e Aggregation temporary disable compilation without key 2021-08-11 19:37:33 +03:00
Maksim Kita
e6b339fbb3
Merge pull request #26845 from kitaisreal/compile-aggregate-functions-without-key
Compile aggregate functions without key
2021-08-09 11:52:52 +03:00
Alexey Milovidov
9a5533a088 Improve performance 2021-08-05 23:44:14 +03:00
Maksim Kita
fd19f47311 Fixed MSan tests 2021-07-28 19:47:36 +03:00
Maksim Kita
3a6b37691a Compile aggregate functions without key 2021-07-27 19:50:57 +03:00
Maksim Kita
42201d3e30 Fixed code review issues 2021-07-23 01:03:44 +03:00
Maksim Kita
1fea19846b Compile aggregate functions profile events fix 2021-07-23 00:43:31 +03:00
Maksim Kita
55220d49f9 Fixed code review issues 2021-07-03 16:29:32 +03:00
Maksim Kita
97e1ddbe94 Fix before merge 2021-07-01 22:56:36 +03:00
Maksim Kita
4bd398c0e5 Fixed tests 2021-07-01 22:56:36 +03:00
Maksim Kita
f33a38381d Fixed tests 2021-07-01 22:56:36 +03:00
Maksim Kita
325b54f623 Aggregator compile only part of aggregate functions 2021-07-01 22:56:36 +03:00
Maksim Kita
fdf172a61e Fixed tests 2021-07-01 22:56:36 +03:00
Maksim Kita
30021f0335 Fixed tests 2021-07-01 22:56:36 +03:00
Maksim Kita
da8c957167 Aggregator added CompiledExpressionCache 2021-07-01 22:56:36 +03:00
Maksim Kita
7b3952adda Fixed tests 2021-07-01 22:56:36 +03:00
Maksim Kita
0fb8ea530f Avoid using exception unsafe method 2021-07-01 22:56:36 +03:00
Maksim Kita
d24d3ae992 Added second variant of compilation 2021-07-01 22:56:36 +03:00
Maksim Kita
1e2f22a183 Aggregator compile part of aggregate functions 2021-07-01 22:56:36 +03:00
Maksim Kita
d4742f91e6 Check min_count_to_compile_aggregate_expression setting before compilation 2021-07-01 22:56:36 +03:00
Maksim Kita
507d9405e2 Compile AggregateFunctionAvgWeighted 2021-07-01 22:56:36 +03:00
Maksim Kita
a5ef0067b8 Compile AggregateFunctionIf 2021-07-01 22:56:35 +03:00
Maksim Kita
9b71b1040a Aggregate functions update compile interface 2021-07-01 22:56:35 +03:00
Maksim Kita
3fe559b31f Compile aggregate functions 2021-07-01 22:56:35 +03:00
alexey-milovidov
7616216f10
Merge pull request #25015 from ClickHouse/fix-wrong-code-in-aggregate-functions
Remove a chunk of wrong code and look what will happen
2021-06-11 00:36:35 +03:00
Alexey Milovidov
39abf41b4d Fix clang-tidy 2021-06-10 02:16:01 +03:00
Amos Bird
840895509e
Fix using aggregate projection when group by without key 2021-06-07 22:44:42 +08:00
Amos Bird
a113acc40c
Fix empty key 2021-05-14 22:54:14 +08:00
Amos Bird
ebaf42a448
Reformat and fix some tests 2021-05-11 18:12:27 +08:00
Nikolai Kochetov
3296c9292f
Try to merge projectons faster. 2021-05-11 18:12:26 +08:00
Alexey Milovidov
b2ca5cd98b Merge branch 'master' into normalize-bigint 2021-05-11 02:05:40 +03:00
alexey-milovidov
ab33b80edc
Merge pull request #23962 from azat/external-group-by-overflow-row-fix
Fix SIGSEGV for external GROUP BY and overflow row
2021-05-10 20:02:05 +03:00
Alexey Milovidov
9753ddc8a0 Merge branch 'master' of github.com:yandex/ClickHouse into normalize-bigint 2021-05-09 18:54:29 +03:00
Azat Khuzhin
6b11319cdf Round floats in Aggregator log messages 2021-05-08 18:01:24 +03:00
Azat Khuzhin
4cecc238d6 Fix SIGSEGV for external GROUP BY and overflow row
Overflow row is used for GROUP BY if all of the above is true:
- WITH TOTALS is requested
- max_rows_to_group_by > 0
- group_by_overflow_mode = any
- totals_mode != after_having_exclusive

And in case of overflow row and external GROUP BY, once the temporary
file dumps to disk it resets without_key data variant to nullptr, so any
subsequent dump to disk will cause SIGSEGV.

Fix this, by recreating without_key data variant after dumping to disk,
instead of reseting to nullptr.

And also add sanity check (LOGICAL_ERROR) to make error more
deterministic in case of such error.

Found with fuzzer [1].

  [1]: https://clickhouse-test-reports.s3.yandex.net/23929/e7027e052998540ee660d186727e20f9555b729d/fuzzer_ubsan/report.html#fail1
2021-05-08 17:48:24 +03:00
Alexey Milovidov
1fda866881 Merge branch 'master' into normalize-bigint 2021-05-02 21:24:45 +03:00
Nikolai Kochetov
c508868570
Merge pull request #23082 from ClickHouse/explain-output
JSON output for EXPLAIN
2021-04-28 15:39:06 +03:00
Nikolai Kochetov
5570b56cc3 A little bit faster merge of aggregating states. 2021-04-27 12:01:58 +03:00
Maksim Kita
5bb263f535 Fixed tests 2021-04-26 13:44:59 +03:00
Maksim Kita
cac4a85286 Aggregator remove unused code 2021-04-26 01:17:24 +03:00
Alexey Milovidov
8f01af62d9 Merge branch 'master' into normalize-bigint 2021-04-25 06:57:44 +03:00
Nikolai Kochetov
6b264933b2 Fix style. 2021-04-20 17:51:48 +03:00
Nikolai Kochetov
8c2d58333a Merge branch 'master' into explain-output 2021-04-19 17:40:27 +03:00
Azat Khuzhin
d2cf03ea41 Change logging from trace to debug for messages with rows/bytes 2021-04-15 21:00:16 +03:00
Nikolai Kochetov
9b86c19836 Use JSONBuilder for explain json result. 2021-04-14 17:07:56 +03:00
Anton Popov
a000d6154c fix clang-tidy 2021-04-02 15:10:49 +03:00
Anton Popov
56320bcbfd minor refactoring 2021-04-02 01:16:54 +03:00
Anton Popov
88cd775f6a Merge remote-tracking branch 'upstream/master' into HEAD 2021-04-02 00:14:03 +03:00