Class ScanPrel

java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.core.TableScan
org.apache.drill.exec.planner.common.DrillScanRelBase
org.apache.drill.exec.planner.physical.ScanPrel
All Implemented Interfaces:
Cloneable, Iterable<Prel>, org.apache.calcite.plan.RelOptNode, org.apache.calcite.rel.hint.Hintable, org.apache.calcite.rel.RelNode, DrillRelNode, HasDistributionAffinity, LeafPrel, Prel

public class ScanPrel extends DrillScanRelBase implements LeafPrel, HasDistributionAffinity
  • Nested Class Summary

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

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

    Fields inherited from class org.apache.drill.exec.planner.common.DrillScanRelBase

    drillTable, groupScan

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

    hints, table

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

    digest, id, traitSet

    Fields inherited from interface org.apache.drill.exec.planner.physical.Prel

    DRILL_PHYSICAL
  • Constructor Summary

    Constructors
    Constructor
    Description
    ScanPrel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, GroupScan groupScan, org.apache.calcite.rel.type.RelDataType rowType, org.apache.calcite.plan.RelOptTable table)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    <T, X, E extends Throwable>
    T
    accept(PrelVisitor<T,X,E> logicalVisitor, X value)
     
    protected Object
     
    org.apache.calcite.plan.RelOptCost
    computeSelfCost(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq)
     
    org.apache.calcite.rel.RelNode
    copy(org.apache.calcite.plan.RelTraitSet traitSet, List<org.apache.calcite.rel.RelNode> inputs)
     
    copy(org.apache.calcite.plan.RelTraitSet traitSet, GroupScan scan, org.apache.calcite.rel.type.RelDataType rowType)
     
    org.apache.calcite.rel.type.RelDataType
     
    double
    estimateRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery mq)
     
    org.apache.calcite.rel.RelWriter
    explainTerms(org.apache.calcite.rel.RelWriter pw)
     
     
    A Prel's own SelectionVector mode - i.e whether it generates an SV2, SV4 or None
     
    Supported 'encodings' of a Prel indicates what are the acceptable modes of SelectionVector of its child Prel

    Methods inherited from class org.apache.drill.exec.planner.common.DrillScanRelBase

    getDrillTable, getGroupScan

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

    accept, getHints, getTable, identity, identity, project

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

    accept, childrenAccept, collectVariablesSet, collectVariablesUsed, 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

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

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

    attachHints, withHints

    Methods inherited from interface java.lang.Iterable

    forEach, spliterator

    Methods inherited from interface org.apache.drill.exec.planner.physical.LeafPrel

    iterator, needsFinalColumnReordering

    Methods inherited from interface org.apache.drill.exec.planner.physical.Prel

    prepareForLateralUnnestPipeline

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

    accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, 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
  • Constructor Details

    • ScanPrel

      public ScanPrel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, GroupScan groupScan, org.apache.calcite.rel.type.RelDataType rowType, org.apache.calcite.plan.RelOptTable table)
  • Method Details

    • copy

      public org.apache.calcite.rel.RelNode copy(org.apache.calcite.plan.RelTraitSet traitSet, List<org.apache.calcite.rel.RelNode> inputs)
      Specified by:
      copy in interface org.apache.calcite.rel.RelNode
      Overrides:
      copy in class org.apache.calcite.rel.AbstractRelNode
    • copy

      public ScanPrel copy(org.apache.calcite.plan.RelTraitSet traitSet, GroupScan scan, org.apache.calcite.rel.type.RelDataType rowType)
      Specified by:
      copy in class DrillScanRelBase
    • clone

      protected Object clone() throws CloneNotSupportedException
      Overrides:
      clone in class Object
      Throws:
      CloneNotSupportedException
    • getPhysicalOperator

      public PhysicalOperator getPhysicalOperator(PhysicalPlanCreator creator) throws IOException
      Specified by:
      getPhysicalOperator in interface Prel
      Throws:
      IOException
    • explainTerms

      public org.apache.calcite.rel.RelWriter explainTerms(org.apache.calcite.rel.RelWriter pw)
      Overrides:
      explainTerms in class org.apache.calcite.rel.core.TableScan
    • deriveRowType

      public org.apache.calcite.rel.type.RelDataType deriveRowType()
      Overrides:
      deriveRowType in class org.apache.calcite.rel.core.TableScan
    • 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 DrillScanRelBase
    • 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 DrillScanRelBase
    • accept

      public <T, X, E extends Throwable> T accept(PrelVisitor<T,X,E> logicalVisitor, X value) throws E
      Specified by:
      accept in interface LeafPrel
      Specified by:
      accept in interface Prel
      Throws:
      E extends Throwable
    • getSupportedEncodings

      public BatchSchema.SelectionVectorMode[] getSupportedEncodings()
      Description copied from interface: Prel
      Supported 'encodings' of a Prel indicates what are the acceptable modes of SelectionVector of its child Prel
      Specified by:
      getSupportedEncodings in interface Prel
    • getEncoding

      public BatchSchema.SelectionVectorMode getEncoding()
      Description copied from interface: Prel
      A Prel's own SelectionVector mode - i.e whether it generates an SV2, SV4 or None
      Specified by:
      getEncoding in interface Prel
    • getDistributionAffinity

      public DistributionAffinity getDistributionAffinity()
      Specified by:
      getDistributionAffinity in interface HasDistributionAffinity