Class CoveringIndexPlanGenerator
java.lang.Object
org.apache.drill.exec.planner.physical.SubsetTransformer<org.apache.calcite.rel.RelNode,org.apache.calcite.rel.InvalidRelException>
org.apache.drill.exec.planner.index.generators.AbstractIndexPlanGenerator
org.apache.drill.exec.planner.index.generators.CoveringIndexPlanGenerator
Generate a covering index plan that is equivalent to the original plan.
This plan will be further optimized by the filter pushdown rule of the Index plugin which should
push this filter into the index scan.
-
Field Summary
Modifier and TypeFieldDescriptionprotected final FunctionalIndexInfo
protected final IndexDescriptor
protected final IndexGroupScan
Fields inherited from class org.apache.drill.exec.planner.index.generators.AbstractIndexPlanGenerator
builder, indexCondition, indexContext, origProject, origScan, remainderCondition, settings, upperProject
-
Constructor Summary
ConstructorDescriptionCoveringIndexPlanGenerator
(IndexLogicalPlanCallContext indexContext, FunctionalIndexInfo functionInfo, IndexGroupScan indexGroupScan, org.apache.calcite.rex.RexNode indexCondition, org.apache.calcite.rex.RexNode remainderCondition, org.apache.calcite.rex.RexBuilder builder, PlannerSettings settings) -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.calcite.rel.RelNode
convertChild
(org.apache.calcite.rel.RelNode filter, org.apache.calcite.rel.RelNode input) Methods inherited from class org.apache.drill.exec.planner.index.generators.AbstractIndexPlanGenerator
checkRowKey, convertRowType, createRangeDistRight, forceConvert, getExchange, getRowKeyIndex, getSortNode, go, newTraitSet, toRemoveSort
Methods inherited from class org.apache.drill.exec.planner.physical.SubsetTransformer
go
-
Field Details
-
indexGroupScan
-
indexDesc
-
functionInfo
-
-
Constructor Details
-
CoveringIndexPlanGenerator
public CoveringIndexPlanGenerator(IndexLogicalPlanCallContext indexContext, FunctionalIndexInfo functionInfo, IndexGroupScan indexGroupScan, org.apache.calcite.rex.RexNode indexCondition, org.apache.calcite.rex.RexNode remainderCondition, org.apache.calcite.rex.RexBuilder builder, PlannerSettings settings)
-
-
Method Details
-
convertChild
public org.apache.calcite.rel.RelNode convertChild(org.apache.calcite.rel.RelNode filter, org.apache.calcite.rel.RelNode input) throws org.apache.calcite.rel.InvalidRelException - Specified by:
convertChild
in classAbstractIndexPlanGenerator
- Throws:
org.apache.calcite.rel.InvalidRelException
-