Class DrillScanRelBase

java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.core.TableScan
org.apache.drill.exec.planner.common.DrillScanRelBase
All Implemented Interfaces:
Cloneable, org.apache.calcite.plan.RelOptNode, org.apache.calcite.rel.hint.Hintable, org.apache.calcite.rel.RelNode, DrillRelNode
Direct Known Subclasses:
DrillScanRel, ScanPrel, StoragePluginTableScan

public abstract class DrillScanRelBase extends org.apache.calcite.rel.core.TableScan implements DrillRelNode
Base class for logical/physical scan rel implemented in Drill.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode

    org.apache.calcite.rel.RelNode.Context
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final DrillTable
     
    protected final GroupScan
     

    Fields inherited from class org.apache.calcite.rel.core.TableScan

    hints, table

    Fields inherited from class org.apache.calcite.rel.AbstractRelNode

    digest, id, rowType, traitSet
  • Constructor Summary

    Constructors
    Constructor
    Description
    DrillScanRelBase(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.plan.RelOptTable table, List<SchemaPath> columns)
     
    DrillScanRelBase(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, GroupScan grpScan, org.apache.calcite.plan.RelOptTable table)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.calcite.plan.RelOptCost
    computeSelfCost(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq)
     
    copy(org.apache.calcite.plan.RelTraitSet traitSet, GroupScan scan, org.apache.calcite.rel.type.RelDataType rowType)
     
    double
    estimateRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery mq)
     
     
     

    Methods inherited from class org.apache.calcite.rel.core.TableScan

    accept, deriveRowType, explainTerms, getHints, getTable, identity, identity, project

    Methods inherited from class org.apache.calcite.rel.AbstractRelNode

    accept, childrenAccept, collectVariablesSet, collectVariablesUsed, copy, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getInputs, getRelDigest, getRelTypeName, getRowType, getTraitSet, getVariablesSet, hashCode, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, replaceInput, sole, toString

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.apache.calcite.rel.hint.Hintable

    attachHints, withHints

    Methods inherited from interface org.apache.calcite.rel.RelNode

    accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, copy, deepEquals, deepHashCode, explain, explain, fieldIsNullable, getConvention, getCorrelVariable, getDigest, getExpectedInputRowType, getInput, getInputs, getRelDigest, getRelTypeName, getRowType, getTable, getVariablesSet, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, replaceInput

    Methods inherited from interface org.apache.calcite.plan.RelOptNode

    getCluster, getDescription, getId, getTraitSet
  • Field Details

    • groupScan

      protected final GroupScan groupScan
    • drillTable

      protected final DrillTable drillTable
  • Constructor Details

    • DrillScanRelBase

      public DrillScanRelBase(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.plan.RelOptTable table, List<SchemaPath> columns)
    • DrillScanRelBase

      public DrillScanRelBase(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, GroupScan grpScan, org.apache.calcite.plan.RelOptTable table)
  • Method Details

    • getDrillTable

      public DrillTable getDrillTable()
    • getGroupScan

      public GroupScan getGroupScan()
    • estimateRowCount

      public double estimateRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery mq)
      Specified by:
      estimateRowCount in interface org.apache.calcite.rel.RelNode
      Overrides:
      estimateRowCount in class org.apache.calcite.rel.core.TableScan
    • computeSelfCost

      public org.apache.calcite.plan.RelOptCost computeSelfCost(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq)
      Specified by:
      computeSelfCost in interface org.apache.calcite.rel.RelNode
      Overrides:
      computeSelfCost in class org.apache.calcite.rel.core.TableScan
    • copy

      public abstract DrillScanRelBase copy(org.apache.calcite.plan.RelTraitSet traitSet, GroupScan scan, org.apache.calcite.rel.type.RelDataType rowType)