Class ReplaceChangePointByExpressionWithEval
java.lang.Object
org.elasticsearch.xpack.esql.rule.Rule<ChangePoint,LogicalPlan>
org.elasticsearch.xpack.esql.optimizer.rules.logical.OptimizerRules.OptimizerRule<ChangePoint>
org.elasticsearch.xpack.esql.optimizer.rules.logical.ReplaceChangePointByExpressionWithEval
public final class ReplaceChangePointByExpressionWithEval
extends OptimizerRules.OptimizerRule<ChangePoint>
Extract non-attribute
ChangePoint grouping expressions into a synthetic Eval.
For example, CHANGE_POINT v ON k BY LENGTH(label) becomes
EVAL $$change_point_by_0 = LENGTH(label) | CHANGE_POINT v ON k BY $$change_point_by_0.
PushDownEval in the operators batch takes care of pushing the Eval below any
OrderBy if present.
Foldable groupings are pruned separately by PruneLiteralsInChangePointBy in the operators batch.
-
Field Summary
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class org.elasticsearch.xpack.esql.optimizer.rules.logical.OptimizerRules.OptimizerRule
apply
-
Constructor Details
-
ReplaceChangePointByExpressionWithEval
public ReplaceChangePointByExpressionWithEval()
-
-
Method Details
-
rule
- Specified by:
rulein classOptimizerRules.OptimizerRule<ChangePoint>
-