Commit Graph

56 Commits

Author SHA1 Message Date
Nikolai Kochetov
fd14faeae2 Remove DataStreams folder. 2021-10-15 23:18:20 +03:00
vdimir
71b6c9414c Minor changes related to JOIN ON ORs 2021-09-28 14:11:31 +03:00
vdimir
0a9a028c6f fix 2021-09-28 14:11:31 +03:00
vdimir
46187a73ee wip 2021-09-28 14:11:31 +03:00
Ilya Golshtein
3766d47f31 ORs in JOINs 2021-09-28 14:11:28 +03:00
vdimir
1fdbb9509f
Add additional checkTypesOfKeys to JoiningTransform::transformHeader 2021-09-14 11:03:22 +03:00
Vladimir C
3768bde572
Remove extra space in src/Interpreters/join_common.cpp 2021-08-31 17:08:35 +03:00
vdimir
943b71e4ff
Fix non joined rows from nullable column 2021-08-30 16:33:01 +03:00
Vladimir C
781b8123a5 Remove logging from NotJoinedBlocks 2021-08-19 09:55:18 +03:00
vdimir
ca67bf0e5a
Fix NotJoinedBlocks::read, add logging 2021-08-18 11:18:33 +03:00
vdimir
2dfbbe364b
Do not use BlockInputStream for NonJoined 2021-08-17 16:30:01 +03:00
vdimir
9d8178d04c
Refactor NotJoined pt2: rename classes, get rig of inheritance 2021-08-17 13:32:16 +03:00
vdimir
afa748c717
Refactor NotJoined pt1 2021-08-17 13:32:16 +03:00
vdimir
ae3726643d
Support ColumnConst(ColumnLowCardinality) in JoinCommon::convertColumnToNullable 2021-08-10 12:59:13 +03:00
vdimir
dfccc85a33
Check const and lc nested can beome nullable in JoinCommon::convertColumnToNullable 2021-08-10 11:37:55 +03:00
vdimir
7c15d6aa41
Do not convert const to full in JoinCommon::convertColumnToNullable 2021-08-10 10:50:56 +03:00
vdimir
77adb509cb
Fix Nullable const columns in JOIN 2021-08-10 10:42:56 +03:00
vdimir
d6f66ef303
Fix JoinCommon::convertColumnToNullable 2021-08-06 16:13:30 +03:00
vdimir
d53ade572e
Fix non joined stream structure 2021-08-06 14:54:04 +03:00
vdimir
b9ca3179de
Check if NotJoined::right_nullability_removes is used 2021-08-06 13:52:42 +03:00
Vladimir
576b407804
Support conditions in JOIN ON section (#24420)
* Try to enforce table identification in CollectJoinOnKeysMatcher

* Support filtering conditions in JOIN ON for HashJoin

* Correct handle non equi join

* Update test 00878_join_unexpected_results

* Join on filters calculated as one row before join

* Do not lookup key in hash join if condition for row is not hold

* better

* Support filtering conditions in JOIN ON for MergeJoin

* Support Nullable mask in JOIN ON section

* Fix style in Interpreters/TableJoin.cpp

* Change return type of getColumnAsMask in join_common to ColumnPtr

* Handle Nullable(Nothing) type in JOIN ON section, add test cases

* Fix type cast JoinCommon::getColumnAsMask

* Check type if conditions in JOIN ON section, support functions

* Update tests with JOIN ON

* Style changes, add comments for conditions in JOIN ON section

* Add test cases for join on condtions

* JOIN ON key1 = key2 AND (cond1 OR cond2)

* Remove CollectJoinOnKeysVisitor has_join_keys

* Add test cases for join on nullable/lc conditions

* Fix style

* Change error code 48 to 403 in join on tests

* Fix whitespace
2021-07-21 20:03:33 +03:00
vdimir
b49e37aa07
Rewrite join totals, fix block structure mismatch 2021-07-14 13:02:23 +03:00
vdimir
a61b7f2326
Add reqired right keys to join totals block 2021-07-12 18:00:55 +03:00
vdimir
0ebca58e86
Check column in removeColumnNullability 2021-06-18 14:06:55 +03:00
vdimir
b25f6ba5b6
Remove assumeMutable from removeColumnNullability 2021-06-18 11:13:53 +03:00
vdimir
23fb229dec
Merge branch 'update_01049_join_low_card_bug' into issue-23351 2021-06-17 15:38:40 +03:00
vdimir
0cee5ad8e8
Use IColumn::mutate in JoinCommon::convertColumnToNullable 2021-06-17 13:24:17 +03:00
vdimir
ebdce8e1a6
Fix JoinCommon::convertColumnToNullable for LC(Nullable) 2021-06-17 13:17:28 +03:00
vdimir
392148ba86
Handle incorrect type of column in JoinCommon::removeColumnNullability 2021-05-17 14:24:34 +03:00
vdimir
8dddcebe8c
Handle correct nullability with low card in HashJoin 2021-05-15 17:09:51 +03:00
vdimir
9091bba3d6
Restore correct cardinality in HashJoin 2021-05-15 14:39:13 +03:00
Alexey Milovidov
ad88819ee4 Fix a bunch of warnings from PVS-Studio 2021-05-08 19:13:10 +03:00
vdimir
fb88547a04
Call nestedToNullable without copying column in convertColumnToNullable for join 2021-04-28 20:18:03 +03:00
vdimir
6e4b37a45e
Merge branch 'master' into fix-join-lowcard-nullable 2021-04-28 20:06:49 +03:00
alexey-milovidov
ca230224cf
Merge pull request #23549 from vdimir/issue-17718
Remove clashed columns from totals for StorageJoin
2021-04-24 03:19:00 +03:00
vdimir
9460989721
Remove clashed columns from totals for StorageJoin 2021-04-23 15:37:05 +03:00
Alexander Kuzmenkov
06ca44a378 fix pvs warnings 2021-04-22 22:54:58 +03:00
vdimir
826296c799
Convert columns to LC(Nullable(T)) in join 2021-04-17 22:03:32 +03:00
vdimir
8f5c8f32df
Shrink totals block to 1 row for JOIN with TOTALS and arrayJoin 2021-03-25 17:32:36 +03:00
vdimir
b0f6f30298
Revert "Refactor join: make IJoin implementations independent from TableJoin"
This reverts commit e6406c3f4c.
2021-03-05 17:34:43 +03:00
vdimir
e6406c3f4c
Refactor join: make IJoin implementations independent from TableJoin 2021-03-05 16:38:49 +03:00
vdimir
b7c7c97d10
Merge branch 'master' into join-cast-types-v2 2021-03-01 11:42:21 +03:00
vdimir
932286df1f
Convert columns to nullable for totals in join 2021-02-26 16:32:34 +03:00
vdimir
a378bd08aa
Perform implicit type conversion for JOIN ON keys 2021-02-19 14:28:40 +03:00
vdimir
435f63f42b
Calculate common type for join using in TreeRewriter
Split before_join and converting_join_columns dags

Add more detailed comments for column type conversion for join using
2021-02-19 14:28:32 +03:00
vdimir
f5b98015a8
Fix converting right key type in join using 2021-02-19 14:24:33 +03:00
vdimir
4c36cd1737
Add converting step for 'join using' 2021-02-19 14:24:28 +03:00
vdimir
06d0252e76
Use IDataType::insertDefaultInto for inserting default values in join 2021-01-21 17:23:58 +03:00
vdimir
2f11fdf4df
Fix default value in join types with non-zero default (close #18197) 2021-01-21 16:49:44 +03:00
Artem Zuikov
2280482530
Keep LowCardinality in MergeJoin left key result type (#15088) 2020-09-22 13:16:22 +03:00