This is an automated email from the ASF dual-hosted git repository.
jiayu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-sedona.git
The following commit(s) were added to refs/heads/master by this push:
new f28ce295 [SEDONA-127] Follow up on previous commit adding null safety
to ST_Ge… (#651)
f28ce295 is described below
commit f28ce2954cba032ecf703df9bc695804dc1efd38
Author: Martin Andersson <[email protected]>
AuthorDate: Wed Jul 13 20:12:21 2022 +0200
[SEDONA-127] Follow up on previous commit adding null safety to ST_Ge…
(#651)
---
.../spark/sql/sedona_sql/expressions/Constructors.scala | 6 +++---
.../scala/org/apache/sedona/sql/constructorTestScala.scala | 12 ++++++++++++
2 files changed, 15 insertions(+), 3 deletions(-)
diff --git
a/sql/src/main/scala/org/apache/spark/sql/sedona_sql/expressions/Constructors.scala
b/sql/src/main/scala/org/apache/spark/sql/sedona_sql/expressions/Constructors.scala
index af5eae44..5149f5f7 100644
---
a/sql/src/main/scala/org/apache/spark/sql/sedona_sql/expressions/Constructors.scala
+++
b/sql/src/main/scala/org/apache/spark/sql/sedona_sql/expressions/Constructors.scala
@@ -181,7 +181,7 @@ case class ST_GeomFromWKT(inputExpressions: Seq[Expression])
var formatMapper = new FormatMapper(fileDataSplitter, false)
formatMapper.readGeometry(geomString.toString).toGenericArrayData
}
- case _ => null
+ case null => null
}
}
@@ -214,7 +214,7 @@ case class ST_GeomFromText(inputExpressions:
Seq[Expression])
var formatMapper = new FormatMapper(fileDataSplitter, false)
formatMapper.readGeometry(geomString.toString).toGenericArrayData
}
- case _ => null
+ case null => null
}
}
@@ -252,7 +252,7 @@ case class ST_GeomFromWKB(inputExpressions: Seq[Expression])
// convert raw wkb byte array to geometry
new WKBReader().read(wkb).toGenericArrayData
}
- case _ => null
+ case null => null
}
}
diff --git
a/sql/src/test/scala/org/apache/sedona/sql/constructorTestScala.scala
b/sql/src/test/scala/org/apache/sedona/sql/constructorTestScala.scala
index 69e4e8d6..c1fc58aa 100644
--- a/sql/src/test/scala/org/apache/sedona/sql/constructorTestScala.scala
+++ b/sql/src/test/scala/org/apache/sedona/sql/constructorTestScala.scala
@@ -69,6 +69,10 @@ class constructorTestScala extends TestBaseScala {
assert(polygonDf.count() == 100)
val nullGeom = sparkSession.sql("select ST_GeomFromWKT(null)")
assert(nullGeom.first().isNullAt(0))
+ // Fail on wrong input type
+ intercept[Exception] {
+ sparkSession.sql("SELECT ST_GeomFromWKT(0)").collect()
+ }
}
it("Passed ST_LineFromText") {
@@ -102,6 +106,10 @@ class constructorTestScala extends TestBaseScala {
assert(polygonDf.count() == 100)
val nullGeom = sparkSession.sql("select ST_GeomFromText(null)")
assert(nullGeom.first().isNullAt(0))
+ // Fail on wrong input type
+ intercept[Exception] {
+ sparkSession.sql("SELECT ST_GeomFromText(0)").collect()
+ }
}
it("Passed ST_GeomFromWKT multipolygon read as polygon bug") {
@@ -133,6 +141,10 @@ class constructorTestScala extends TestBaseScala {
// null input
val nullGeom = sparkSession.sql("SELECT ST_GeomFromWKB(null)")
assert(nullGeom.first().isNullAt(0))
+ // Fail on wrong input type
+ intercept[Exception] {
+ sparkSession.sql("SELECT ST_GeomFromWKB(0)").collect()
+ }
}
it("Passed ST_GeomFromGeoJSON") {