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
FieldsModifier and TypeFieldDescriptionprotected final FunctionalIndexInfoprotected final IndexDescriptorprotected final IndexGroupScanFields inherited from class org.apache.drill.exec.planner.index.generators.AbstractIndexPlanGenerator
builder, indexCondition, indexContext, origProject, origScan, remainderCondition, settings, upperProject -
Constructor Summary
ConstructorsConstructorDescriptionCoveringIndexPlanGenerator(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.RelNodeconvertChild(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, toRemoveSortMethods 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:
convertChildin classAbstractIndexPlanGenerator- Throws:
org.apache.calcite.rel.InvalidRelException
-