Commit Graph

103894 Commits

Author SHA1 Message Date
Alexander Gololobov
a02a631d51 Cleanups based on code review 2022-12-29 15:00:42 +01:00
Alexander Gololobov
7df137e460 Replaced asserts with logical errors 2022-12-29 14:33:11 +01:00
Alexander Gololobov
059ec6f747 Cleanups 2022-12-29 01:22:47 +01:00
Alexander Gololobov
10a058d138 More cleanups in the logic of applying current step filter and final filter 2022-12-28 18:07:36 +01:00
Alexander Gololobov
6ebac0e018 A test for non-bool column in prewhere 2022-12-28 18:07:36 +01:00
Alexander Gololobov
fd5d328fae Test accumulating filters ignoring prewhere_info->need_filter flag 2022-12-28 18:07:36 +01:00
Alexander Gololobov
a6249a3d7a Check result size 2022-12-28 18:07:36 +01:00
Alexander Gololobov
a7adc0a91b Cleanups 2022-12-28 18:07:36 +01:00
Alexander Gololobov
b22711baa3 Reset need_filter flag when filter is applied 2022-12-28 18:07:36 +01:00
Alexander Gololobov
ada6422985 Restored old logic for filling _part_offset 2022-12-28 18:07:36 +01:00
Alexander Gololobov
4cebc6f3a4 Cleanups 2022-12-28 18:07:36 +01:00
Alexander Gololobov
13e457c754 Cleanups 2022-12-28 18:07:36 +01:00
Alexander Gololobov
a1cdad4815 Fix for reading _part_offset along with newly added column that has only default value 2022-12-28 18:07:35 +01:00
Alexander Gololobov
b21e4de6fa Read _part_offset along with newly added column that has only default value 2022-12-28 18:07:35 +01:00
Alexander Gololobov
ac1549f6b3 Skip filtering if there are no rows after optimize() 2022-12-28 18:07:35 +01:00
Alexander Gololobov
f273f8712d Avoid filtering same column in block_before_prewhere if it is present in the result 2022-12-28 18:07:35 +01:00
Alexander Gololobov
f3646248c5 Avoid unneeded work if all rows were filtered 2022-12-28 18:07:35 +01:00
Alexander Gololobov
75152ddabb Apply filter only if needed 2022-12-28 18:07:35 +01:00
Alexander Gololobov
a18850458c Test applying current filter at each step 2022-12-28 18:07:35 +01:00
Alexander Gololobov
3d6aa4738f Test for proper filtering after intermediate PREWHERE steps 2022-12-28 18:07:35 +01:00
Alexander Gololobov
59a9fe0d92 Test specifically with wide parts 2022-12-28 18:07:35 +01:00
Alexander Gololobov
feb5c8f278 Fixed test where UInt8 column value was replaced with 0 or 1 because of filtering 2022-12-28 18:07:35 +01:00
Alexander Gololobov
29b5c4af07 Test dirty intermediate changes 2022-12-28 18:07:35 +01:00
Alexander Gololobov
8b1eb2d7e0 Test colum with default value 2022-12-28 18:07:35 +01:00
Alexander Gololobov
c561acb774 Properly handle low cardinality column as prewhere filter 2022-12-28 18:07:35 +01:00
Alexander Gololobov
aa276b230b Don't need to save filter and rows_per_granule from previous step 2022-12-28 18:07:35 +01:00
Alexander Gololobov
1eb24e13b3 Inrease step to speed up 02473_multistep_prewhere test 2022-12-28 18:07:35 +01:00
Alexander Gololobov
c4a01cbd5b Fix for propely cleaning rows_per_granule_original between prewhere steps 2022-12-28 18:07:35 +01:00
Alexander Gololobov
0379ab6a52 Cover more cases 02473_multistep_prewhere test 2022-12-28 18:07:35 +01:00
Alexander Gololobov
abbb58107c Fix for "out of bound" in ColumnVector::insertRangeFrom called from shrink() 2022-12-28 18:07:35 +01:00
Alexander Gololobov
79874e8733 Fix for "Invalid number of rows in Chunk" 2022-12-28 18:07:35 +01:00
Alexander Gololobov
b75ea86583 Test various combinations of deleted and policy-filtered rows 2022-12-28 18:07:35 +01:00
Alexander Gololobov
bdf51545f7 Added FilterWithCachedCount class instead of caching counts in filter_bytes_map 2022-12-28 18:07:35 +01:00
Alexander Gololobov
36135ab552 Test different block sizes to trigger different prewhere filtering code paths 2022-12-28 18:07:35 +01:00
Azat Khuzhin
31a88d4eae Fix PREWHERE with row-level filters (when row filter is always true/false)
In case of row-level filters optimized out, i.e. converted to
always true/false, it is possible for MergeTreeRangeReader to reuse
incorrect statistics for the filter (countBytesInResultFilter()), and
because of this it simply does not apply other filters, since it assume
that this filter does not need to filter anything.

Fixes: #40956
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-12-28 18:07:35 +01:00
Alexander Gololobov
bf64e3eaca Test with different index_granularity to hit different PREWHERE code paths 2022-12-28 18:07:35 +01:00
Alexander Gololobov
d44392b366 Checking the fix for "Invalid number of rows in Chunk" 2022-12-28 18:07:35 +01:00
Alexander Gololobov
6730ecc2a3 A test to repro "Invalid number of rows in Chunk" 2022-12-28 18:07:35 +01:00
Nikolay Degterinsky
a8c9851110
Merge pull request #44639 from evillique/fix_parser
Fix lambdas parsing
2022-12-28 17:39:22 +01:00
Anton Popov
80a18df09f
Merge pull request #44642 from CurtizJ/fix-async-insert-test
Fix test `02015_async_inserts_2`
2022-12-28 16:11:38 +01:00
Vitaly Baranov
8a2fbbe88c
Merge pull request #43947 from azat/backups/dedup
RFC: Add ability to disable deduplication for BACKUP
2022-12-28 15:24:53 +01:00
Alexey Milovidov
ab719f4432
Merge pull request #44358 from ClickHouse/fix-30975
Fix support for complex parameters of parametric aggregate functions, #30975
2022-12-28 16:38:41 +03:00
Alexey Milovidov
1b4121459d
Merge pull request #44645 from ClickHouse/keeper-test-fix
Fix flaky test `test_keeper_multinode_simple`
2022-12-28 16:38:17 +03:00
Alexey Milovidov
9f74843b17
Merge pull request #44660 from vitlibar/fix-flaky-test_backup_restore_on_cluster
Fix flaky test test_backup_restore_on_cluster
2022-12-28 16:33:36 +03:00
Kruglov Pavel
d42d9f70c8
Merge pull request #44225 from Avogar/fix-datetime-timezone
Forbid paths in timezone names
2022-12-28 13:57:39 +01:00
Vitaly Baranov
b211dff013 Increase the create table timeout in test "test_backup_restore_on_cluster". 2022-12-28 00:17:19 +01:00
Nikita Mikhaylov
9d10550b66
Merge branch 'master' into keeper-test-fix 2022-12-27 22:51:47 +01:00
Alexey Milovidov
5d6266c33e
Merge branch 'master' into fix_parser 2022-12-28 00:45:53 +03:00
Alexey Milovidov
14d7266e70
Merge branch 'master' into fix-30975 2022-12-27 23:21:10 +03:00
Alexey Milovidov
2892d447d4
Merge pull request #44626 from ClickHouse/alexey-milovidov-patch-5
Sometimes spot instances fail more than 20 times in a row
2022-12-27 23:20:05 +03:00