vrozov commented on code in PR #52355:
URL: https://github.com/apache/spark/pull/52355#discussion_r2356971223
##########
sql/hive/src/test/scala/org/apache/spark/sql/hive/MetastoreDataSourcesSuite.scala:
##########
@@ -1378,62 +1378,78 @@ class MetastoreDataSourcesSuite extends QueryTest
}
test("read table with corrupted schema") {
- try {
- val schema = StructType(StructField("int", IntegerType) :: Nil)
- val hiveTableWithoutNumPartsProp = CatalogTable(
- identifier = TableIdentifier("t", Some("default")),
- tableType = CatalogTableType.MANAGED,
- schema = HiveExternalCatalog.EMPTY_DATA_SCHEMA,
- provider = Some("json"),
- storage = CatalogStorageFormat.empty,
- properties = Map(
- DATASOURCE_PROVIDER -> "json",
- DATASOURCE_SCHEMA_PART_PREFIX + 0 -> schema.json))
-
- hiveClient.createTable(hiveTableWithoutNumPartsProp, ignoreIfExists =
false)
-
- checkError(
- exception = intercept[AnalysisException] {
- sharedState.externalCatalog.getTable("default", "t")
- },
- condition = "INSUFFICIENT_TABLE_PROPERTY.MISSING_KEY",
- parameters = Map("key" -> toSQLConf("spark.sql.sources.schema"))
- )
-
- val hiveTableWithNumPartsProp = CatalogTable(
- identifier = TableIdentifier("t2", Some("default")),
- tableType = CatalogTableType.MANAGED,
- schema = HiveExternalCatalog.EMPTY_DATA_SCHEMA,
- provider = Some("json"),
- storage = CatalogStorageFormat.empty,
- properties = Map(
- DATASOURCE_PROVIDER -> "json",
- DATASOURCE_SCHEMA_PREFIX + "numParts" -> "3",
- DATASOURCE_SCHEMA_PART_PREFIX + 0 -> schema.json))
-
- hiveClient.createTable(hiveTableWithNumPartsProp, ignoreIfExists = false)
+ Seq(true, false).foreach { isHiveTable =>
+ try {
+ val schema = StructType(StructField("int", IntegerType) :: Nil)
+ val hiveTableWithoutNumPartsProp = CatalogTable(
Review Comment:
Can construction of `CatalogTable` be refactored to a separate method that
takes 3 parameters (table name, table type and num of part) to avoid code
duplication here and on line 1405?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]