Class DrillLateralJoinRelBase

java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.BiRel
org.apache.calcite.rel.core.Correlate
org.apache.drill.exec.planner.common.DrillLateralJoinRelBase
All Implemented Interfaces:
Cloneable, org.apache.calcite.plan.RelOptNode, org.apache.calcite.rel.hint.Hintable, org.apache.calcite.rel.RelNode, DrillRelNode
Direct Known Subclasses:
DrillLateralJoinRel, LateralJoinPrel

public abstract class DrillLateralJoinRelBase extends org.apache.calcite.rel.core.Correlate implements DrillRelNode
  • 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
    final boolean
     
    static final String
     

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

    correlationId, hints, joinType, requiredColumns

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

    left, right

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

    digest, id, rowType, traitSet
  • Constructor Summary

    Constructors
    Constructor
    Description
    DrillLateralJoinRelBase(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, boolean excludeCorrelateCol, org.apache.calcite.rel.core.CorrelationId correlationId, org.apache.calcite.util.ImmutableBitSet requiredColumns, org.apache.calcite.rel.core.JoinRelType semiJoinType)
     
  • 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)
     
    org.apache.calcite.rel.type.RelDataType
    constructRowType(org.apache.calcite.rel.type.RelDataType inputRowType)
     
    protected org.apache.calcite.rel.type.RelDataType
     
    double
    estimateRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery mq)
     
    int
    getInputSize(int ordinal)
    Returns number of fields in RelDataType for input rel node with specified ordinal considering value of excludeCorrelateColumn.
    org.apache.calcite.rel.type.RelDataType
    removeImplicitField(org.apache.calcite.rel.type.RelDataType inputRowType)
     

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

    copy, copy, explainTerms, getCorrelationId, getCorrelVariable, getHints, getJoinType, getRequiredColumns, getVariablesSet, isValid

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

    childrenAccept, getInputs, getLeft, getRight, replaceInput

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

    accept, accept, collectVariablesSet, collectVariablesUsed, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getRelDigest, getRelTypeName, getRowType, getTable, getTraitSet, hashCode, isEnforcer, metadata, onRegister, recomputeDigest, register, 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

    • IMPLICIT_COLUMN

      public static final String IMPLICIT_COLUMN
      See Also:
    • excludeCorrelateColumn

      public final boolean excludeCorrelateColumn
  • Constructor Details

    • DrillLateralJoinRelBase

      public DrillLateralJoinRelBase(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, boolean excludeCorrelateCol, org.apache.calcite.rel.core.CorrelationId correlationId, org.apache.calcite.util.ImmutableBitSet requiredColumns, org.apache.calcite.rel.core.JoinRelType semiJoinType)
  • Method Details

    • 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.Correlate
    • deriveRowType

      protected org.apache.calcite.rel.type.RelDataType deriveRowType()
      Overrides:
      deriveRowType in class org.apache.calcite.rel.core.Correlate
    • getInputSize

      public int getInputSize(int ordinal)
      Returns number of fields in RelDataType for input rel node with specified ordinal considering value of excludeCorrelateColumn.
      Parameters:
      ordinal - ordinal of input rel node
      Returns:
      number of fields in input's RelDataType
    • constructRowType

      public org.apache.calcite.rel.type.RelDataType constructRowType(org.apache.calcite.rel.type.RelDataType inputRowType)
    • removeImplicitField

      public org.apache.calcite.rel.type.RelDataType removeImplicitField(org.apache.calcite.rel.type.RelDataType inputRowType)
    • 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.Correlate