java.lang.Object
org.apache.calcite.plan.RelOptRule
org.apache.drill.exec.store.StoragePluginOptimizerRule
org.apache.drill.exec.planner.logical.partition.PruneScanRule

public abstract class PruneScanRule extends StoragePluginOptimizerRule
  • Constructor Details

    • PruneScanRule

      public PruneScanRule(org.apache.calcite.plan.RelOptRuleOperand operand, String id, OptimizerRulesContext optimizerContext)
  • Method Details

    • getDirFilterOnProject

      public static org.apache.calcite.plan.RelOptRule getDirFilterOnProject(OptimizerRulesContext optimizerRulesContext)
    • getDirFilterOnScan

      public static org.apache.calcite.plan.RelOptRule getDirFilterOnScan(OptimizerRulesContext optimizerRulesContext)
    • getConvertAggScanToValuesRule

      public static org.apache.calcite.plan.RelOptRule getConvertAggScanToValuesRule(OptimizerRulesContext optimizerRulesContext)
    • doOnMatch

      protected void doOnMatch(org.apache.calcite.plan.RelOptRuleCall call, org.apache.calcite.rel.core.Filter filterRel, org.apache.calcite.rel.core.Project projectRel, org.apache.calcite.rel.core.TableScan scanRel)
    • materializePruneExpr

      protected LogicalExpression materializePruneExpr(org.apache.calcite.rex.RexNode pruneCondition, PlannerSettings settings, org.apache.calcite.rel.RelNode scanRel, VectorContainer container)
    • getOptimizerRulesContext

      protected OptimizerRulesContext getOptimizerRulesContext()
    • getPartitionDescriptor

      public abstract PartitionDescriptor getPartitionDescriptor(PlannerSettings settings, org.apache.calcite.rel.core.TableScan scanRel)