Skip to content

[SPARK-14853] [SQL] Support LeftSemi/LeftAnti in SortMergeJoinExec#12668

Closed
davies wants to merge 7 commits intoapache:masterfrom
davies:smj_semi
Closed

[SPARK-14853] [SQL] Support LeftSemi/LeftAnti in SortMergeJoinExec#12668
davies wants to merge 7 commits intoapache:masterfrom
davies:smj_semi

Conversation

@davies
Copy link
Contributor

@davies davies commented Apr 25, 2016

What changes were proposed in this pull request?

This PR update SortMergeJoinExec to support LeftSemi/LeftAnti, so it could support all the join types, same as other three join implementations: BroadcastHashJoinExec, ShuffledHashJoinExec,and BroadcastNestedLoopJoinExec.

This PR also simplify the join selection in SparkStrategy.

How was this patch tested?

Added new tests.

@SparkQA
Copy link

SparkQA commented Apr 25, 2016

Test build #56921 has finished for PR 12668 at commit d3806e5.

  • This patch fails Scala style tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Apr 25, 2016

Test build #56923 has finished for PR 12668 at commit 5591452.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Apr 26, 2016

Test build #56941 has finished for PR 12668 at commit 72df562.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@rxin
Copy link
Contributor

rxin commented Apr 26, 2016

@hvanhovell want to review?

@SparkQA
Copy link

SparkQA commented Apr 26, 2016

Test build #56976 has finished for PR 12668 at commit 13639ab.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Apr 26, 2016

Test build #56977 has finished for PR 12668 at commit e27012b.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

* - Sort merge: if the matching join keys are sortable.
*
* If there is no joining keys, Join implementations are chosen with the following precedence:
* - BroadcastNestedLoopJoin: if one side of the join could be broadcasted
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NIT: can be broadcasted

@hvanhovell
Copy link
Contributor

@davies I left a few comments. Only one of them is more serious.

@SparkQA
Copy link

SparkQA commented Apr 26, 2016

Test build #57006 has finished for PR 12668 at commit 76b1336.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Apr 26, 2016

Test build #2886 has finished for PR 12668 at commit 76b1336.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@hvanhovell
Copy link
Contributor

LGTM

@davies
Copy link
Contributor Author

davies commented Apr 26, 2016

Merging this into master, thanks!

@asfgit asfgit closed this in 7131b03 Apr 26, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants