diff options
author | Davies Liu <davies@databricks.com> | 2016-03-15 22:17:04 -0700 |
---|---|---|
committer | Davies Liu <davies.liu@gmail.com> | 2016-03-15 22:17:04 -0700 |
commit | 421f6c20e85b32f6462d37dad6a62dec2d46ed88 (patch) | |
tree | de14ba806b61c1cb0582bb1058ca1d301f25f9b2 /sql/hive | |
parent | 52b6a899be2711568d86ab99d1a2b4d1f9fef286 (diff) | |
download | spark-421f6c20e85b32f6462d37dad6a62dec2d46ed88.tar.gz spark-421f6c20e85b32f6462d37dad6a62dec2d46ed88.tar.bz2 spark-421f6c20e85b32f6462d37dad6a62dec2d46ed88.zip |
[SPARK-13917] [SQL] generate broadcast semi join
## What changes were proposed in this pull request?
This PR brings codegen support for broadcast left-semi join.
## How was this patch tested?
Existing tests. Added benchmark, the result show 7X speedup.
Author: Davies Liu <davies@databricks.com>
Closes #11742 from davies/gen_semi.
Diffstat (limited to 'sql/hive')
-rw-r--r-- | sql/hive/src/test/scala/org/apache/spark/sql/hive/StatisticsSuite.scala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sql/hive/src/test/scala/org/apache/spark/sql/hive/StatisticsSuite.scala b/sql/hive/src/test/scala/org/apache/spark/sql/hive/StatisticsSuite.scala index 1d8c293d43..1468be4670 100644 --- a/sql/hive/src/test/scala/org/apache/spark/sql/hive/StatisticsSuite.scala +++ b/sql/hive/src/test/scala/org/apache/spark/sql/hive/StatisticsSuite.scala @@ -212,7 +212,7 @@ class StatisticsSuite extends QueryTest with TestHiveSingleton { // Using `sparkPlan` because for relevant patterns in HashJoin to be // matched, other strategies need to be applied. var bhj = df.queryExecution.sparkPlan.collect { - case j: BroadcastLeftSemiJoinHash => j + case j: BroadcastHashJoin => j } assert(bhj.size === 1, s"actual query plans do not contain broadcast join: ${df.queryExecution}") @@ -225,7 +225,7 @@ class StatisticsSuite extends QueryTest with TestHiveSingleton { sql(s"SET ${SQLConf.AUTO_BROADCASTJOIN_THRESHOLD.key}=-1") df = sql(leftSemiJoinQuery) bhj = df.queryExecution.sparkPlan.collect { - case j: BroadcastLeftSemiJoinHash => j + case j: BroadcastHashJoin => j } assert(bhj.isEmpty, "BroadcastHashJoin still planned even though it is switched off") |