{"action":"created","issue":{"url":"https://api.github.com/repos/apache/spark/issues/14132","repository_url":"https://api.github.com/repos/apache/spark","labels_url":"https://api.github.com/repos/apache/spark/issues/14132/labels{/name}","comments_url":"https://api.github.com/repos/apache/spark/issues/14132/comments","events_url":"https://api.github.com/repos/apache/spark/issues/14132/events","html_url":"https://github.com/apache/spark/pull/14132","id":164785460,"number":14132,"title":"[SPARK-16475][SQL] Broadcast Hint for SQL Queries","user":{"login":"dongjoon-hyun","id":9700541,"avatar_url":"https://avatars.githubusercontent.com/u/9700541?v=3","gravatar_id":"","url":"https://api.github.com/users/dongjoon-hyun","html_url":"https://github.com/dongjoon-hyun","followers_url":"https://api.github.com/users/dongjoon-hyun/followers","following_url":"https://api.github.com/users/dongjoon-hyun/following{/other_user}","gists_url":"https://api.github.com/users/dongjoon-hyun/gists{/gist_id}","starred_url":"https://api.github.com/users/dongjoon-hyun/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dongjoon-hyun/subscriptions","organizations_url":"https://api.github.com/users/dongjoon-hyun/orgs","repos_url":"https://api.github.com/users/dongjoon-hyun/repos","events_url":"https://api.github.com/users/dongjoon-hyun/events{/privacy}","received_events_url":"https://api.github.com/users/dongjoon-hyun/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":16,"created_at":"2016-07-11T08:34:55Z","updated_at":"2016-07-13T01:10:22Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apache/spark/pulls/14132","html_url":"https://github.com/apache/spark/pull/14132","diff_url":"https://github.com/apache/spark/pull/14132.diff","patch_url":"https://github.com/apache/spark/pull/14132.patch"},"body":"## What changes were proposed in this pull request?\r\n\r\nBroadcast hint is a way for users to manually annotate a query and suggest to the query optimizer the join method. It is very useful when the query optimizer cannot make optimal decision with respect to join methods due to conservativeness or the lack of proper statistics. The DataFrame API has broadcast hint since Spark 1.5. However, we do not have an equivalent functionality in SQL queries. We propose adding Hive-style broadcast hint to Spark SQL. For more information, please see the [design document](https://issues.apache.org/jira/secure/attachment/12817061/BroadcastHintinSparkSQL.pdf).\r\n\r\n- [x] SUPPORT GENERAL HINT SYNTAX\r\n  - HINT_NAME(TABLE_NAME [,TABLE_NAME]*)\r\n  - HINT_NAME(TABLE_NAME INDEX_NAME])\r\n- [x] SUPPORT `BROADCAST JOIN` SYNTAX\r\n  - BROADCAST (LEFT|RIGHT)?\r\n\r\n## How was this patch tested?\r\n\r\nPass the Jenkins tests with new testcases."},"comment":{"url":"https://api.github.com/repos/apache/spark/issues/comments/232227583","html_url":"https://github.com/apache/spark/pull/14132#issuecomment-232227583","issue_url":"https://api.github.com/repos/apache/spark/issues/14132","id":232227583,"user":{"login":"AmplabJenkins","id":4031291,"avatar_url":"https://avatars.githubusercontent.com/u/4031291?v=3","gravatar_id":"","url":"https://api.github.com/users/AmplabJenkins","html_url":"https://github.com/AmplabJenkins","followers_url":"https://api.github.com/users/AmplabJenkins/followers","following_url":"https://api.github.com/users/AmplabJenkins/following{/other_user}","gists_url":"https://api.github.com/users/AmplabJenkins/gists{/gist_id}","starred_url":"https://api.github.com/users/AmplabJenkins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AmplabJenkins/subscriptions","organizations_url":"https://api.github.com/users/AmplabJenkins/orgs","repos_url":"https://api.github.com/users/AmplabJenkins/repos","events_url":"https://api.github.com/users/AmplabJenkins/events{/privacy}","received_events_url":"https://api.github.com/users/AmplabJenkins/received_events","type":"User","site_admin":false},"created_at":"2016-07-13T01:10:22Z","updated_at":"2016-07-13T01:10:22Z","body":"Merged build finished. Test FAILed."}}
{"actor":{"display_login":"AmplabJenkins"}}