Antonio Andelic
34b2307259
Convert columns to full when multiple disjunct used
2022-03-24 13:56:00 +00:00
Maksim Kita
3c5c267c17
Improve performance of ASOF join
2022-03-23 12:19:38 +01:00
mergify[bot]
93b13c0232
Merge branch 'master' into asof_ftw
2022-03-02 13:20:50 +00:00
Raúl Marín
4439b23e2b
Attempt manual unpack
2022-02-19 21:01:47 +01:00
Raúl Marín
bb1d773ffd
Reduce changes against master
2022-02-18 17:58:23 +01:00
Raúl Marín
f8cc024ba1
Less indirect access
2022-02-18 16:16:29 +01:00
Raúl Marín
4ba5b931a5
AsofRowRefs: Remove extra level of indirection
2022-02-18 11:15:11 +01:00
Raúl Marín
34b110b778
Remove variant from AsofRowRefs
2022-02-18 11:02:14 +01:00
Raúl Marín
d06ef3e1db
AsofRowRefs: Simplify variant code
2022-02-16 11:12:28 +01:00
vdimir
510a909d0d
Remove nullable_left/right_side flags from Hash/MergeJoin
2022-02-15 11:15:50 +00:00
vdimir
2de6eaf838
Fix LowCardinality using key for join_use_nulls in pipeline
2022-02-15 11:11:59 +00:00
vdimir
99ca89c0ca
Fix StorageJoin and Asof or join_use_nulls in pipeline
2022-02-14 14:14:27 +00:00
vdimir
ee09ec4dd1
Apply join_use_nulls on types before join
2022-02-11 15:56:45 +00:00
Anton Popov
13b35a6817
Merge remote-tracking branch 'upstream/master' into HEAD
2021-11-08 21:29:16 +03:00
Vladimir C
a9689c0f27
Merge pull request #25894 from vdimir/join-on-const-to-cross
2021-11-08 15:52:40 +03:00
vdimir
56bc802ee2
Support join on constant
2021-11-08 15:44:13 +03:00
vdimir
4bc9798c63
Some optimizations for constant conditions in JOIN ON
2021-11-08 15:36:34 +03:00
Anton Popov
d71ffc355a
Merge remote-tracking branch 'upstream/master' into HEAD
2021-10-18 15:18:22 +03:00
Nikolai Kochetov
067eaadadd
Merge branch 'master' into removing-data-streams-folder
2021-10-16 09:46:05 +03:00
Nikolai Kochetov
fd14faeae2
Remove DataStreams folder.
2021-10-15 23:18:20 +03:00
Anton Popov
7aa6068fb2
Merge remote-tracking branch 'upstream/master' into HEAD
2021-10-14 19:44:08 +03:00
Vladimir C
dc4bb920d3
Merge branch 'master' into join_deadlock
2021-10-11 10:18:17 +03:00
Vladimir C
b02c12b182
Merge pull request #23881 from darkkeks/fix-cross-to-inline-join-error-condition
2021-10-07 11:09:36 +03:00
Alexey Milovidov
fe6b7c77c7
Rename "common" to "base"
2021-10-02 10:13:14 +03:00
vdimir
a817bed287
Replace isComma || isCross -> isCrossOrComma
2021-10-01 14:52:12 +03:00
Raúl Marín
0ee5c0bff5
Use RWLock in StorageJoin to avoid deadlocks
2021-09-29 19:30:07 +02:00
Anton Popov
914781052e
Merge remote-tracking branch 'upstream/master' into HEAD
2021-09-29 17:37:07 +03:00
Ilya Golshtein
29b911f86b
rebase collisions fixed in ORs in JOIN
2021-09-28 14:11:32 +03:00
Ilya Golshtein
fa6c2a64e4
minor merge mistakes fixed in ORs in JOIN
2021-09-28 14:11:32 +03:00
Ilya Golshtein
8057e052a6
crash fix, style fixes, ASTs moved out of TableJoin in ORs in JOIN
2021-09-28 14:11:32 +03:00
vdimir
f8e8f6da14
Use table_join->getAllNames in HashJoin.cpp
2021-09-28 14:11:31 +03:00
vdimir
71b6c9414c
Minor changes related to JOIN ON ORs
2021-09-28 14:11:31 +03:00
Ilya Golshtein
300eb5098d
fix rebase collisions in ORs in JOIN
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
aa3d8a431a
No redundant convertColumnsToNullable if ORs in JOIN
2021-09-28 14:11:30 +03:00
Ilya Golshtein
5ed6b26c9d
any_join_distinct_right_table_keys tests and fix for ORs in JOIN
2021-09-28 14:11:30 +03:00
Ilya Golshtein
be034444ba
fix any_join_distinct_right_table_keys crash if ORs in JOIN
2021-09-28 14:11:30 +03:00
vdimir
d37b88fb07
fix HashJoin::initRightBlockStructure
2021-09-28 14:11:30 +03:00
vdimir
38374ba07b
fix join->getNonJoinedBlocks
2021-09-28 14:11:30 +03:00
Ilya Golshtein
24e3e04203
BlockWithFlags removed from vdimir's change
2021-09-28 14:11:30 +03:00
vdimir
6b6592fda7
Use JoinUsedFlags with multiple dijuncts
2021-09-28 14:11:30 +03:00
Ilya Golshtein
68d6a0ee85
prohibit storage join if ORs
2021-09-28 14:11:29 +03:00
Ilya Golshtein
4bddd0bc71
make PVS check happy with ORs in JOIN
2021-09-28 14:11:29 +03:00
Ilya Golshtein
d0990e270a
making gcc happy, minor improvements in ORs in JOIN
2021-09-28 14:11:29 +03:00
Ilya Golshtein
b03415bd0e
Fixed other bug if OR together with filter conditions
2021-09-28 14:11:29 +03:00
Ilya Golshtein
f94b2cba2d
Fixed bug if OR together with filter conditions, some comments
2021-09-28 14:11:29 +03:00
Ilya Golshtein
a18c6f7f8e
merge error fixed
2021-09-28 14:11:29 +03:00
Ilya Golshtein
db50015eed
review changes 1 - ASTPtr, some comments
2021-09-28 14:11:29 +03:00
Ilya Golshtein
3766d47f31
ORs in JOINs
2021-09-28 14:11:28 +03:00
Anton Popov
6f9e53197c
Merge remote-tracking branch 'upstream/master' into HEAD
2021-09-20 17:17:05 +03:00
alexey-milovidov
5f5b96aa57
Merge pull request #28982 from vdimir/issue-28660-pmj-fuzz
...
Add additional checkTypesOfKeys to JoiningTransform::transformHeader
2021-09-20 12:30:00 +03:00
Anton Popov
eef436fe22
Merge remote-tracking branch 'upstream/master' into HEAD
2021-09-16 18:07:42 +03:00
vdimir
2aef13e802
Update error messages for logical errors in HashJoin
2021-09-14 15:05:09 +03:00
vdimir
1fdbb9509f
Add additional checkTypesOfKeys to JoiningTransform::transformHeader
2021-09-14 11:03:22 +03:00
Anton Popov
8203bd1ac6
Merge remote-tracking branch 'upstream/master' into HEAD
2021-09-09 14:04:37 +03:00
vdimir
ed8c156190
Clean up TableJoin storage join
2021-09-01 15:05:47 +03:00
Anton Popov
c3c3a06078
Merge remote-tracking branch 'upstream/master' into HEAD
2021-08-20 01:45:38 +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
d53ade572e
Fix non joined stream structure
2021-08-06 14:54:04 +03:00
Anton Popov
16ed0f6ed4
Merge remote-tracking branch 'upstream/master' into HEAD
2021-08-02 17:55:17 +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
Anton Popov
c4b454494f
Merge remote-tracking branch 'upstream/master' into HEAD
2021-07-20 15:41:01 +03:00
vdimir
b49e37aa07
Rewrite join totals, fix block structure mismatch
2021-07-14 13:02:23 +03:00
Anton Popov
14168b11f2
Merge remote-tracking branch 'upstream/master' into HEAD
2021-07-07 17:05:11 +03:00
vdimir
4ce829d7c1
Create KeyGetter outside of joinRightColumns
2021-06-23 14:27:39 +03:00
vdimir
8f9166df4e
Add read flag to KeyGetterForDict
2021-06-23 14:15:31 +03:00
Anton Popov
567043113c
Merge remote-tracking branch 'upstream/master' into HEAD
2021-06-21 01:36:06 +03:00
Vladimir
fab7c9c7f6
Merge pull request #24061 from vdimir/issue-23351
2021-06-18 11:07:28 +03:00
vdimir
05115dcd32
Merge branch 'master' into issue-23351
2021-06-15 12:06:42 +03:00
Amos Bird
4c573b36fe
Fix joinGetOrNull with not-nullable columns
2021-06-15 16:34:53 +08:00
Anton Popov
e69cbab3fb
Merge remote-tracking branch 'upstream/master' into HEAD
2021-06-02 20:18:19 +03:00
Alexander Kuzmenkov
f51ecf8a72
Merge pull request #23769 from vdimir/issue-20309
...
Add qualified names for right columns for storage join
2021-06-01 14:42:49 +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
Anton Popov
d8df0903b9
Merge remote-tracking branch 'upstream/master' into HEAD
2021-05-14 23:38:16 +03:00
vdimir
cb89a2be97
StorageJoin clashing column name with JOIN ON
2021-05-10 17:56:12 +03:00
vdimir
f03f591e55
Upd comments for StoreageJoin
2021-05-10 17:54:32 +03:00
vdimir
abdb731ce2
Merge branch 'master' into issue-20309
2021-05-06 09:07:51 +03:00
Alexey Milovidov
86169cc36e
Merge branch 'master' into normalize-bigint
2021-05-04 14:53:42 +03:00
vdimir
8197e1c0c1
Add qualified names for right columns for storage join
2021-04-29 17:30:02 +03:00
Nikolai Kochetov
69ddca1d73
Refactor join step, part 3
2021-04-28 20:32:12 +03:00
Alexey Milovidov
649550c5ab
Attempt to normalize big integers
2021-04-25 12:30:43 +03:00
Alexey Milovidov
8f01af62d9
Merge branch 'master' into normalize-bigint
2021-04-25 06:57:44 +03:00
Anton Popov
860ed20368
ColumnSparse: more fixes
2021-04-15 05:16:09 +03:00
Vladimir
df728dc4ba
Merge pull request #21248 from vdimir/fix-join-totals-nullable
...
Convert columns to nullable for totals in join
2021-02-27 11:31:02 +03:00
vdimir
932286df1f
Convert columns to nullable for totals in join
2021-02-26 16:32:34 +03:00
vdimir
9c1ba71416
Merge remote-tracking branch 'upstream/master' into fix-race-storage-join
2021-02-25 19:13:49 +03:00
vdimir
6f864ddb42
Minor changes in Hash/StorageJoin, add TableLockHolder to ExecutableFunctionJoinGet
2021-02-25 14:21:06 +03:00
vdimir
f1c60109f6
Add static_assert to joinGet to keep information about current locking logic
2021-02-25 12:42:20 +03:00
vdimir
2f70e895fc
Update StorageJoin locking
...
Move joinGet into StorageJoin
Protect JoinSource with lock, add test
Add comments about locking logic
2021-02-25 12:31:22 +03:00
vdimir
6aa4791be2
Remove unused *Locked methods from HashJoin, add comments
2021-02-24 19:19:04 +03:00
Amos Bird
2cb273d436
Fix
2021-02-24 16:44:51 +08:00
Amos Bird
0f7f2a4962
Support LC type for joinGet
2021-02-24 11:35:45 +08:00
vdimir
6cc2fb5e9f
Try to fix race in storage join: block parralel inserts
2021-02-20 18:00:59 +03:00
vdimir
776b682f28
Add comment for used_flags in hash join, fix build
2021-02-08 14:38:31 +03:00
vdimir
01a6e01ad7
Store usage info flags separate from row refs in hash join
2021-02-05 16:20:13 +03:00
Alexey Milovidov
b9b573976e
Minor code improvement in JOIN
2021-01-28 11:26:10 +03:00
Alexey Milovidov
093108bf81
Normalize BigInt implementation
2021-01-27 03:54:57 +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
Alexey Milovidov
5358890039
Remove bad code in HashJoin
2021-01-05 02:49:31 +03:00
Alexey Milovidov
203af8b7ec
Fix error
2020-12-30 16:52:37 +03:00
Alexey Milovidov
f98cbd7696
Fix TSan report in StorageSet and StorageJoin
2020-12-23 05:10:37 +03:00
Nikolai Kochetov
07a7c46b89
Refactor ExpressionActions [Part 3]
2020-11-03 14:28:28 +03:00
Nikolai Kochetov
109fd9d6d7
Merge pull request #13015 from amosbird/jgmko
...
Refactor joinGet and implement multi-key lookup.
2020-09-13 22:39:48 +03:00
Artem Zuikov
7c20aa2c62
Another 256-bit integers (strict 32 bytes) ( #14229 )
2020-09-04 16:33:02 +03:00
Artem Zuikov
d304d522cc
Refactoring: rename types to allow change bigint library ( #14219 )
2020-09-01 12:54:50 +03:00
Alexey Milovidov
12f66fa82c
Fix 99% of typos
2020-08-08 04:01:47 +03:00
Artem Zuikov
d4266d9619
fix left asof join with join_use_nulls ( #13291 )
2020-08-04 02:11:39 +03:00
Amos Bird
230938d3a3
Refactor joinGet and implement multi-key lookup.
2020-07-28 22:38:52 +08:00
alesapin
c83bf1ab74
Revert "Refactor joinGet and implement multi-key lookup."
2020-07-23 10:47:17 +03:00
alexey-milovidov
004481f98b
Merge pull request #12418 from amosbird/jgmk
...
Refactor joinGet and implement multi-key lookup.
2020-07-22 21:44:24 +03:00
Artem Zuikov
ff372ec0f0
Standard join type syntax position ( #12520 )
2020-07-16 11:56:45 +03:00
alexey-milovidov
156be5e270
Update HashJoin.cpp
2020-07-15 10:19:50 +08:00
Amos Bird
46c2bb57ec
Refactor joinGet and implement multi-key lookup.
2020-07-15 10:12:04 +08:00
Artem Zuikov
6b26842ce5
RIGHT and FULL JOIN for MergeJoin ( #12118 )
2020-07-10 21:10:06 +03:00
Artem Zuikov
6cdeb060fb
Fix JOIN over LC and Nullable in key ( #11414 )
2020-06-04 13:07:22 +03:00
Artem Zuikov
7e7aea0ddb
better errors for joinGet()
2020-06-02 23:26:41 +03:00
Alexey Milovidov
25f941020b
Remove namespace pollution
2020-05-31 00:57:37 +03:00
Alexey Milovidov
7e1813825b
Return old names of macros
2020-05-24 01:24:01 +03:00
Alexey Milovidov
ee4ffbc332
find {base,src,programs} -name '*.h' -or -name '*.cpp' | xargs grep -l -P 'LOG_\w+\([^,]+, "[^"]+" << [^<]+\);' | xargs sed -i -r -e 's/(LOG_\w+)\(([^,]+), "([^"]+)" << ([^<]+)\);/\1_FORMATTED(\2, "\3{}", \4);/'
2020-05-23 19:47:56 +03:00
Nikolai Kochetov
4d0503f021
Make IColumn::mutate() static.
2020-05-14 11:30:18 +03:00
Alexey Milovidov
0a7edce036
Checkpoint
2020-04-22 09:01:33 +03:00
Artem Zuikov
96b9edae29
fix comment
2020-04-21 22:09:18 +03:00
Artem Zuikov
17b0641b02
improve HashJoin memory usage
2020-04-21 22:01:34 +03:00
Artem Zuikov
6106b2bfc7
Merge branch 'master' into joins
2020-04-13 20:37:27 +03:00
Artem Zuikov
df01227bd2
move DictionaryReader code out of header
2020-04-13 20:36:07 +03:00
Artem Zuikov
0b7ae2c2bf
working version
2020-04-13 20:03:11 +03:00
Alexey Milovidov
ca5172cc63
Merging #10094
2020-04-12 06:25:47 +03:00
alexey-milovidov
a2418f94df
Update HashJoin.cpp
2020-04-12 06:19:13 +03:00
alexey-milovidov
d6544159ba
Update HashJoin.cpp
2020-04-12 06:18:21 +03:00
Artem Zuikov
9901bf0f6e
fix column size in KeyGetterForDict
2020-04-10 14:03:08 +03:00
Artem Zuikov
8d6f641796
join over dictionary concept
2020-04-08 21:59:52 +03:00
Amos Bird
0b5cc80580
joinGetOrNull
2020-04-08 11:01:08 +08:00
Artem Zuikov
8297683972
renames: AnalyzedJoin -> TableJoin, Join -> HashJoin ( #10065 )
2020-04-07 12:48:47 +03:00