Github user srowen commented on a diff in the pull request:
https://github.com/apache/spark/pull/21109#discussion_r193736960
--- Diff:
sql/core/src/test/scala/org/apache/spark/sql/execution/joins/InnerJoinSuite.scala
---
@@ -117,101 +131,170 @@ class InnerJoinSuite extends SparkPlanTest with
SharedSQLContext {
}
def makeSortMergeJoin(
- leftKeys: Seq[Expression],
- rightKeys: Seq[Expression],
- boundCondition: Option[Expression],
- leftPlan: SparkPlan,
- rightPlan: SparkPlan) = {
- val sortMergeJoin = joins.SortMergeJoinExec(leftKeys, rightKeys,
Inner, boundCondition,
- leftPlan, rightPlan)
+ leftKeys: Seq[Expression],
+ rightKeys: Seq[Expression],
+ boundCondition: Option[Expression],
+ rangeConditions: Seq[BinaryComparison],
+ leftPlan: SparkPlan,
+ rightPlan: SparkPlan) = {
+ val sortMergeJoin = joins.SortMergeJoinExec(leftKeys, rightKeys,
Inner, rangeConditions,
+ boundCondition, leftPlan, rightPlan)
EnsureRequirements(spark.sessionState.conf).apply(sortMergeJoin)
}
- test(s"$testName using BroadcastHashJoin (build=left)") {
- extractJoinParts().foreach { case (_, leftKeys, rightKeys,
boundCondition, _, _) =>
- withSQLConf(SQLConf.SHUFFLE_PARTITIONS.key -> "1") {
- checkAnswer2(leftRows, rightRows, (leftPlan: SparkPlan,
rightPlan: SparkPlan) =>
- makeBroadcastHashJoin(
- leftKeys, rightKeys, boundCondition, leftPlan, rightPlan,
joins.BuildLeft),
- expectedAnswer.map(Row.fromTuple),
- sortAnswers = true)
+ val configOptions = List(
+ ("spark.sql.codegen.wholeStage", "true"),
+ ("spark.sql.codegen.wholeStage", "false"))
+
+ // Disabling these because the code would never follow this path in
case of a inner range join
+ if (!expectRangeJoin) {
+ var counter = 1
--- End diff --
If you want to avoid a `var`, just `configOptions.zipWithIndex.foreach {
case ((config, confValue), counter) =>`. Just a tiny bit more idiomatic.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]