org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule
public class ConvertAssignToAggregateRule extends AbstractVXQueryAggregateRule
Before plan__parent ASSIGN( $v2 : sf1( $v0 ) ) plan__child Where sf1 is a XQuery aggregate function expression (count, max, min, average, sum) with any supporting functions like treat, promote or data. The variable $v0 is defined in plan__child. After plan__parent SUBPLAN{ AGGREGATE( $v2 : af1( $v1 ) ) UNNEST( $v1 : iterate( $v0 ) ) NESTEDTUPLESOURCE } plan__child
Constructor | Description |
---|---|
ConvertAssignToAggregateRule() |
Modifier and Type | Method | Description |
---|---|---|
boolean |
rewritePost(org.apache.commons.lang3.mutable.Mutable<org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator> opRef,
org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext context) |
|
boolean |
rewritePre(org.apache.commons.lang3.mutable.Mutable<org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator> opRef,
org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext context) |
Find where an assign for a aggregate function is used before aggregate operator for a sequence.
|
getAggregateFunction
public boolean rewritePre(org.apache.commons.lang3.mutable.Mutable<org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator> opRef, org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext context) throws org.apache.hyracks.algebricks.common.exceptions.AlgebricksException
org.apache.hyracks.algebricks.common.exceptions.AlgebricksException
public boolean rewritePost(org.apache.commons.lang3.mutable.Mutable<org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator> opRef, org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext context)
Copyright © 2019 Apache Software Foundation. All rights reserved.