Class DrillSemiJoinRel

java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.BiRel
org.apache.calcite.rel.core.Join
org.apache.drill.exec.planner.common.DrillJoinRelBase
org.apache.drill.exec.planner.logical.DrillSemiJoinRel
All Implemented Interfaces:
Cloneable, org.apache.calcite.plan.RelOptNode, org.apache.calcite.rel.hint.Hintable, org.apache.calcite.rel.RelNode, DrillRelNode, DrillJoin, DrillRel

public class DrillSemiJoinRel extends DrillJoinRelBase implements DrillJoin, DrillRel
  • 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.DrillJoinRelBase

    filterNulls, leftKeys, rightKeys

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

    condition, hints, joinInfo, joinType, variablesSet

    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.logical.DrillRel

    DRILL_LOGICAL
  • Constructor Summary

    Constructors
    Constructor
    Description
    DrillSemiJoinRel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, List<Integer> leftKeys, List<Integer> rightKeys)
     
  • 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)
     
    copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rel.core.JoinRelType joinType, boolean semiJoinDone)
     
    create(org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, List<Integer> leftKeys, List<Integer> rightKeys)
     
    double
    estimateRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery mq)
     
     

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

    accept, analyzeCondition, copy, createJoinType, deepEquals0, deepHashCode0, deriveJoinRowType, deriveRowType, estimateJoinedRows, explainTerms, getCondition, getHints, getJoinType, getSystemFieldList, getVariablesSet, isSemiJoin, isSemiJoinDone, 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, collectVariablesSet, collectVariablesUsed, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getCorrelVariable, 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.drill.exec.planner.logical.DrillJoin

    getCondition, getJoinType, getLeft, getLeftKeys, getRight, getRightKeys, isSemiJoin

    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
  • Constructor Details

    • DrillSemiJoinRel

      public DrillSemiJoinRel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, List<Integer> leftKeys, List<Integer> rightKeys)
  • Method Details

    • create

      public static DrillSemiJoinRel create(org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, List<Integer> leftKeys, List<Integer> rightKeys)
    • copy

      public DrillSemiJoinRel copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rel.core.JoinRelType joinType, boolean semiJoinDone)
      Specified by:
      copy in class org.apache.calcite.rel.core.Join
    • implement

      public LogicalOperator implement(DrillImplementor implementor)
      Specified by:
      implement in interface DrillRel
    • 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 DrillJoinRelBase
    • 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 DrillJoinRelBase