{"action":"created","issue":{"url":"https://api.github.com/repos/apache/spark/issues/5643","labels_url":"https://api.github.com/repos/apache/spark/issues/5643/labels{/name}","comments_url":"https://api.github.com/repos/apache/spark/issues/5643/comments","events_url":"https://api.github.com/repos/apache/spark/issues/5643/events","html_url":"https://github.com/apache/spark/pull/5643","id":70288379,"number":5643,"title":"[SPARK-7026] [SQL] fix left semi join with equi key and non-equi condition","user":{"login":"adrian-wang","id":3078910,"avatar_url":"https://avatars.githubusercontent.com/u/3078910?v=3","gravatar_id":"","url":"https://api.github.com/users/adrian-wang","html_url":"https://github.com/adrian-wang","followers_url":"https://api.github.com/users/adrian-wang/followers","following_url":"https://api.github.com/users/adrian-wang/following{/other_user}","gists_url":"https://api.github.com/users/adrian-wang/gists{/gist_id}","starred_url":"https://api.github.com/users/adrian-wang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adrian-wang/subscriptions","organizations_url":"https://api.github.com/users/adrian-wang/orgs","repos_url":"https://api.github.com/users/adrian-wang/repos","events_url":"https://api.github.com/users/adrian-wang/events{/privacy}","received_events_url":"https://api.github.com/users/adrian-wang/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":17,"created_at":"2015-04-23T02:47:06Z","updated_at":"2015-04-23T06:56:11Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apache/spark/pulls/5643","html_url":"https://github.com/apache/spark/pull/5643","diff_url":"https://github.com/apache/spark/pull/5643.diff","patch_url":"https://github.com/apache/spark/pull/5643.patch"},"body":"When the `condition` extracted by `ExtractEquiJoinKeys` contain join Predicate for left semi join, we can not plan it as semiJoin. Such as\r\n\r\n    SELECT * FROM testData2 x\r\n    LEFT SEMI JOIN testData2 y \r\n    ON x.b = y.b\r\n    AND x.a >= y.a + 2\r\nCondition `x.a >= y.a + 2` can not evaluate on table `x`, so it throw errors"},"comment":{"url":"https://api.github.com/repos/apache/spark/issues/comments/95465033","html_url":"https://github.com/apache/spark/pull/5643#issuecomment-95465033","issue_url":"https://api.github.com/repos/apache/spark/issues/5643","id":95465033,"user":{"login":"SparkQA","id":8108735,"avatar_url":"https://avatars.githubusercontent.com/u/8108735?v=3","gravatar_id":"","url":"https://api.github.com/users/SparkQA","html_url":"https://github.com/SparkQA","followers_url":"https://api.github.com/users/SparkQA/followers","following_url":"https://api.github.com/users/SparkQA/following{/other_user}","gists_url":"https://api.github.com/users/SparkQA/gists{/gist_id}","starred_url":"https://api.github.com/users/SparkQA/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SparkQA/subscriptions","organizations_url":"https://api.github.com/users/SparkQA/orgs","repos_url":"https://api.github.com/users/SparkQA/repos","events_url":"https://api.github.com/users/SparkQA/events{/privacy}","received_events_url":"https://api.github.com/users/SparkQA/received_events","type":"User","site_admin":false},"created_at":"2015-04-23T06:56:11Z","updated_at":"2015-04-23T06:56:11Z","body":"  [Test build #30812 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/30812/consoleFull) for   PR 5643 at commit [`41c20d5`](https://github.com/apache/spark/commit/41c20d55d4e48bf656be41d85a154e50b7ee175b).\n * This patch **passes all tests**.\n * This patch merges cleanly.\n * This patch adds no public classes.\n * This patch does not change any dependencies."}}