Class LateralJoinPrel

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
org.apache.drill.exec.planner.physical.LateralJoinPrel
All Implemented Interfaces:
Cloneable, Iterable<Prel>, org.apache.calcite.plan.RelOptNode, org.apache.calcite.rel.hint.Hintable, org.apache.calcite.rel.RelNode, DrillRelNode, Prel

public class LateralJoinPrel extends DrillLateralJoinRelBase implements Prel
  • Nested Class Summary Link icon

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

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

    Fields inherited from class org.apache.drill.exec.planner.common.DrillLateralJoinRelBase Link icon

    excludeCorrelateColumn, IMPLICIT_COLUMN

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

    correlationId, hints, joinType, requiredColumns

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

    left, right

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

    digest, id, rowType, traitSet

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

    DRILL_PHYSICAL
  • Constructor Summary Link icon

    Constructors
    Modifier
    Constructor
    Description
    protected
    LateralJoinPrel(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 Link icon

    Modifier and Type
    Method
    Description
    <T, X, E extends Throwable>
    T
    accept(PrelVisitor<T,X,E> visitor, X value)
     
    org.apache.calcite.rel.core.Correlate
    copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rel.core.CorrelationId correlationId, org.apache.calcite.util.ImmutableBitSet requiredColumns, org.apache.calcite.rel.core.JoinRelType joinType)
     
    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
    org.apache.calcite.rel.RelNode
    getLateralInput(int ordinal, org.apache.calcite.rel.RelNode input)
    Check to make sure that the fields of the inputs are the same as the output field names.
     
    Supported 'encodings' of a Prel indicates what are the acceptable modes of SelectionVector of its child Prel
     
    boolean
     

    Methods inherited from class org.apache.drill.exec.planner.common.DrillLateralJoinRelBase Link icon

    computeSelfCost, constructRowType, deriveRowType, estimateRowCount, getInputSize, removeImplicitField

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

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

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

    childrenAccept, getInputs, getLeft, getRight, replaceInput

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

    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 Link icon

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

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

    attachHints, withHints

    Methods inherited from interface java.lang.Iterable Link icon

    forEach, spliterator

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

    prepareForLateralUnnestPipeline

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

    accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, computeSelfCost, copy, 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 Link icon

    getCluster, getDescription, getId, getTraitSet
  • Constructor Details Link icon

    • LateralJoinPrel Link icon

      protected LateralJoinPrel(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 Link icon

    • copy Link icon

      public org.apache.calcite.rel.core.Correlate copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rel.core.CorrelationId correlationId, org.apache.calcite.util.ImmutableBitSet requiredColumns, org.apache.calcite.rel.core.JoinRelType joinType)
      Specified by:
      copy in class org.apache.calcite.rel.core.Correlate
    • getPhysicalOperator Link icon

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

      public org.apache.calcite.rel.RelNode getLateralInput(int ordinal, org.apache.calcite.rel.RelNode input)
      Check to make sure that the fields of the inputs are the same as the output field names. If not, insert a project renaming them.
    • explainTerms Link icon

      public org.apache.calcite.rel.RelWriter explainTerms(org.apache.calcite.rel.RelWriter pw)
      Overrides:
      explainTerms in class org.apache.calcite.rel.core.Correlate
    • accept Link icon

      public <T, X, E extends Throwable> T accept(PrelVisitor<T,X,E> visitor, X value) throws E
      Specified by:
      accept in interface Prel
      Throws:
      E
    • iterator Link icon

      public Iterator<Prel> iterator()
      Specified by:
      iterator in interface Iterable<Prel>
    • needsFinalColumnReordering Link icon

      public boolean needsFinalColumnReordering()
      Specified by:
      needsFinalColumnReordering in interface Prel
    • getSupportedEncodings Link icon

      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 Link icon

      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