Commit Graph

14 Commits

Author SHA1 Message Date
Alexey Milovidov
8a6e07f0ea Make projections production-ready 2023-05-10 03:35:13 +02:00
Nikolai Kochetov
61a484f0bd Batch fix for projections analysis with analyzer. 2023-04-03 16:44:31 +00:00
Nikolai Kochetov
48fc545e68
Update 01710_projections.sql 2023-03-02 17:27:57 +01:00
Nikolai Kochetov
95292ce5c7 Make 01710_projections more stable. 2023-03-02 16:26:46 +00:00
alesapin
50121e42f3 Enable projections and zero copy replication 2022-09-09 18:38:02 +02:00
Alexey Milovidov
7f2ffb277e Fix test 2022-03-24 02:36:11 +01:00
alesapin
25c0b07e68 Disable some tests 2022-02-04 14:31:58 +03:00
Amos Bird
a113acc40c
Fix empty key 2021-05-14 22:54:14 +08:00
Amos Bird
8de016d33a
Fix empty key projection query analysis 2021-05-14 22:26:26 +08:00
Amos Bird
dfa5629071
Remove projection type ast 2021-05-11 18:12:29 +08:00
Amos Bird
ba17acbd63
Fix tests 2021-05-11 18:12:28 +08:00
Amos Bird
e1e560765c
Fix missing columns 2021-05-11 18:12:27 +08:00
Amos Bird
483bd165e7
Check if pipeline is simple and add more comments 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