druid/benchmarks
Zoltan Haindrich 7552dc49fb
Reduce amount of expression objects created during evaluations (#15552)
I was looking into a query which was performing a bit poorly because the case_searched was touching more than 1 columns (if there is only 1 column there is a cache based evaluator).
While I was doing that I've noticed that there are a few simple things which could help a bit:

use a static TRUE/FALSE instead of creating a new object every time
create the ExprEval early for ConstantExpr -s (except the one for BigInteger which seem to have some odd contract)
return early from type autodetection
these changes mostly reduce the amount of garbage the query creates during case_searched evaluation; although ExpressionSelectorBenchmark shows some improvements ~15% - but my manual trials on the taxi dataset with 60M rows showed more improvements - probably due to the fact that these changes mostly only reduce gc pressure.
2023-12-15 16:11:59 +05:30
..
src/test Reduce amount of expression objects created during evaluations (#15552) 2023-12-15 16:11:59 +05:30
assembly.xml Fix for building in Eclipse & VS Code. (#7481) 2020-02-13 14:58:32 -08:00
pom.xml Prepare master for Druid 29 (#15121) 2023-10-11 10:33:45 +05:30