[GitHub] spark pull request #18295: [SPARK-21085] [SQL] Failed to read the partitione...

2017-06-14 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/spark/pull/18295


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org



[GitHub] spark pull request #18295: [SPARK-21085] [SQL] Failed to read the partitione...

2017-06-14 Thread viirya
Github user viirya commented on a diff in the pull request:

https://github.com/apache/spark/pull/18295#discussion_r121872003
  
--- Diff: 
sql/hive/src/main/scala/org/apache/spark/sql/hive/HiveExternalCatalog.scala ---
@@ -738,10 +752,13 @@ private[spark] class HiveExternalCatalog(conf: 
SparkConf, hadoopConf: Configurat
 // schema from table properties.
 if (table.properties.contains(DATASOURCE_SCHEMA_NUMPARTS)) {
   val schemaFromTableProps = getSchemaFromTableProperties(table)
-  if (DataType.equalsIgnoreCaseAndNullability(schemaFromTableProps, 
table.schema)) {
+  val partColumnNames = getPartitionColumnsFromTableProperties(table)
+  val reorderedSchema = reorderSchema(schema = schemaFromTableProps, 
partColumnNames)
+
+  if (DataType.equalsIgnoreCaseAndNullability(reorderedSchema, 
table.schema)) {
 hiveTable.copy(
-  schema = schemaFromTableProps,
-  partitionColumnNames = 
getPartitionColumnsFromTableProperties(table),
+  schema = reorderedSchema,
+  partitionColumnNames = partColumnNames,
   bucketSpec = getBucketSpecFromTableProperties(table))
   } else {
--- End diff --

For the case below that Hive metastore changes the table schema, can we 
pass that assert always?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org



[GitHub] spark pull request #18295: [SPARK-21085] [SQL] Failed to read the partitione...

2017-06-13 Thread gatorsmile
GitHub user gatorsmile opened a pull request:

https://github.com/apache/spark/pull/18295

[SPARK-21085] [SQL] Failed to read the partitioned table created by Spark 
2.1

### What changes were proposed in this pull request?
Before the PR, Spark is unable to read the partitioned table created by 
Spark 2.1 when the table schema does not put the partitioning column at the end 
of the schema.
[assert(partitionFields.map(_.name) == 
partitionColumnNames)](https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/catalog/interface.scala#L234-L236)

When reading the table metadata from the metastore, we also need to reorder 
the columns.


### How was this patch tested?
Added test cases to check both Hive-serde and data source tables.

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/gatorsmile/spark reorderReadSchema

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/spark/pull/18295.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #18295


commit 719ecf2149502ff301f259cc13e916dfd5547629
Author: gatorsmile 
Date:   2017-06-14T05:17:24Z

fix.




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org