Repository: spark
Updated Branches:
  refs/heads/master aec966b05 -> eb6e98803


[SPARK-24759][SQL] No reordering keys for broadcast hash join

## What changes were proposed in this pull request?

As the implementation of the broadcast hash join is independent of the input 
hash partitioning, reordering keys is not necessary. Thus, we solve this issue 
by simply removing the broadcast hash join from the reordering rule in 
EnsureRequirements.

## How was this patch tested?
N/A

Author: Xiao Li <[email protected]>

Closes #21728 from gatorsmile/cleanER.


Project: http://git-wip-us.apache.org/repos/asf/spark/repo
Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/eb6e9880
Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/eb6e9880
Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/eb6e9880

Branch: refs/heads/master
Commit: eb6e9880397dbac8b0b9ebc0796150b6924fc566
Parents: aec966b
Author: Xiao Li <[email protected]>
Authored: Mon Jul 9 14:53:14 2018 -0700
Committer: Xiao Li <[email protected]>
Committed: Mon Jul 9 14:53:14 2018 -0700

----------------------------------------------------------------------
 .../spark/sql/execution/exchange/EnsureRequirements.scala     | 7 -------
 1 file changed, 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/spark/blob/eb6e9880/sql/core/src/main/scala/org/apache/spark/sql/execution/exchange/EnsureRequirements.scala
----------------------------------------------------------------------
diff --git 
a/sql/core/src/main/scala/org/apache/spark/sql/execution/exchange/EnsureRequirements.scala
 
b/sql/core/src/main/scala/org/apache/spark/sql/execution/exchange/EnsureRequirements.scala
index ad95879..d96ecba 100644
--- 
a/sql/core/src/main/scala/org/apache/spark/sql/execution/exchange/EnsureRequirements.scala
+++ 
b/sql/core/src/main/scala/org/apache/spark/sql/execution/exchange/EnsureRequirements.scala
@@ -279,13 +279,6 @@ case class EnsureRequirements(conf: SQLConf) extends 
Rule[SparkPlan] {
    */
   private def reorderJoinPredicates(plan: SparkPlan): SparkPlan = {
     plan match {
-      case BroadcastHashJoinExec(leftKeys, rightKeys, joinType, buildSide, 
condition, left,
-        right) =>
-        val (reorderedLeftKeys, reorderedRightKeys) =
-          reorderJoinKeys(leftKeys, rightKeys, left.outputPartitioning, 
right.outputPartitioning)
-        BroadcastHashJoinExec(reorderedLeftKeys, reorderedRightKeys, joinType, 
buildSide, condition,
-          left, right)
-
       case ShuffledHashJoinExec(leftKeys, rightKeys, joinType, buildSide, 
condition, left, right) =>
         val (reorderedLeftKeys, reorderedRightKeys) =
           reorderJoinKeys(leftKeys, rightKeys, left.outputPartitioning, 
right.outputPartitioning)


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to