-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pass literal within AggregateCall via rexList #13282
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #13282 +/- ##
============================================
+ Coverage 61.75% 62.16% +0.40%
+ Complexity 207 198 -9
============================================
Files 2436 2534 +98
Lines 133233 139300 +6067
Branches 20636 21530 +894
============================================
+ Hits 82274 86590 +4316
- Misses 44911 46234 +1323
- Partials 6048 6476 +428
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
break; | ||
default: | ||
throw new IllegalStateException("Illegal aggregation function operand type: " + operand.getKind()); | ||
assert operand instanceof RexExpression.Literal; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
will this be a function call e.g. array of literals?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It won't be. We only extract literal as operand, others will remain input reference.
8924721
to
107874c
Compare
Another try of #13217
PinotAggregateExchangeNodeInsertRule
, reconstruct allAggregateCall
to carry the literal within the newly createdAggregateCall
PinotAggregateExchangeNodeInsertRule
to significantly simplify the special handling inAggregateOperator