Uses of Class
org.apache.drill.exec.planner.logical.DrillParseContext
Package
Description
-
Uses of DrillParseContext in org.apache.drill.exec.planner.common
Modifier and TypeMethodDescriptionprotected LogicalExpression
DrillFilterRelBase.getFilterExpression
(DrillParseContext context) protected List<NamedExpression>
DrillProjectRelBase.getProjectExpressions
(DrillParseContext context) -
Uses of DrillParseContext in org.apache.drill.exec.planner.index
Modifier and TypeMethodDescriptionstatic org.apache.calcite.rex.RexNode
IndexPlanUtils.rewriteFunctionalRex
(IndexCallContext indexContext, DrillParseContext parseContext, DrillProjectRelBase project, org.apache.calcite.rel.RelNode scan, org.apache.calcite.rex.RexNode toRewriteRex, org.apache.calcite.rel.type.RelDataType newRowType, FunctionalIndexInfo functionInfo) A RexNode forest with three RexNodes for expressions "cast(a.q as int) * 2, b+c, concat(a.q, " world")" on Scan RowType('a', 'b', 'c') will be like this: (0)Call:"*" Call:"concat" / \ / \ (1)Call:CAST 2 Call:"+" (5)Call:ITEM ' world' / \ / \ / \ (2)Call:ITEM TYPE:INT (3)$1 (4)$2 $0 'q' / \ $0 'q' So for above expressions, when visiting the RexNode trees using PathInExpr, we could mark indexed expressions in the trees, as shown in the diagram above are the node (1), then collect the schema paths in the indexed expression but found out of the indexed expression -- node (5), and other regular schema paths (3) (4)static LogicalExpression
RexToExpression.toDrill
(DrillParseContext context, DrillProjectRelBase project, org.apache.calcite.rel.RelNode input, org.apache.calcite.rex.RexNode expr) ModifierConstructorDescriptionRexToDrillExt
(DrillParseContext context, DrillProjectRelBase project, org.apache.calcite.rel.RelNode input) -
Uses of DrillParseContext in org.apache.drill.exec.planner.logical
Modifier and TypeMethodDescriptionstatic LogicalExpression
DrillOptiq.toDrill
(DrillParseContext context, List<org.apache.calcite.rel.RelNode> inputs, org.apache.calcite.rex.RexNode expr) Converts a tree ofRexNode
operators into a scalar expression in Drill syntax using multiple inputs.static LogicalExpression
DrillOptiq.toDrill
(DrillParseContext context, org.apache.calcite.rel.RelNode input, org.apache.calcite.rex.RexNode expr) Converts a tree ofRexNode
operators into a scalar expression in Drill syntax using one input.static LogicalExpression
DrillOptiq.toDrill
(DrillParseContext context, org.apache.calcite.rel.type.RelDataType type, org.apache.calcite.rex.RexBuilder builder, org.apache.calcite.rex.RexNode expr) ModifierConstructorDescriptionDrillImplementor
(DrillParseContext context, PlanProperties.Generator.ResultMode mode) RexToDrill
(DrillParseContext context, org.apache.calcite.rel.RelNode input) RexToDrill
(DrillParseContext context, org.apache.calcite.rel.type.RelDataType rowType, org.apache.calcite.rex.RexBuilder builder) -
Uses of DrillParseContext in org.apache.drill.exec.planner.physical
Modifier and TypeMethodDescriptionprotected LogicalExpression
FlattenPrel.getFlattenExpression
(DrillParseContext context) protected List<NamedExpression>
ProjectAllowDupPrel.getProjectExpressions
(DrillParseContext context)