Skip to content

Commit 56bc700

Browse files
忍冬HyukjinKwon
忍冬
authored andcommitted
[SQL][MINOR] Fix compiling for scala 2.12
## What changes were proposed in this pull request? Introduced by #21320 and #11744 ``` $ sbt > ++2.12.6 > project sql > compile ... [error] [warn] spark/sql/core/src/main/scala/org/apache/spark/sql/execution/ProjectionOverSchema.scala:41: match may not be exhaustive. [error] It would fail on the following inputs: (_, ArrayType(_, _)), (_, _) [error] [warn] getProjection(a.child).map(p => (p, p.dataType)).map { [error] [warn] [error] [warn] spark/sql/core/src/main/scala/org/apache/spark/sql/execution/ProjectionOverSchema.scala:52: match may not be exhaustive. [error] It would fail on the following input: (_, _) [error] [warn] getProjection(child).map(p => (p, p.dataType)).map { [error] [warn] ... ``` And ``` $ sbt > ++2.12.6 > project hive > testOnly *ParquetMetastoreSuite ... [error] /Users/rendong/wdi/spark/sql/hive/src/test/scala/org/apache/spark/sql/hive/HiveSparkSubmitSuite.scala:22: object tools is not a member of package scala [error] import scala.tools.nsc.Properties [error] ^ [error] /Users/rendong/wdi/spark/sql/hive/src/test/scala/org/apache/spark/sql/hive/HiveSparkSubmitSuite.scala:146: not found: value Properties [error] val version = Properties.versionNumberString match { [error] ^ [error] two errors found ... ``` ## How was this patch tested? Existing tests. Closes #22260 from sadhen/fix_exhaustive_match. Authored-by: 忍冬 <rendong@wacai.com> Signed-off-by: hyukjinkwon <gurwls223@apache.org>
1 parent 3a66a7f commit 56bc700

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

sql/core/src/main/scala/org/apache/spark/sql/execution/ProjectionOverSchema.scala

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,21 @@ private[execution] case class ProjectionOverSchema(schema: StructType) {
4545
projSchema.fieldIndex(a.field.name),
4646
projSchema.size,
4747
a.containsNull)
48+
case (_, projSchema) =>
49+
throw new IllegalStateException(
50+
s"unmatched child schema for GetArrayStructFields: ${projSchema.toString}"
51+
)
4852
}
4953
case GetMapValue(child, key) =>
5054
getProjection(child).map { projection => GetMapValue(projection, key) }
5155
case GetStructFieldObject(child, field: StructField) =>
5256
getProjection(child).map(p => (p, p.dataType)).map {
5357
case (projection, projSchema: StructType) =>
5458
GetStructField(projection, projSchema.fieldIndex(field.name))
59+
case (_, projSchema) =>
60+
throw new IllegalStateException(
61+
s"unmatched child schema for GetStructField: ${projSchema.toString}"
62+
)
5563
}
5664
case _ =>
5765
None

sql/hive/src/test/scala/org/apache/spark/sql/hive/HiveSparkSubmitSuite.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ package org.apache.spark.sql.hive
1919

2020
import java.io.{BufferedWriter, File, FileWriter}
2121

22-
import scala.tools.nsc.Properties
22+
import scala.util.Properties
2323

2424
import org.apache.hadoop.fs.Path
2525
import org.scalatest.{BeforeAndAfterEach, Matchers}

0 commit comments

Comments
 (0)