{"action":"created","issue":{"url":"https://api.github.com/repos/apache/spark/issues/16080","repository_url":"https://api.github.com/repos/apache/spark","labels_url":"https://api.github.com/repos/apache/spark/issues/16080/labels{/name}","comments_url":"https://api.github.com/repos/apache/spark/issues/16080/comments","events_url":"https://api.github.com/repos/apache/spark/issues/16080/events","html_url":"https://github.com/apache/spark/pull/16080","id":192543225,"number":16080,"title":"[SPARK-18647][SQL] do not put provider in table properties for Hive serde table","user":{"login":"cloud-fan","id":3182036,"avatar_url":"https://avatars.githubusercontent.com/u/3182036?v=3","gravatar_id":"","url":"https://api.github.com/users/cloud-fan","html_url":"https://github.com/cloud-fan","followers_url":"https://api.github.com/users/cloud-fan/followers","following_url":"https://api.github.com/users/cloud-fan/following{/other_user}","gists_url":"https://api.github.com/users/cloud-fan/gists{/gist_id}","starred_url":"https://api.github.com/users/cloud-fan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cloud-fan/subscriptions","organizations_url":"https://api.github.com/users/cloud-fan/orgs","repos_url":"https://api.github.com/users/cloud-fan/repos","events_url":"https://api.github.com/users/cloud-fan/events{/privacy}","received_events_url":"https://api.github.com/users/cloud-fan/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2016-11-30T11:35:53Z","updated_at":"2016-12-01T00:48:33Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apache/spark/pulls/16080","html_url":"https://github.com/apache/spark/pull/16080","diff_url":"https://github.com/apache/spark/pull/16080.diff","patch_url":"https://github.com/apache/spark/pull/16080.patch"},"body":"## What changes were proposed in this pull request?\r\n\r\nIn Spark 2.1, we make Hive serde tables case-preserving by putting the table metadata in table properties, like what we did for data source table. However, we should not put table provider, as it will break forward compatibility. e.g. if we create a Hive serde table with Spark 2.1, using `sql(\"create table test stored as parquet as select 1\")`, we will fail to read it with Spark 2.0, as Spark 2.0 mistakenly treat it as data source table because there is a `provider` entry in table properties.\r\n\r\nLogically Hive serde table's provider is always hive, we don't need to store it in table properties, this PR removes it.\r\n\r\n## How was this patch tested?\r\n\r\nmanually test the forward compatibility issue.\r\n"},"comment":{"url":"https://api.github.com/repos/apache/spark/issues/comments/264044962","html_url":"https://github.com/apache/spark/pull/16080#issuecomment-264044962","issue_url":"https://api.github.com/repos/apache/spark/issues/16080","id":264044962,"user":{"login":"rxin","id":323388,"avatar_url":"https://avatars.githubusercontent.com/u/323388?v=3","gravatar_id":"","url":"https://api.github.com/users/rxin","html_url":"https://github.com/rxin","followers_url":"https://api.github.com/users/rxin/followers","following_url":"https://api.github.com/users/rxin/following{/other_user}","gists_url":"https://api.github.com/users/rxin/gists{/gist_id}","starred_url":"https://api.github.com/users/rxin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rxin/subscriptions","organizations_url":"https://api.github.com/users/rxin/orgs","repos_url":"https://api.github.com/users/rxin/repos","events_url":"https://api.github.com/users/rxin/events{/privacy}","received_events_url":"https://api.github.com/users/rxin/received_events","type":"User","site_admin":false},"created_at":"2016-12-01T00:48:33Z","updated_at":"2016-12-01T00:48:33Z","body":"We can have a test to check the table properties don't contain the entry, can't we?\r\n"}}
{"actor":{"display_login":"rxin"}}