Class ReplaceStatsFilteredAggWithEval


public class ReplaceStatsFilteredAggWithEval extends OptimizerRules.OptimizerRule<LogicalPlan>
Replaces an aggregation function having a false/null filter with an EVAL node.
     ... | STATS/INLINESTATS x = someAgg(y) WHERE FALSE {BY z} | ...
     =>
     ... | STATS/INLINESTATS x = someAgg(y) {BY z} > | EVAL x = NULL | KEEP x{, z} | ...
 
This rule is applied to both STATS' Aggregate and InlineJoin right-hand side Aggregate plans. The logic is common for both, but the handling of the InlineJoin is slightly different when it comes to pruning its right-hand side Aggregate.