do not identify function types by throwing exceptions#8137
do not identify function types by throwing exceptions#8137richardstartin merged 2 commits intoapache:masterfrom
Conversation
Codecov Report
@@ Coverage Diff @@
## master #8137 +/- ##
=============================================
+ Coverage 30.69% 70.15% +39.45%
- Complexity 0 4303 +4303
=============================================
Files 1613 1623 +10
Lines 83952 84302 +350
Branches 12597 12637 +40
=============================================
+ Hits 25768 59141 +33373
+ Misses 55889 21071 -34818
- Partials 2295 4090 +1795
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
pinot-common/src/main/java/org/apache/pinot/common/function/FunctionDefinitionRegistry.java
Outdated
Show resolved
Hide resolved
pinot-common/src/main/java/org/apache/pinot/common/function/FunctionDefinitionRegistry.java
Outdated
Show resolved
Hide resolved
Jackie-Jiang
left a comment
There was a problem hiding this comment.
Agree on avoiding the exception in normal execution path. Do we have some performance number back this change?
pinot-common/src/main/java/org/apache/pinot/common/function/TransformFunctionType.java
Outdated
Show resolved
Hide resolved
pinot-segment-spi/src/main/java/org/apache/pinot/segment/spi/AggregationFunctionType.java
Outdated
Show resolved
Hide resolved
I had numbers for a few of these PRs combined on #8134 (which have been submitted separately because some users prefer tightly scoped changes) and this was just an incremental improvement. I can measure this separately. |
e027ec3 to
830301a
Compare
|
@Jackie-Jiang here are some numbers for the query I was tuning (on my MacBook so incomparable to numbers on different PRs) master branch |
|
The test failure should be addressed by #8154 |
830301a to
f12498d
Compare
pinot-segment-spi/src/main/java/org/apache/pinot/segment/spi/AggregationFunctionType.java
Outdated
Show resolved
Hide resolved
pinot-segment-spi/src/main/java/org/apache/pinot/segment/spi/AggregationFunctionType.java
Outdated
Show resolved
Hide resolved
f12498d to
7f7974e
Compare
This PR allows function (transform/aggregation) type to be identified without throwing exceptions when an expression (e.g. "ASC") is not a function type, this reduces allocation rate.