Class DruidJoin

java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.BiRel
org.apache.calcite.rel.core.Join
org.apache.druid.sql.calcite.rel.logical.DruidJoin
All Implemented Interfaces:
Cloneable, org.apache.calcite.plan.RelOptNode, org.apache.calcite.rel.hint.Hintable, org.apache.calcite.rel.RelNode, SourceDescProducer, DruidLogicalNode

public class DruidJoin extends org.apache.calcite.rel.core.Join implements DruidLogicalNode, SourceDescProducer
  • Nested Class Summary

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

    org.apache.calcite.rel.RelNode.Context

    Nested classes/interfaces inherited from interface org.apache.druid.sql.calcite.planner.querygen.SourceDescProducer

    SourceDescProducer.SourceDesc
  • Field Summary

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

    Constructors
    Constructor
    Description
    DruidJoin(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traitSet, List<org.apache.calcite.rel.hint.RelHint> hints, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, Set<org.apache.calcite.rel.core.CorrelationId> variablesSet, org.apache.calcite.rel.core.JoinRelType joinType)
     
  • 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.core.Join
    copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rex.RexNode conditionExpr, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rel.core.JoinRelType joinType, boolean semiJoinDone)
     
     
     

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

    accept, analyzeCondition, copy, createJoinType, deepEquals0, deepHashCode0, deriveJoinRowType, deriveRowType, estimateJoinedRows, estimateRowCount, 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.calcite.rel.hint.Hintable

    attachHints, withHints

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

    accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, 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, stripped

    Methods inherited from interface org.apache.calcite.plan.RelOptNode

    getCluster, getDescription, getId, getTraitSet
  • Constructor Details

    • DruidJoin

      public DruidJoin(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traitSet, List<org.apache.calcite.rel.hint.RelHint> hints, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, Set<org.apache.calcite.rel.core.CorrelationId> variablesSet, org.apache.calcite.rel.core.JoinRelType joinType)
  • Method Details

    • copy

      public org.apache.calcite.rel.core.Join copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rex.RexNode conditionExpr, 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
    • 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.Join
    • getSourceDesc

      public SourceDescProducer.SourceDesc getSourceDesc(PlannerContext plannerContext, List<SourceDescProducer.SourceDesc> sources)
      Specified by:
      getSourceDesc in interface SourceDescProducer
    • getJoinAlgorithm

      public JoinAlgorithm getJoinAlgorithm(PlannerContext plannerContext)