You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* perf(expr pass): cache aggregate function call in single projection
* test: add two test cases for aggregate calls
1. nested aggregate call
2. duplicated aggregate call
* feat(lambdafy): cache same expression
Initially we only intend to cache udaf calls under same window, this
change seem to cache all expressions under correct context.
This cache mechanism may not work since its not fully tested.
* feat(expr pass): letify expression to avoid repeated agg calls in nested
aggregate expression
A nested agg function call, e.g.
agg_fn1(col1, agg_fn2(col2))
Will evaluate like a let expression:
LET fn2 = agg_fn2(col2) IN agg_fn1(col1, fn2)
TODO:
- fix agg call cache
* feat(expr pass): equivalent agg call cache
TOOD:
- there are some cases still need fix
* fix: set output to id node for equivalent agg calls
0 commit comments