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
-
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.DrillLateralJoinRelBase
excludeCorrelateColumn, IMPLICIT_COLUMN
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
Fields inherited from interface org.apache.drill.exec.planner.physical.Prel
DRILL_PHYSICAL
-
Constructor Summary
ModifierConstructorDescriptionprotected
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
Modifier and TypeMethodDescription<T,
X, E extends Throwable>
Taccept
(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 Noneorg.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.getPhysicalOperator
(PhysicalPlanCreator creator) Supported 'encodings' of a Prel indicates what are the acceptable modes of SelectionVector of its child Preliterator()
boolean
Methods inherited from class org.apache.drill.exec.planner.common.DrillLateralJoinRelBase
computeSelfCost, constructRowType, deriveRowType, estimateRowCount, getInputSize, removeImplicitField
Methods inherited from class org.apache.calcite.rel.core.Correlate
copy, 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 java.lang.Iterable
forEach, spliterator
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, 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
getCluster, getDescription, getId, getTraitSet
-
Constructor Details
-
LateralJoinPrel
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
-
copy
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 classorg.apache.calcite.rel.core.Correlate
-
getPhysicalOperator
- Specified by:
getPhysicalOperator
in interfacePrel
- Throws:
IOException
-
getLateralInput
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
public org.apache.calcite.rel.RelWriter explainTerms(org.apache.calcite.rel.RelWriter pw) - Overrides:
explainTerms
in classorg.apache.calcite.rel.core.Correlate
-
accept
-
iterator
-
needsFinalColumnReordering
public boolean needsFinalColumnReordering()- Specified by:
needsFinalColumnReordering
in interfacePrel
-
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 interfacePrel
-
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 interfacePrel
-