java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.SingleRel
org.apache.drill.exec.store.enumerable.plan.VertexDrel
All Implemented Interfaces:
Cloneable, org.apache.calcite.plan.RelOptNode, org.apache.calcite.rel.RelNode, DrillRelNode, DrillRel

public class VertexDrel extends org.apache.calcite.rel.SingleRel implements DrillRel
The vertex simply holds the child nodes but contains its own traits. Used for completing Drill logical planning when child nodes have some specific traits.
  • 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.calcite.rel.SingleRel

    input

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

    digest, id, rowType, traitSet

    Fields inherited from interface org.apache.drill.exec.planner.logical.DrillRel

    DRILL_LOGICAL
  • Constructor Summary

    Constructors
    Constructor
    Description
    VertexDrel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.rel.RelNode input)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected Object
     
    @Nullable 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)
     
     

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

    childrenAccept, deriveRowType, estimateRowCount, explainTerms, getInput, getInputs, replaceInput

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

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

    Methods inherited from class java.lang.Object

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

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

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

    • VertexDrel

      public VertexDrel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.rel.RelNode input)
  • 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
    • clone

      protected Object clone()
      Overrides:
      clone in class Object
    • implement

      public LogicalOperator implement(DrillImplementor implementor)
      Specified by:
      implement in interface DrillRel
    • computeSelfCost

      public @Nullable 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.AbstractRelNode