This is an automated email from the ASF dual-hosted git repository. dongjoon pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/spark.git
The following commit(s) were added to refs/heads/master by this push: new da49f50 [SPARK-25121][SQL][FOLLOWUP] Add more unit tests for multi-part identifiers in join strategy hints da49f50 is described below commit da49f50621b201822a64358624c19be3fae0a855 Author: Takeshi Yamamuro <yamam...@apache.org> AuthorDate: Wed Mar 25 08:37:28 2020 -0700 [SPARK-25121][SQL][FOLLOWUP] Add more unit tests for multi-part identifiers in join strategy hints ### What changes were proposed in this pull request? This pr intends to add unit tests for the other join hints (`MERGEJOIN`, `SHUFFLE_HASH`, and `SHUFFLE_REPLICATE_NL`). This is a followup PR of #27935. ### Why are the changes needed? For better test coverage. ### Does this PR introduce any user-facing change? No. ### How was this patch tested? Added unit tests. Closes #28013 from maropu/SPARK-25121-FOLLOWUP. Authored-by: Takeshi Yamamuro <yamam...@apache.org> Signed-off-by: Dongjoon Hyun <dongj...@apache.org> --- .../sql/catalyst/analysis/ResolveHintsSuite.scala | 93 ++++++++++++---------- 1 file changed, 49 insertions(+), 44 deletions(-) diff --git a/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/analysis/ResolveHintsSuite.scala b/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/analysis/ResolveHintsSuite.scala index ca7d284..d3bd5d0 100644 --- a/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/analysis/ResolveHintsSuite.scala +++ b/sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/analysis/ResolveHintsSuite.scala @@ -242,51 +242,56 @@ class ResolveHintsSuite extends AnalysisTest { caseSensitive = false) } - test("Supports multi-part table names for broadcast hint resolution") { - // local temp table (single-part identifier case) - checkAnalysis( - UnresolvedHint("MAPJOIN", Seq("table", "table2"), - table("TaBlE").join(table("TaBlE2"))), - Join( - ResolvedHint(testRelation, HintInfo(strategy = Some(BROADCAST))), - ResolvedHint(testRelation2, HintInfo(strategy = Some(BROADCAST))), - Inner, - None, - JoinHint.NONE), - caseSensitive = false) - - checkAnalysis( - UnresolvedHint("MAPJOIN", Seq("TaBlE", "table2"), - table("TaBlE").join(table("TaBlE2"))), - Join( - ResolvedHint(testRelation, HintInfo(strategy = Some(BROADCAST))), - testRelation2, - Inner, - None, - JoinHint.NONE), - caseSensitive = true) + test("Supports multi-part table names for join strategy hint resolution") { + Seq(("MAPJOIN", BROADCAST), + ("MERGEJOIN", SHUFFLE_MERGE), + ("SHUFFLE_HASH", SHUFFLE_HASH), + ("SHUFFLE_REPLICATE_NL", SHUFFLE_REPLICATE_NL)).foreach { case (hintName, st) => + // local temp table (single-part identifier case) + checkAnalysis( + UnresolvedHint(hintName, Seq("table", "table2"), + table("TaBlE").join(table("TaBlE2"))), + Join( + ResolvedHint(testRelation, HintInfo(strategy = Some(st))), + ResolvedHint(testRelation2, HintInfo(strategy = Some(st))), + Inner, + None, + JoinHint.NONE), + caseSensitive = false) - // global temp table (multi-part identifier case) - checkAnalysis( - UnresolvedHint("MAPJOIN", Seq("GlOBal_TeMP.table4", "table5"), - table("global_temp", "table4").join(table("global_temp", "table5"))), - Join( - ResolvedHint(testRelation4, HintInfo(strategy = Some(BROADCAST))), - ResolvedHint(testRelation5, HintInfo(strategy = Some(BROADCAST))), - Inner, - None, - JoinHint.NONE), - caseSensitive = false) + checkAnalysis( + UnresolvedHint(hintName, Seq("TaBlE", "table2"), + table("TaBlE").join(table("TaBlE2"))), + Join( + ResolvedHint(testRelation, HintInfo(strategy = Some(st))), + testRelation2, + Inner, + None, + JoinHint.NONE), + caseSensitive = true) + + // global temp table (multi-part identifier case) + checkAnalysis( + UnresolvedHint(hintName, Seq("GlOBal_TeMP.table4", "table5"), + table("global_temp", "table4").join(table("global_temp", "table5"))), + Join( + ResolvedHint(testRelation4, HintInfo(strategy = Some(st))), + ResolvedHint(testRelation5, HintInfo(strategy = Some(st))), + Inner, + None, + JoinHint.NONE), + caseSensitive = false) - checkAnalysis( - UnresolvedHint("MAPJOIN", Seq("global_temp.TaBlE4", "table5"), - table("global_temp", "TaBlE4").join(table("global_temp", "TaBlE5"))), - Join( - ResolvedHint(testRelation4, HintInfo(strategy = Some(BROADCAST))), - testRelation5, - Inner, - None, - JoinHint.NONE), - caseSensitive = true) + checkAnalysis( + UnresolvedHint(hintName, Seq("global_temp.TaBlE4", "table5"), + table("global_temp", "TaBlE4").join(table("global_temp", "TaBlE5"))), + Join( + ResolvedHint(testRelation4, HintInfo(strategy = Some(st))), + testRelation5, + Inner, + None, + JoinHint.NONE), + caseSensitive = true) + } } } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@spark.apache.org For additional commands, e-mail: commits-h...@spark.apache.org