Class KuduNestedJoin

java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.BiRel
org.apache.calcite.rel.core.Join
com.twilio.kudu.sql.rel.KuduNestedJoin
All Implemented Interfaces:
Cloneable, org.apache.calcite.adapter.enumerable.EnumerableRel, org.apache.calcite.plan.RelOptNode, org.apache.calcite.rel.hint.Hintable, org.apache.calcite.rel.PhysicalNode, org.apache.calcite.rel.RelNode

public class KuduNestedJoin extends org.apache.calcite.rel.core.Join implements org.apache.calcite.adapter.enumerable.EnumerableRel
Implements a join algorithm between two KuduToEnumerableRel objects using EnumerableDefaults.correlateBatchJoin(JoinType, Enumerable, Function1, Function2, Predicate2, int)
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.apache.calcite.adapter.enumerable.EnumerableRel

    org.apache.calcite.adapter.enumerable.EnumerableRel.Prefer, org.apache.calcite.adapter.enumerable.EnumerableRel.Result

    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.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
    Modifier
    Constructor
    Description
    protected
    KuduNestedJoin(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, 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, org.apache.calcite.rel.core.JoinRelType joinType, int batchSize)
     
  • 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, org.apache.calcite.rel.core.JoinRelType joinType, int batchSize, List<org.apache.calcite.rel.hint.RelHint> hints)
     
    org.apache.calcite.rel.RelWriter
    explainTerms(org.apache.calcite.rel.RelWriter pw)
     
    org.apache.calcite.adapter.enumerable.EnumerableRel.Result
    implement(org.apache.calcite.adapter.enumerable.EnumerableRelImplementor implementor, org.apache.calcite.adapter.enumerable.EnumerableRel.Prefer pref)
     

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

    accept, analyzeCondition, copy, createJoinType, deepEquals0, deepHashCode0, deriveJoinRowType, deriveRowType, estimateJoinedRows, estimateRowCount, 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.adapter.enumerable.EnumerableRel

    deriveTraits, getDeriveMode, passThroughTraits

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

    attachHints, withHints

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

    derive, derive, passThrough

    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

    • KuduNestedJoin

      protected KuduNestedJoin(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, 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, org.apache.calcite.rel.core.JoinRelType joinType, int batchSize)
  • Method Details

    • create

      public static KuduNestedJoin create(org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.core.JoinRelType joinType, int batchSize, List<org.apache.calcite.rel.hint.RelHint> hints)
    • copy

      public KuduNestedJoin 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
    • 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
    • explainTerms

      public org.apache.calcite.rel.RelWriter explainTerms(org.apache.calcite.rel.RelWriter pw)
      Overrides:
      explainTerms in class org.apache.calcite.rel.core.Join
    • implement

      public org.apache.calcite.adapter.enumerable.EnumerableRel.Result implement(org.apache.calcite.adapter.enumerable.EnumerableRelImplementor implementor, org.apache.calcite.adapter.enumerable.EnumerableRel.Prefer pref)
      Specified by:
      implement in interface org.apache.calcite.adapter.enumerable.EnumerableRel