Class

org.apache.spark.sql.execution.joins

SnappySortMergeJoinExec

Related Doc: package joins

Permalink

class SnappySortMergeJoinExec extends SortMergeJoinExec with SnappyJoinLike

Extension to Spark's SortMergeJoinExec to avoid exchange for cases when join keys are a subset of child plan partitioning.

Linear Supertypes
SnappyJoinLike, SortMergeJoinExec, CodegenSupport, BinaryExecNode, SparkPlan, Serializable, Serializable, internal.Logging, QueryPlan[SparkPlan], TreeNode[SparkPlan], Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SnappySortMergeJoinExec
  2. SnappyJoinLike
  3. SortMergeJoinExec
  4. CodegenSupport
  5. BinaryExecNode
  6. SparkPlan
  7. Serializable
  8. Serializable
  9. Logging
  10. QueryPlan
  11. TreeNode
  12. Product
  13. Equals
  14. AnyRef
  15. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SnappySortMergeJoinExec(_leftKeys: Seq[Expression], _rightKeys: Seq[Expression], _joinType: JoinType, _condition: Option[Expression], _left: SparkPlan, _right: SparkPlan, leftSizeInBytes: BigInt, rightSizeInBytes: BigInt)

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. lazy val allAttributes: AttributeSeq

    Permalink
    Definition Classes
    QueryPlan
  5. def apply(number: Int): TreeNode[_]

    Permalink
    Definition Classes
    TreeNode
  6. def argString: String

    Permalink
    Definition Classes
    TreeNode
  7. def asCode: String

    Permalink
    Definition Classes
    TreeNode
  8. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  9. lazy val canonicalized: SparkPlan

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  10. final def children: Seq[SparkPlan]

    Permalink
    Definition Classes
    BinaryExecNode → TreeNode
  11. lazy val cleanArgs: Seq[Any]

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  12. def cleanExpression(e: Expression): Expression

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  13. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  14. def collect[B](pf: PartialFunction[SparkPlan, B]): Seq[B]

    Permalink
    Definition Classes
    TreeNode
  15. def collectFirst[B](pf: PartialFunction[SparkPlan, B]): Option[B]

    Permalink
    Definition Classes
    TreeNode
  16. def collectLeaves(): Seq[SparkPlan]

    Permalink
    Definition Classes
    TreeNode
  17. val condition: Option[Expression]

    Permalink
    Definition Classes
    SortMergeJoinExec
  18. lazy val constraints: ExpressionSet

    Permalink
    Definition Classes
    QueryPlan
  19. final def consume(ctx: CodegenContext, outputVars: Seq[ExprCode], row: String): String

    Permalink
    Definition Classes
    CodegenSupport
  20. lazy val containsChild: Set[TreeNode[_]]

    Permalink
    Definition Classes
    TreeNode
  21. def copy(leftKeys: Seq[Expression], rightKeys: Seq[Expression], joinType: JoinType, condition: Option[Expression], left: SparkPlan, right: SparkPlan, leftSizeInBytes: BigInt, rightSizeInBytes: BigInt): SnappySortMergeJoinExec

    Permalink
  22. def copy(leftKeys: Seq[Expression] = leftKeys, rightKeys: Seq[Expression] = rightKeys, joinType: JoinType = joinType, condition: Option[Expression] = condition, left: SparkPlan = left, right: SparkPlan = right): SnappySortMergeJoinExec

    Permalink
    Definition Classes
    SnappySortMergeJoinExec → SortMergeJoinExec
  23. def doConsume(ctx: CodegenContext, input: Seq[ExprCode], row: ExprCode): String

    Permalink
    Definition Classes
    CodegenSupport
  24. def doExecute(): RDD[InternalRow]

    Permalink
    Attributes
    protected
    Definition Classes
    SortMergeJoinExec → SparkPlan
  25. def doExecuteBroadcast[T](): Broadcast[T]

    Permalink
    Attributes
    protected[org.apache.spark.sql]
    Definition Classes
    SparkPlan
  26. def doPrepare(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  27. def doProduce(ctx: CodegenContext): String

    Permalink
    Definition Classes
    SortMergeJoinExec → CodegenSupport
  28. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  29. def evaluateRequiredVariables(attributes: Seq[Attribute], variables: Seq[ExprCode], required: AttributeSet): String

    Permalink
    Attributes
    protected
    Definition Classes
    CodegenSupport
  30. def evaluateVariables(variables: Seq[ExprCode]): String

    Permalink
    Attributes
    protected
    Definition Classes
    CodegenSupport
  31. final def execute(): RDD[InternalRow]

    Permalink
    Definition Classes
    SparkPlan
  32. final def executeBroadcast[T](): Broadcast[T]

    Permalink
    Definition Classes
    SparkPlan
  33. def executeCollect(): Array[InternalRow]

    Permalink
    Definition Classes
    SparkPlan
  34. def executeCollectPublic(): Array[Row]

    Permalink
    Definition Classes
    SparkPlan
  35. final def executeQuery[T](query: ⇒ T): T

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  36. def executeTake(n: Int): Array[InternalRow]

    Permalink
    Definition Classes
    SparkPlan
  37. def executeToIterator(): Iterator[InternalRow]

    Permalink
    Definition Classes
    SparkPlan
  38. final def expressions: Seq[Expression]

    Permalink
    Definition Classes
    QueryPlan
  39. def fastEquals(other: TreeNode[_]): Boolean

    Permalink
    Definition Classes
    TreeNode
  40. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  41. def find(f: (SparkPlan) ⇒ Boolean): Option[SparkPlan]

    Permalink
    Definition Classes
    TreeNode
  42. def flatMap[A](f: (SparkPlan) ⇒ TraversableOnce[A]): Seq[A]

    Permalink
    Definition Classes
    TreeNode
  43. def foreach(f: (SparkPlan) ⇒ Unit): Unit

    Permalink
    Definition Classes
    TreeNode
  44. def foreachUp(f: (SparkPlan) ⇒ Unit): Unit

    Permalink
    Definition Classes
    TreeNode
  45. def generateTreeString(depth: Int, lastChildren: Seq[Boolean], builder: StringBuilder, verbose: Boolean, prefix: String): StringBuilder

    Permalink
    Definition Classes
    TreeNode
  46. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  47. def getRelevantConstraints(constraints: Set[Expression]): Set[Expression]

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  48. def getSubsetsAndIndices(partitioning: Partitioning, keys: Seq[Expression], child: SparkPlan): Seq[(Seq[Expression], Seq[Int])]

    Permalink

    Optionally return result if partitioning is a subset of given join keys, and if so then return the subset as well as the indices of subset keys in the join keys (in order).

    Optionally return result if partitioning is a subset of given join keys, and if so then return the subset as well as the indices of subset keys in the join keys (in order). Also unwraps aliases in the keys for matching against partitioning and returns a boolean indicating whether alias was unwrapped or not.

    Attributes
    protected
    Definition Classes
    SnappyJoinLike
  49. def hashCode(): Int

    Permalink
    Definition Classes
    TreeNode → AnyRef → Any
  50. def initializeLogIfNecessary(isInterpreter: Boolean): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  51. def innerChildren: Seq[QueryPlan[_]]

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan → TreeNode
  52. def inputRDDs(): Seq[RDD[InternalRow]]

    Permalink
    Definition Classes
    SortMergeJoinExec → CodegenSupport
  53. def inputSet: AttributeSet

    Permalink
    Definition Classes
    QueryPlan
  54. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  55. def isTraceEnabled(): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  56. val joinType: JoinType

    Permalink
    Definition Classes
    SortMergeJoinExec
  57. def jsonFields: List[JField]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  58. val left: SparkPlan

    Permalink
    Definition Classes
    SortMergeJoinExec → BinaryExecNode
  59. val leftKeys: Seq[Expression]

    Permalink
    Definition Classes
    SortMergeJoinExec
  60. val leftSizeInBytes: BigInt

    Permalink
  61. def log: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  62. def logDebug(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  63. def logDebug(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  64. def logError(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  65. def logError(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  66. def logInfo(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  67. def logInfo(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  68. def logName: String

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  69. def logTrace(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  70. def logTrace(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  71. def logWarning(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  72. def logWarning(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  73. def longMetric(name: String): SQLMetric

    Permalink
    Definition Classes
    SparkPlan
  74. def makeCopy(newArgs: Array[AnyRef]): SparkPlan

    Permalink
    Definition Classes
    SparkPlan → TreeNode
  75. def map[A](f: (SparkPlan) ⇒ A): Seq[A]

    Permalink
    Definition Classes
    TreeNode
  76. def mapChildren(f: (SparkPlan) ⇒ SparkPlan): SparkPlan

    Permalink
    Definition Classes
    TreeNode
  77. def mapExpressions(f: (Expression) ⇒ Expression): SnappySortMergeJoinExec.this.type

    Permalink
    Definition Classes
    QueryPlan
  78. def mapProductIterator[B](f: (Any) ⇒ B)(implicit arg0: ClassTag[B]): Array[B]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  79. def metadata: Map[String, String]

    Permalink
    Definition Classes
    SparkPlan
  80. def metricTerm(ctx: CodegenContext, name: String): String

    Permalink
    Definition Classes
    CodegenSupport
  81. lazy val metrics: Map[String, SQLMetric]

    Permalink
    Definition Classes
    SortMergeJoinExec → SparkPlan
  82. def missingInput: AttributeSet

    Permalink
    Definition Classes
    QueryPlan
  83. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  84. def newMutableProjection(expressions: Seq[Expression], inputSchema: Seq[Attribute], useSubexprElimination: Boolean): MutableProjection

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  85. def newNaturalAscendingOrdering(dataTypes: Seq[DataType]): Ordering[InternalRow]

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  86. def newOrdering(order: Seq[SortOrder], inputSchema: Seq[Attribute]): Ordering[InternalRow]

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  87. def newPredicate(expression: Expression, inputSchema: Seq[Attribute]): Predicate

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  88. def nodeName: String

    Permalink
    Definition Classes
    TreeNode
  89. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  90. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  91. def numberedTreeString: String

    Permalink
    Definition Classes
    TreeNode
  92. val origin: Origin

    Permalink
    Definition Classes
    TreeNode
  93. def otherCopyArgs: Seq[AnyRef]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  94. def output: Seq[Attribute]

    Permalink
    Definition Classes
    SortMergeJoinExec → QueryPlan
  95. def outputOrdering: Seq[SortOrder]

    Permalink
    Definition Classes
    SortMergeJoinExec → SparkPlan
  96. def outputPartitioning: Partitioning

    Permalink
    Definition Classes
    SortMergeJoinExec → SparkPlan
  97. def outputSet: AttributeSet

    Permalink
    Definition Classes
    QueryPlan
  98. def p(number: Int): SparkPlan

    Permalink
    Definition Classes
    TreeNode
  99. var parent: CodegenSupport

    Permalink
    Attributes
    protected
    Definition Classes
    CodegenSupport
  100. final def prepare(): Unit

    Permalink
    Definition Classes
    SparkPlan
  101. def prepareSubqueries(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  102. def prettyJson: String

    Permalink
    Definition Classes
    TreeNode
  103. def printSchema(): Unit

    Permalink
    Definition Classes
    QueryPlan
  104. final def produce(ctx: CodegenContext, parent: CodegenSupport): String

    Permalink
    Definition Classes
    CodegenSupport
  105. def producedAttributes: AttributeSet

    Permalink
    Definition Classes
    QueryPlan
  106. def productArity: Int

    Permalink
    Definition Classes
    SnappySortMergeJoinExec → SortMergeJoinExec → Product
  107. def productElement(n: Int): Any

    Permalink
    Definition Classes
    SnappySortMergeJoinExec → SortMergeJoinExec → Product
  108. def references: AttributeSet

    Permalink
    Definition Classes
    QueryPlan
  109. def requiredChildDistribution: Seq[Distribution]

    Permalink
    Definition Classes
    SnappyJoinLike → SparkPlan
  110. def requiredChildOrdering: Seq[Seq[SortOrder]]

    Permalink
    Definition Classes
    SortMergeJoinExec → SparkPlan
  111. def resetMetrics(): Unit

    Permalink
    Definition Classes
    SparkPlan
  112. val right: SparkPlan

    Permalink
    Definition Classes
    SortMergeJoinExec → BinaryExecNode
  113. val rightKeys: Seq[Expression]

    Permalink
    Definition Classes
    SortMergeJoinExec
  114. val rightSizeInBytes: BigInt

    Permalink
  115. def sameResult(plan: SparkPlan): Boolean

    Permalink
    Definition Classes
    QueryPlan
  116. lazy val schema: StructType

    Permalink
    Definition Classes
    QueryPlan
  117. def schemaString: String

    Permalink
    Definition Classes
    QueryPlan
  118. def simpleString: String

    Permalink
    Definition Classes
    QueryPlan → TreeNode
  119. def sparkContext: SparkContext

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  120. final val sqlContext: SQLContext

    Permalink
    Definition Classes
    SparkPlan
  121. def statePrefix: String

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  122. def stringArgs: Iterator[Any]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  123. val subexpressionEliminationEnabled: Boolean

    Permalink
    Definition Classes
    SparkPlan
  124. def subqueries: Seq[SparkPlan]

    Permalink
    Definition Classes
    QueryPlan
  125. def supportCodegen: Boolean

    Permalink
    Definition Classes
    SortMergeJoinExec → CodegenSupport
  126. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  127. def toJSON: String

    Permalink
    Definition Classes
    TreeNode
  128. def toString(): String

    Permalink
    Definition Classes
    TreeNode → AnyRef → Any
  129. def transform(rule: PartialFunction[SparkPlan, SparkPlan]): SparkPlan

    Permalink
    Definition Classes
    TreeNode
  130. def transformAllExpressions(rule: PartialFunction[Expression, Expression]): SnappySortMergeJoinExec.this.type

    Permalink
    Definition Classes
    QueryPlan
  131. def transformDown(rule: PartialFunction[SparkPlan, SparkPlan]): SparkPlan

    Permalink
    Definition Classes
    TreeNode
  132. def transformExpressions(rule: PartialFunction[Expression, Expression]): SnappySortMergeJoinExec.this.type

    Permalink
    Definition Classes
    QueryPlan
  133. def transformExpressionsDown(rule: PartialFunction[Expression, Expression]): SnappySortMergeJoinExec.this.type

    Permalink
    Definition Classes
    QueryPlan
  134. def transformExpressionsUp(rule: PartialFunction[Expression, Expression]): SnappySortMergeJoinExec.this.type

    Permalink
    Definition Classes
    QueryPlan
  135. def transformUp(rule: PartialFunction[SparkPlan, SparkPlan]): SparkPlan

    Permalink
    Definition Classes
    TreeNode
  136. def treeString(verbose: Boolean): String

    Permalink
    Definition Classes
    TreeNode
  137. def treeString: String

    Permalink
    Definition Classes
    TreeNode
  138. def usedInputs: AttributeSet

    Permalink
    Definition Classes
    CodegenSupport
  139. def validConstraints: Set[Expression]

    Permalink
    Attributes
    protected
    Definition Classes
    QueryPlan
  140. def verboseString: String

    Permalink
    Definition Classes
    QueryPlan → TreeNode
  141. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  142. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  143. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  144. def waitForSubqueries(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    SparkPlan
  145. def withNewChildren(newChildren: Seq[SparkPlan]): SparkPlan

    Permalink
    Definition Classes
    TreeNode

Inherited from SnappyJoinLike

Inherited from SortMergeJoinExec

Inherited from CodegenSupport

Inherited from BinaryExecNode

Inherited from SparkPlan

Inherited from Serializable

Inherited from Serializable

Inherited from internal.Logging

Inherited from QueryPlan[SparkPlan]

Inherited from TreeNode[SparkPlan]

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped