Amos Bird
feb3a12d34
fix
2021-11-17 23:11:23 +08:00
Amos Bird
7b9a19f066
enhance minmax_count projection
2021-11-17 22:05:57 +08:00
Amos Bird
d647a2db0c
Fix invalid header in projection block calculation
2021-10-30 17:26:43 +08:00
Amos Bird
05d93796dc
Fix minmax_count projection with primary key in partition expr
2021-10-19 23:36:07 +08:00
Nikolai Kochetov
2a95d7fc87
Merge pull request #29918 from amosbird/projection-improve5
...
Add primary key to minmax_count_projection
2021-10-17 14:04:18 +03:00
Nikolai Kochetov
a08c98d760
Move some files.
2021-10-16 17:03:50 +03:00
Amos Bird
9ceb668a4d
Fix TSan
2021-10-16 18:13:41 +08:00
Amos Bird
77c4a5fa18
Better
2021-10-16 18:13:41 +08:00
Amos Bird
77a2022cf5
Add primary key to minmax_count_projection
2021-10-16 18:13:41 +08:00
Amos Bird
83717b7c3b
Get rid of naming limitation of projections.
2021-10-11 18:32:17 +08:00
Nikolai Kochetov
78a7665f43
Merge branch 'master' into rewrite-pushing-to-views
2021-09-27 10:56:50 +03:00
Amos Bird
983ee004c7
Add empty key description builder.
2021-09-24 01:35:41 +08:00
Amos Bird
6b3cd34cff
Disable projections when ARRAY JOIN is used.
2021-09-18 08:15:59 +08:00
Nikolai Kochetov
341553febd
Fix build.
2021-09-16 20:40:42 +03:00
Mike Kot
8e9aacadd1
Initial: replacing hardcoded toString for enums with magic_enum
2021-09-06 16:24:03 +02:00
Amos Bird
b68857d086
Simplify projection, add minmax_count projection.
2021-08-28 11:25:37 +08:00
Amos Bird
0169fce78e
Projection bug fixes and refactoring.
2021-08-26 19:09:31 +08:00
Amos Bird
3be331edeb
Better exception for invalid projection creation
2021-05-31 12:24:09 +08:00
Amos Bird
edd23d06ad
Fix alter table drop projection if exists
2021-05-28 21:27:36 +08:00
Amos Bird
dfa5629071
Remove projection type ast
2021-05-11 18:12:29 +08:00
Amos Bird
35961c0c5d
Use ActionsDAG to rewrite projection queries
2021-05-11 18:12:27 +08:00
Nikolai Kochetov
bf95b684a7
Remove copy constructor from ProjectionDescription
2021-05-11 18:12:27 +08:00
Nikolai Kochetov
29d7038e30
Add ProjectionDescription::Type enum. Remove some checks.
2021-05-11 18:12:27 +08:00
Nikolai Kochetov
95431168c2
Try to enable normal projections.
2021-05-11 18:12:26 +08:00
Amos Bird
264cff6415
Projections
...
TODO (suggested by Nikolai)
1. Build query plan fro current query (inside storage::read) up to WithMergableState
2. Check, that plan is simple enough: Aggregating - Expression - Filter - ReadFromStorage (or simplier)
3. Check, that filter is the same as filter in projection, and also expression calculates the same aggregation keys as in projection
4. Return WithMergableState if projection applies
3 will be easier to do with ActionsDAG, cause it sees all functions, and dependencies are direct (but it is possible with ExpressionActions also)
Also need to figure out how prewhere works for projections, and
row_filter_policies.
wip
2021-05-11 18:12:23 +08:00