You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@impala.apache.org by mi...@apache.org on 2026/07/09 17:32:28 UTC
(impala) branch master updated (621a55df7 -> 087c32bcf)
This is an automated email from the ASF dual-hosted git repository.
asf-gitbox-commits pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/impala.git
from 621a55df7 IMPALA-14850: Codegen tuple DeepCopy for hash join
new 8eee3357c IMPALA-15153: Reorganize geospatial test files
new 087c32bcf IMPALA-15151: Set Java source version to 17
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
java/pom.xml | 5 +-
.../queries/QueryTest/geospatial-esri-extra.test | 240 -------------
.../QueryTest/geospatial-esri-high-dimension.test | 304 ++++++++++++++++
...est => geospatial-esri-specific-overloads.test} | 155 +-------
.../queries/QueryTest/geospatial-esri-srid.test | 89 +++++
.../queries/QueryTest/geospatial-esri.test | 391 ---------------------
tests/query_test/test_geospatial_functions.py | 19 +-
7 files changed, 412 insertions(+), 791 deletions(-)
create mode 100644 testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-high-dimension.test
copy testdata/workloads/functional-query/queries/QueryTest/{geospatial-esri-extra.test => geospatial-esri-specific-overloads.test} (74%)
create mode 100644 testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-srid.test
(impala) 02/02: IMPALA-15151: Set Java source version to 17
Posted by mi...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
asf-gitbox-commits pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/impala.git
commit 087c32bcf44f9a5af5df54ccfb4e9bc27ecd3ab1
Author: Peter Rozsa <pr...@cloudera.com>
AuthorDate: Wed Jul 8 16:01:41 2026 +0200
IMPALA-15151: Set Java source version to 17
Bump maven.compiler.source from 8 to 17 in java/pom.xml.
sun.misc.Unsafe was explicitly exempted from strong encapsulation in
Java 17 (JEP 260, JEP 403), so it remains accessible without
--add-exports.
Change-Id: Iccb7b9cc28ad8ade554298503f2d8f4dee789151
Assisted-by: Claude Sonnet 4.6 (OpenCode)
Reviewed-on: http://gerrit.cloudera.org:8080/24561
Tested-by: Impala Public Jenkins <im...@cloudera.com>
Reviewed-by: Michael Smith <mi...@cloudera.com>
Reviewed-by: Zoltan Borok-Nagy <bo...@cloudera.com>
---
java/pom.xml | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/java/pom.xml b/java/pom.xml
index 34d6bed44..369ccbf44 100644
--- a/java/pom.xml
+++ b/java/pom.xml
@@ -91,9 +91,8 @@ under the License.
<dropwizard-metrics.version>${env.IMPALA_DROPWIZARD_METRICS_VERSION}</dropwizard-metrics.version>
<aircompressor.version>${env.IMPALA_AIRCOMPRESSOR_VERSION}</aircompressor.version>
<datasketches.version>${env.IMPALA_DATASKETCHES_VERSION}</datasketches.version>
- <!-- Informs maven-compiler-plugin to build for specified target.
- Source version is fixed at 8, primarily due to sun.misc.Unsafe. -->
- <maven.compiler.source>8</maven.compiler.source>
+ <!-- Informs maven-compiler-plugin to build for specified target. -->
+ <maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>${env.IMPALA_JAVA_TARGET}</maven.compiler.target>
</properties>
(impala) 01/02: IMPALA-15153: Reorganize geospatial test files
Posted by mi...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
asf-gitbox-commits pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/impala.git
commit 8eee3357cf0c766c396894ea486f4b88579266f4
Author: Csaba Ringhofer <cs...@cloudera.com>
AuthorDate: Sat Jul 4 13:54:56 2026 +0200
IMPALA-15153: Reorganize geospatial test files
Move some tests out of geospatial-esri.test and
geospatial-esri-extra.test:
- geospatial-esri-srid.test: SRID-dependent tests
- geospatial-esri-specific-overloads.test: overloads planned to be
dropped later
- geospatial-esri-high-dimension.test: 3D/4D geometry tests
Pure test reorganization with no behavior change - every query block is
preserved verbatim.
The grouping prepares tests for later geospatial_library
specific selection.
Change-Id: Id9952a3979d3260ca7c19231e30fd4b0c36c3266
Assisted-by: Claude Opus 4.8
Reviewed-on: http://gerrit.cloudera.org:8080/24548
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>
---
.../queries/QueryTest/geospatial-esri-extra.test | 240 -------------
.../QueryTest/geospatial-esri-high-dimension.test | 304 ++++++++++++++++
...est => geospatial-esri-specific-overloads.test} | 155 +-------
.../queries/QueryTest/geospatial-esri-srid.test | 89 +++++
.../queries/QueryTest/geospatial-esri.test | 391 ---------------------
tests/query_test/test_geospatial_functions.py | 19 +-
6 files changed, 410 insertions(+), 788 deletions(-)
diff --git a/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-extra.test b/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-extra.test
index a07fbef46..7a87d89e5 100644
--- a/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-extra.test
+++ b/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-extra.test
@@ -151,244 +151,4 @@ select st_astext(st_binenvelope(1.0, "point(1 2)"));
STRING
---- RESULTS
'POLYGON ((1 1, 2 1, 2 2, 1 2, 1 1))'
-====
----- QUERY
-# ST_Intersects(BINARY, STRING)
-select ST_Intersects(st_polygon(2,0, 2,3, 3,0), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Intersects(st_polygon(0,0, 0,1, 0.5,1), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Intersects(st_polygon(0,0, 0,1, 1,1), "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-true,false,true
-====
----- QUERY
-# ST_Intersects(STRING, BINARY)
-select ST_Intersects("POLYGON ((2 0, 2 3, 3 0))", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Intersects("POLYGON ((0 0, 0 1, 0.5 1))", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Intersects("POLYGON ((0 0, 0 1, 1 1))", ST_Polygon(1,1, 1,4, 4,4, 4,1));
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-true,false,true
-====
----- QUERY
-# ST_Intersects(STRING, STRING)
-select ST_Intersects("POLYGON ((2 0, 2 3, 3 0))", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Intersects("POLYGON ((0 0, 0 1, 0.5 1))", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Intersects("POLYGON ((0 0, 0 1, 1 1))", "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-true,false,true
-====
----- QUERY
-# ST_Overlaps(BINARY, STRING)
-select ST_Overlaps(st_polygon(2,0, 2,3, 3,0), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Overlaps(st_polygon(0,0, 0,1, 0.5,1), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Overlaps(st_polygon(0,0, 0,1, 1,1), "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-true,false,false
-====
----- QUERY
-# ST_Overlaps(STRING, BINARY)
-select ST_Overlaps("POLYGON ((2 0, 2 3, 3 0))", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Overlaps("POLYGON ((0 0, 0 1, 0.5 1))", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Overlaps("POLYGON ((0 0, 0 1, 1 1))", ST_Polygon(1,1, 1,4, 4,4, 4,1));
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-true,false,false
-====
----- QUERY
-# ST_Overlaps(STRING, STRING)
-select ST_Overlaps("POLYGON ((2 0, 2 3, 3 0))", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Overlaps("POLYGON ((0 0, 0 1, 0.5 1))", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Overlaps("POLYGON ((0 0, 0 1, 1 1))", "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-true,false,false
-====
----- QUERY
-# ST_Touches(BINARY, STRING)
-select ST_Touches(st_polygon(2,0, 2,3, 3,0), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Touches(st_polygon(0,0, 0,1, 0.5,1), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Touches(st_polygon(0,0, 0,1, 1,1), "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,false,true
-====
----- QUERY
-# ST_Touches(STRING, BINARY)
-select ST_Touches("POLYGON ((2 0, 2 3, 3 0))", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Touches("POLYGON ((0 0, 0 1, 0.5 1))", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Touches("POLYGON ((0 0, 0 1, 1 1))", ST_Polygon(1,1, 1,4, 4,4, 4,1));
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,false,true
-====
----- QUERY
-# ST_Touches(STRING, STRING)
-select ST_Touches("POLYGON ((2 0, 2 3, 3 0))", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Touches("POLYGON ((0 0, 0 1, 0.5 1))", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Touches("POLYGON ((0 0, 0 1, 1 1))", "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,false,true
-====
----- QUERY
-# ST_Contains(BINARY, STRING)
-select ST_Contains(st_polygon(2,2, 2,3, 3,2), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Contains(st_polygon(0,0, 2,3, 3,2), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Contains(st_polygon(0,0, 10,0, 0, 10), "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,false,true
-====
----- QUERY
-# ST_Contains(STRING, BINARY)
-select ST_Contains("POLYGON ((2 0, 2 3, 3 2))", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Contains("POLYGON ((0 0, 2 3, 3 2))", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Contains("POLYGON ((0 0, 10 0, 0 10))", ST_Polygon(1,1, 1,4, 4,4, 4,1));
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,false,true
-====
----- QUERY
-# ST_Contains(STRING, STRING)
-select ST_Contains("POLYGON ((2 0, 2 3, 3 2))", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Contains("POLYGON ((0 0, 2 3, 3 2))", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Contains("POLYGON ((0 0, 10 0, 0 10))", "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,false,true
-====
----- QUERY
-# ST_Within(BINARY, STRING)
-select ST_Within(st_polygon(2,2, 2,3, 3,2), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Within(st_polygon(0,0, 2,3, 3,2), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Within(st_polygon(0,0, 10,0, 0, 10), "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-true,false,false
-====
----- QUERY
-# ST_Within(STRING, BINARY)
-select ST_Within("POLYGON ((2 2, 2 3, 3 2))", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Within("POLYGON ((0 0, 2 3, 3 2))", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Within("POLYGON ((0 0, 10 0, 0 10))", ST_Polygon(1,1, 1,4, 4,4, 4,1));
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-true,false,false
-====
----- QUERY
-# ST_Within(STRING, STRING)
-select ST_Within("POLYGON ((2 2, 2 3, 3 2))", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Within("POLYGON ((0 0, 2 3, 3 2))", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Within("POLYGON ((0 0, 10 0, 0 10))", "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-true,false,false
-====
----- QUERY
-# ST_Crosses(BINARY, STRING)
-select ST_Crosses(st_linestring(2,2, 3,3), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Crosses(st_linestring(0,0, 1,1), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Crosses(st_linestring(0,0, 3,3), "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,false,true
-====
----- QUERY
-# ST_Crosses(STRING, BINARY)
-select ST_Crosses("LINESTRING (2 2, 3 3)", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Crosses("LINESTRING (0 0, 1 1)", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Crosses("LINESTRING (0 0, 3 3)", ST_Polygon(1,1, 1,4, 4,4, 4,1));
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,false,true
-====
----- QUERY
-# ST_Crosses(STRING, STRING)
-select ST_Crosses("LINESTRING (2 2, 3 3)", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Crosses("LINESTRING (0 0, 1 1)", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Crosses("LINESTRING (0 0, 3 3)", "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,false,true
-====
----- QUERY
-# ST_Disjoint(BINARY, STRING)
-select ST_Disjoint(st_linestring(2,2, 3,3), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Disjoint(st_linestring(1,0, 0,1), "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Disjoint(st_linestring(0,0, 3,3), "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,true,false
-====
----- QUERY
-# ST_Disjoint(STRING, BINARY)
-select ST_Disjoint("LINESTRING (2 2, 3 3)", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Disjoint("LINESTRING (1 0, 0 1)", ST_Polygon(1,1, 1,4, 4,4, 4,1)),
- ST_Disjoint("LINESTRING (0 0, 3 3)", ST_Polygon(1,1, 1,4, 4,4, 4,1));
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,true,false
-====
----- QUERY
-# ST_Disjoint(STRING, STRING)
-select ST_Disjoint("LINESTRING (2 2, 3 3)", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Disjoint("LINESTRING (1 0, 0 1)", "POLYGON ((1 1, 1 4, 4 4, 4 1))"),
- ST_Disjoint("LINESTRING (0 0, 3 3)", "POLYGON ((1 1, 1 4, 4 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,true,false
-====
----- QUERY
-# ST_Equals(BINARY, STRING)
-select ST_Equals(st_polygon(2,0, 2,3, 3,0), "POLYGON ((1 1, 1 4, 4 1))"),
- ST_Equals(st_polygon(1,1, 1,4, 4,1), "POLYGON ((1 1, 1 4, 4 1))"),
- ST_Equals(st_polygon(0,0, 0,1, 1,0), "POLYGON ((1 1, 1 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,true,false
-====
----- QUERY
-# ST_Equals(STRING, BINARY)
-select ST_Equals("POLYGON ((2 0, 2 3, 3 0))", ST_Polygon(1,1, 1,4, 4,1)),
- ST_Equals("POLYGON ((1 1, 1 4, 4 1))", ST_Polygon(1,1, 1,4, 4,1)),
- ST_Equals("POLYGON ((0 0, 0 1, 1 0))", ST_Polygon(1,1, 1,4, 4,1));
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,true,false
-====
----- QUERY
-# ST_Equals(STRING, STRING)
-select ST_Equals("POLYGON ((2 0, 2 3, 3 0))", "POLYGON ((1 1, 1 4, 4 1))"),
- ST_Equals("POLYGON ((1 1, 1 4, 4 1))", "POLYGON ((1 1, 1 4, 4 1))"),
- ST_Equals("POLYGON ((0 0, 0 1, 1 0))", "POLYGON ((1 1, 1 4, 4 1))");
----- TYPES
-BOOLEAN,BOOLEAN,BOOLEAN
----- RESULTS
-false,true,false
====
\ No newline at end of file
diff --git a/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-high-dimension.test b/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-high-dimension.test
new file mode 100644
index 000000000..3d1b9120a
--- /dev/null
+++ b/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-high-dimension.test
@@ -0,0 +1,304 @@
+====
+---- QUERY
+select ST_GeometryType(ST_Point('point z (10.02 20.01 2)'));
+---- RESULTS
+'ST_POINT'
+====
+---- QUERY
+select ST_Is3D(ST_Point(0., 3.));
+---- TYPES
+BOOLEAN
+---- RESULTS
+false
+====
+---- QUERY
+select ST_Is3D(ST_PointZ(0., 3., 1));
+---- TYPES
+BOOLEAN
+---- RESULTS
+true
+====
+---- QUERY
+select ST_Is3D(ST_Point('pointzm (0. 3. 1. 2.)'));
+---- TYPES
+BOOLEAN
+---- RESULTS
+true
+====
+---- QUERY
+select ST_Is3D(ST_LineString(0.,0., 3.,4., 0.,4., 0.,0.));
+---- TYPES
+BOOLEAN
+---- RESULTS
+false
+====
+---- QUERY
+select ST_Is3D(ST_Polygon(1, 1, 1, 4, 4, 4, 4, 1));
+---- TYPES
+BOOLEAN
+---- RESULTS
+false
+====
+---- QUERY
+select ST_Is3D(ST_GeomFromText('linestring z (10 10 2, 20 20 4)'));
+---- TYPES
+BOOLEAN
+---- RESULTS
+true
+====
+---- QUERY
+select ST_Z(ST_PointZ(0., 3., 1));
+---- TYPES
+DOUBLE
+---- RESULTS
+1.0
+====
+---- QUERY
+select ST_Z(ST_Point('pointzm (0. 3. 1. 2.)'));
+---- TYPES
+DOUBLE
+---- RESULTS
+1.0
+====
+---- QUERY
+select ST_Z(ST_GeomFromText('linestring z (10 10 2, 20 20 4)'));
+---- RESULTS
+NULL
+====
+---- QUERY
+select ST_MinZ(ST_PointZ(0., 3., 1));
+---- TYPES
+DOUBLE
+---- RESULTS
+1.0
+====
+---- QUERY
+select ST_MinZ(ST_GeomFromText('linestring z (10 10 2, 20 20 4)'));
+---- TYPES
+DOUBLE
+---- RESULTS
+2.0
+====
+---- QUERY
+select ST_MinZ(ST_MultiPoint('multipoint z((0 0 1), (2 2 3))'));
+---- TYPES
+DOUBLE
+---- RESULTS
+1.0
+====
+---- QUERY
+select ST_MinZ(ST_GeomFromText('polygon z ((0 0 2, 8 0 4, 0 8 3, 0 0 2))'));
+---- TYPES
+DOUBLE
+---- RESULTS
+2.0
+====
+---- QUERY
+select ST_MaxZ(ST_PointZ(0., 3., 1));
+---- TYPES
+DOUBLE
+---- RESULTS
+1.0
+====
+---- QUERY
+select ST_MaxZ(ST_GeomFromText('linestring z (10 10 2, 20 20 4)'));
+---- TYPES
+DOUBLE
+---- RESULTS
+4.0
+====
+---- QUERY
+select ST_MaxZ(ST_GeomFromText('polygon z ((0 0 2, 8 0 4, 0 8 3, 0 0 2))'));
+---- TYPES
+DOUBLE
+---- RESULTS
+4.0
+====
+---- QUERY
+select ST_MaxZ(ST_MultiPoint('multipoint z((0 0 1), (2 2 3))'));
+---- TYPES
+DOUBLE
+---- RESULTS
+3.0
+====
+---- QUERY
+select ST_IsMeasured(ST_Point(0., 3.));
+---- TYPES
+BOOLEAN
+---- RESULTS
+false
+====
+---- QUERY
+select ST_IsMeasured(ST_Point('point m(0. 3. 1)'));
+---- TYPES
+BOOLEAN
+---- RESULTS
+true
+====
+---- QUERY
+select ST_IsMeasured(ST_Point('pointzm (0. 3. 1. 2.)'));
+---- TYPES
+BOOLEAN
+---- RESULTS
+true
+====
+---- QUERY
+select ST_IsMeasured(ST_LineString(0.,0., 3.,4., 0.,4., 0.,0.));
+---- TYPES
+BOOLEAN
+---- RESULTS
+false
+====
+---- QUERY
+select ST_IsMeasured(ST_Polygon(1, 1, 1, 4, 4, 4, 4, 1));
+---- TYPES
+BOOLEAN
+---- RESULTS
+false
+====
+---- QUERY
+select ST_IsMeasured(ST_GeomFromText('linestring m (10 10 2, 20 20 4)'));
+---- TYPES
+BOOLEAN
+---- RESULTS
+true
+====
+---- QUERY
+select ST_M(ST_Point('point m(0. 3. 1)'));
+---- TYPES
+DOUBLE
+---- RESULTS
+1.0
+====
+---- QUERY
+select ST_M(ST_Point('pointzm (0. 3. 1. 2.)'));
+---- TYPES
+DOUBLE
+---- RESULTS
+2.0
+====
+---- QUERY
+select ST_M(ST_GeomFromText('linestring m (10 10 2, 20 20 4)'));
+---- RESULTS
+NULL
+====
+---- QUERY
+select ST_MinM(ST_Point('point m(0. 3. 1)'));
+---- TYPES
+DOUBLE
+---- RESULTS
+1.0
+====
+---- QUERY
+select ST_MinM(ST_GeomFromText('linestring m (10 10 2, 20 20 4)'));
+---- TYPES
+DOUBLE
+---- RESULTS
+2.0
+====
+---- QUERY
+select ST_MinM(ST_GeomFromText('polygon m ((0 0 5, 8 0 4, 0 8 3, 0 0 5))'));
+---- TYPES
+DOUBLE
+---- RESULTS
+3.0
+====
+---- QUERY
+select ST_MinM(ST_MultiPoint('multipoint m((0 0 1), (2 2 3))'));
+---- TYPES
+DOUBLE
+---- RESULTS
+1.0
+====
+---- QUERY
+select ST_MaxM(ST_Point('point m(0. 3. 1)'));
+---- TYPES
+DOUBLE
+---- RESULTS
+1.0
+====
+---- QUERY
+select ST_MaxM(ST_GeomFromText('linestring m (10 10 2, 20 20 4)'));
+---- TYPES
+DOUBLE
+---- RESULTS
+4.0
+====
+---- QUERY
+select ST_MaxM(ST_GeomFromText('polygon m ((0 0 5, 8 0 4, 0 8 3, 0 0 5))'));
+---- TYPES
+DOUBLE
+---- RESULTS
+5.0
+====
+---- QUERY
+select ST_MaxM(ST_MultiPoint('multipoint m((0 0 1), (2 2 3))'));
+---- TYPES
+DOUBLE
+---- RESULTS
+3.0
+====
+---- QUERY
+select ST_CoordDim(ST_Point(0., 3.));
+---- RESULTS
+2
+====
+---- QUERY
+select ST_CoordDim(ST_PointZ(0., 3., 1));
+---- RESULTS
+3
+====
+---- QUERY
+select ST_CoordDim(ST_Point('point m(0. 3. 1)'));
+---- RESULTS
+3
+====
+---- QUERY
+select ST_CoordDim(ST_Point('pointzm (0. 3. 1. 2.)'));
+---- RESULTS
+4
+====
+---- QUERY
+select ST_CoordDim(ST_LineString(0.,0., 3.,4., 0.,4., 0.,0.));
+---- RESULTS
+2
+====
+---- QUERY
+select ST_CoordDim(ST_Polygon(1, 1, 1, 4, 4, 4, 4, 1));
+---- RESULTS
+2
+====
+---- QUERY
+select ST_CoordDim(ST_GeomFromText('linestring z (10 10 2, 20 20 4)'));
+---- RESULTS
+3
+====
+---- QUERY
+select ST_CoordDim(ST_GeomFromText('linestring m (10 10 2, 20 20 4)'));
+---- RESULTS
+3
+====
+---- QUERY
+select ST_NumPoints(ST_PointZ(0., 3., 1));
+---- RESULTS
+1
+====
+---- QUERY
+select ST_GeometryType(ST_Linestring('linestring z (10 10 2, 20 20 4)'));
+---- RESULTS
+'ST_LINESTRING'
+====
+---- QUERY
+select ST_CoordDim(ST_Point(0., 3.)), ST_CoordDim(ST_PointZ(0., 3., 1));
+---- TYPES
+INT, INT
+---- RESULTS
+2,3
+====
+---- QUERY
+select ST_Is3D(ST_Point(0., 3.)), ST_Is3D(ST_PointZ(0., 3., 1));
+---- TYPES
+BOOLEAN, BOOLEAN
+---- RESULTS
+false,true
+====
diff --git a/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-extra.test b/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-specific-overloads.test
similarity index 74%
copy from testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-extra.test
copy to testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-specific-overloads.test
index a07fbef46..fe3f228e1 100644
--- a/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-extra.test
+++ b/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-specific-overloads.test
@@ -1,156 +1,3 @@
-=====
----- QUERY
-select st_bin(1, "point empty")
----- TYPES
-BIGINT
----- RESULTS
-0
-====
----- QUERY
-select st_bin(1, "point(10 10)")
----- TYPES
-BIGINT
----- RESULTS
-4611685985093119520
-====
----- QUERY
-select st_bin(1.0, st_point(10, 10))
----- TYPES
-BIGINT
----- RESULTS
-4611685985093119520
-====
----- QUERY
-select st_bin(1.0, "point(-200 50)")
----- TYPES
-BIGINT
----- RESULTS
-4611685863613099350
-====
----- QUERY
-select st_bin(1, st_point(-200, 50))
----- TYPES
-BIGINT
----- RESULTS
-4611685863613099350
-====
----- QUERY
-select st_bin(1, "point(-500 -1000)")
----- TYPES
-BIGINT
----- RESULTS
-4611689052463623000
-====
----- QUERY
-select st_bin(1.0, st_point(-500, -1000))
----- TYPES
-BIGINT
----- RESULTS
-4611689052463623000
-====
----- QUERY
-select st_bin(1.0, "point(800 -5000)")
----- TYPES
-BIGINT
----- RESULTS
-4611701200465620300
-====
----- QUERY
-select st_bin(1, st_point(800, -5000))
----- TYPES
-BIGINT
----- RESULTS
-4611701200465620300
-====
-
----- QUERY
-select st_astext(st_binenvelope(1, 4611685985093119520));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((9.5 9.5, 10.5 9.5, 10.5 10.5, 9.5 10.5, 9.5 9.5))'
-====
----- QUERY
-select st_astext(st_binenvelope(1.0, 4611685985093119520));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((9.5 9.5, 10.5 9.5, 10.5 10.5, 9.5 10.5, 9.5 9.5))'
-====
-
----- QUERY
-select st_astext(st_binenvelope(1, 4611685863613099350));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((-200.5 49.5, -199.5 49.5, -199.5 50.5, -200.5 50.5, -200.5 49.5))'
-====
----- QUERY
-select st_astext(st_binenvelope(1.0, 4611685863613099350));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((-200.5 49.5, -199.5 49.5, -199.5 50.5, -200.5 50.5, -200.5 49.5))'
-====
-
----- QUERY
-select st_astext(st_binenvelope(1, 4611689052463623000));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((-500.5 -1000.5, -499.5 -1000.5, -499.5 -999.5, -500.5 -999.5, -500.5 -1000.5))'
-====
----- QUERY
-select st_astext(st_binenvelope(1.0, 4611689052463623000));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((-500.5 -1000.5, -499.5 -1000.5, -499.5 -999.5, -500.5 -999.5, -500.5 -1000.5))'
-====
-
----- QUERY
-select st_astext(st_binenvelope(1, 4611701200465620300));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((799.5 -5000.5, 800.5 -5000.5, 800.5 -4999.5, 799.5 -4999.5, 799.5 -5000.5))'
-====
----- QUERY
-select st_astext(st_binenvelope(1.0, 4611701200465620300));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((799.5 -5000.5, 800.5 -5000.5, 800.5 -4999.5, 799.5 -4999.5, 799.5 -5000.5))'
-====
-
----- QUERY
-select st_astext(st_binenvelope(1, st_point(1, 2)));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((1 1, 2 1, 2 2, 1 2, 1 1))'
-====
----- QUERY
-select st_astext(st_binenvelope(1.0, st_point(1, 2)));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((1 1, 2 1, 2 2, 1 2, 1 1))'
-====
-
----- QUERY
-select st_astext(st_binenvelope(1, "point(1 2)"));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((1 1, 2 1, 2 2, 1 2, 1 1))'
-====
----- QUERY
-select st_astext(st_binenvelope(1.0, "point(1 2)"));
----- TYPES
-STRING
----- RESULTS
-'POLYGON ((1 1, 2 1, 2 2, 1 2, 1 1))'
====
---- QUERY
# ST_Intersects(BINARY, STRING)
@@ -391,4 +238,4 @@ select ST_Equals("POLYGON ((2 0, 2 3, 3 0))", "POLYGON ((1 1, 1 4, 4 1))"),
BOOLEAN,BOOLEAN,BOOLEAN
---- RESULTS
false,true,false
-====
\ No newline at end of file
+====
diff --git a/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-srid.test b/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-srid.test
new file mode 100644
index 000000000..80cf6aa64
--- /dev/null
+++ b/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri-srid.test
@@ -0,0 +1,89 @@
+====
+---- QUERY
+select ST_GeodesicLengthWGS84(ST_GeomFromText('MultiLineString((0 80, 0.03 80.04))', 4326));
+---- TYPES
+DOUBLE
+---- RESULTS
+4503.988488226892
+====
+---- QUERY
+select ST_GeodesicLengthWGS84(ST_GeomFromText('LineString(0 0, 0.03 0.04)', 4326));
+---- TYPES
+DOUBLE
+---- RESULTS
+5542.156362735362
+====
+---- QUERY
+select ST_GeodesicLengthWGS84(ST_GeomFromText('MultiLineString((0 0, 0.03 0.04))', 4326));
+---- TYPES
+DOUBLE
+---- RESULTS
+5542.156362735362
+====
+---- QUERY
+select ST_GeodesicLengthWGS84(ST_GeomFromText('MultiLineString((0 80, 0.03 80.04))', 4326));
+---- TYPES
+DOUBLE
+---- RESULTS
+4503.988488226892
+====
+---- QUERY
+select ST_GeodesicLengthWGS84(ST_SetSRID(ST_LineString(0,80, 0.03, 80.04), 4326));
+---- TYPES
+DOUBLE
+---- RESULTS
+4503.988488226892
+====
+---- QUERY
+select ST_GeodesicLengthWGS84(ST_SetSRID(ST_GeomFromText('MultiLineString((0 80, 0.03 80.04))'), 4326));
+---- TYPES
+DOUBLE
+---- RESULTS
+4503.988488226892
+====
+---- QUERY
+select ST_GeodesicLengthWGS84(ST_SetSRID(ST_LineString(179.98,-80, -179.98, -80.03), 4326));
+---- TYPES
+DOUBLE
+---- RESULTS
+3438.190416575652
+====
+---- QUERY
+select ST_GeodesicLengthWGS84(ST_SetSRID(ST_LineString(179.98,80, -179.98, 80.03), 4326));
+---- TYPES
+DOUBLE
+---- RESULTS
+3438.190416575652
+====
+---- QUERY
+select ST_GeodesicLengthWGS84(ST_SetSRID(ST_LineString(179.98,-0.01, -179.98, 0.02), 4326));
+---- TYPES
+DOUBLE
+---- RESULTS
+5552.589421311623
+====
+---- QUERY
+select ST_AsJson(ST_GeomFromGeoJson('{"type":"Point", "coordinates":[1.2, 2.4]}'));
+---- RESULTS
+'{"x":1.2,"y":2.4,"spatialReference":{"wkid":4326}}'
+====
+---- QUERY
+select ST_AsJson(ST_GeomFromJson('{"x":1.2,"y":2.4,"spatialReference":{"wkid":4326}}'));
+---- RESULTS
+'{"x":1.2,"y":2.4,"spatialReference":{"wkid":4326}}'
+====
+---- QUERY
+select ST_AsGeoJson(ST_GeomFromJson('{"x":1.2,"y":2.4,"spatialReference":{"wkid":4326}}'));
+---- RESULTS
+'{"type":"Point","coordinates":[1.2,2.4],"crs":{"type":"name","properties":{"name":"EPSG:4326"}}}'
+====
+---- QUERY
+select ST_AsGeoJson(ST_GeomFromJson('{"x":1.2,"y":2.4,"spatialReference":{"wkid": 0}}'));
+---- RESULTS
+'{"type":"Point","coordinates":[1.2,2.4],"crs":null}'
+====
+---- QUERY
+select ST_AsText(ST_Intersection(ST_Polygon(2,0, 2,3, 3,0), ST_Polygon(1,1, 4,1, 4,4, 1,4)));
+---- RESULTS
+'POLYGON ((2 1, 2.6666666666666665 1, 2 3, 2 1))'
+====
diff --git a/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri.test b/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri.test
index 158309004..fb70a779e 100644
--- a/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri.test
+++ b/testdata/workloads/functional-query/queries/QueryTest/geospatial-esri.test
@@ -24,11 +24,6 @@ select ST_GeometryType(ST_Point('point (10.02 20.01)'));
'ST_POINT'
====
---- QUERY
-select ST_GeometryType(ST_Point('point z (10.02 20.01 2)'));
----- RESULTS
-'ST_POINT'
-====
----- QUERY
select ST_GeometryType(ST_MultiPoint('multipoint ((1 2))'));
---- RESULTS
'ST_MULTIPOINT'
@@ -44,11 +39,6 @@ select ST_GeometryType(ST_Linestring('linestring (10 10, 20 20)'));
'ST_LINESTRING'
====
---- QUERY
-select ST_GeometryType(ST_Linestring('linestring z (10 10 2, 20 20 4)'));
----- RESULTS
-'ST_LINESTRING'
-====
----- QUERY
select ST_GeometryType(ST_GeomFromText('polygon ((0 0, 0 10, 10 0, 0 0))'));
---- RESULTS
'ST_POLYGON'
@@ -394,34 +384,6 @@ DOUBLE
24.0
====
---- QUERY
-select ST_GeodesicLengthWGS84(ST_GeomFromText('MultiLineString((0 80, 0.03 80.04))', 4326));
----- TYPES
-DOUBLE
----- RESULTS
-4503.988488226892
-====
----- QUERY
-select ST_GeodesicLengthWGS84(ST_GeomFromText('LineString(0 0, 0.03 0.04)', 4326));
----- TYPES
-DOUBLE
----- RESULTS
-5542.156362735362
-====
----- QUERY
-select ST_GeodesicLengthWGS84(ST_GeomFromText('MultiLineString((0 0, 0.03 0.04))', 4326));
----- TYPES
-DOUBLE
----- RESULTS
-5542.156362735362
-====
----- QUERY
-select ST_GeodesicLengthWGS84(ST_GeomFromText('MultiLineString((0 80, 0.03 80.04))', 4326));
----- TYPES
-DOUBLE
----- RESULTS
-4503.988488226892
-====
----- QUERY
select ST_IsClosed(ST_LineString(0.,0., 3.,4.));
---- TYPES
BOOLEAN
@@ -457,280 +419,6 @@ BOOLEAN
true
====
---- QUERY
-select ST_Is3D(ST_Point(0., 3.));
----- TYPES
-BOOLEAN
----- RESULTS
-false
-====
----- QUERY
-select ST_Is3D(ST_PointZ(0., 3., 1));
----- TYPES
-BOOLEAN
----- RESULTS
-true
-====
----- QUERY
-select ST_Is3D(ST_Point('pointzm (0. 3. 1. 2.)'));
----- TYPES
-BOOLEAN
----- RESULTS
-true
-====
----- QUERY
-select ST_Is3D(ST_LineString(0.,0., 3.,4., 0.,4., 0.,0.));
----- TYPES
-BOOLEAN
----- RESULTS
-false
-====
----- QUERY
-select ST_Is3D(ST_Polygon(1, 1, 1, 4, 4, 4, 4, 1));
----- TYPES
-BOOLEAN
----- RESULTS
-false
-====
----- QUERY
-select ST_Is3D(ST_GeomFromText('linestring z (10 10 2, 20 20 4)'));
----- TYPES
-BOOLEAN
----- RESULTS
-true
-====
----- QUERY
-select ST_Z(ST_PointZ(0., 3., 1));
----- TYPES
-DOUBLE
----- RESULTS
-1.0
-====
----- QUERY
-select ST_Z(ST_Point('pointzm (0. 3. 1. 2.)'));
----- TYPES
-DOUBLE
----- RESULTS
-1.0
-====
----- QUERY
-select ST_Z(ST_GeomFromText('linestring z (10 10 2, 20 20 4)'));
----- RESULTS
-NULL
-====
----- QUERY
-select ST_MinZ(ST_PointZ(0., 3., 1));
----- TYPES
-DOUBLE
----- RESULTS
-1.0
-====
----- QUERY
-select ST_MinZ(ST_GeomFromText('linestring z (10 10 2, 20 20 4)'));
----- TYPES
-DOUBLE
----- RESULTS
-2.0
-====
----- QUERY
-select ST_MinZ(ST_MultiPoint('multipoint z((0 0 1), (2 2 3))'));
----- TYPES
-DOUBLE
----- RESULTS
-1.0
-====
----- QUERY
-select ST_MinZ(ST_GeomFromText('polygon z ((0 0 2, 8 0 4, 0 8 3, 0 0 2))'));
----- TYPES
-DOUBLE
----- RESULTS
-2.0
-====
----- QUERY
-select ST_MaxZ(ST_PointZ(0., 3., 1));
----- TYPES
-DOUBLE
----- RESULTS
-1.0
-====
----- QUERY
-select ST_MaxZ(ST_GeomFromText('linestring z (10 10 2, 20 20 4)'));
----- TYPES
-DOUBLE
----- RESULTS
-4.0
-====
----- QUERY
-select ST_MaxZ(ST_GeomFromText('polygon z ((0 0 2, 8 0 4, 0 8 3, 0 0 2))'));
----- TYPES
-DOUBLE
----- RESULTS
-4.0
-====
----- QUERY
-select ST_MaxZ(ST_MultiPoint('multipoint z((0 0 1), (2 2 3))'));
----- TYPES
-DOUBLE
----- RESULTS
-3.0
-====
----- QUERY
-select ST_IsMeasured(ST_Point(0., 3.));
----- TYPES
-BOOLEAN
----- RESULTS
-false
-====
----- QUERY
-select ST_IsMeasured(ST_Point('point m(0. 3. 1)'));
----- TYPES
-BOOLEAN
----- RESULTS
-true
-====
----- QUERY
-select ST_IsMeasured(ST_Point('pointzm (0. 3. 1. 2.)'));
----- TYPES
-BOOLEAN
----- RESULTS
-true
-====
----- QUERY
-select ST_IsMeasured(ST_LineString(0.,0., 3.,4., 0.,4., 0.,0.));
----- TYPES
-BOOLEAN
----- RESULTS
-false
-====
----- QUERY
-select ST_IsMeasured(ST_Polygon(1, 1, 1, 4, 4, 4, 4, 1));
----- TYPES
-BOOLEAN
----- RESULTS
-false
-====
----- QUERY
-select ST_IsMeasured(ST_GeomFromText('linestring m (10 10 2, 20 20 4)'));
----- TYPES
-BOOLEAN
----- RESULTS
-true
-====
----- QUERY
-select ST_M(ST_Point('point m(0. 3. 1)'));
----- TYPES
-DOUBLE
----- RESULTS
-1.0
-====
----- QUERY
-select ST_M(ST_Point('pointzm (0. 3. 1. 2.)'));
----- TYPES
-DOUBLE
----- RESULTS
-2.0
-====
----- QUERY
-select ST_M(ST_GeomFromText('linestring m (10 10 2, 20 20 4)'));
----- RESULTS
-NULL
-====
----- QUERY
-select ST_MinM(ST_Point('point m(0. 3. 1)'));
----- TYPES
-DOUBLE
----- RESULTS
-1.0
-====
----- QUERY
-select ST_MinM(ST_GeomFromText('linestring m (10 10 2, 20 20 4)'));
----- TYPES
-DOUBLE
----- RESULTS
-2.0
-====
----- QUERY
-select ST_MinM(ST_GeomFromText('polygon m ((0 0 5, 8 0 4, 0 8 3, 0 0 5))'));
----- TYPES
-DOUBLE
----- RESULTS
-3.0
-====
----- QUERY
-select ST_MinM(ST_MultiPoint('multipoint m((0 0 1), (2 2 3))'));
----- TYPES
-DOUBLE
----- RESULTS
-1.0
-====
----- QUERY
-select ST_MaxM(ST_Point('point m(0. 3. 1)'));
----- TYPES
-DOUBLE
----- RESULTS
-1.0
-====
----- QUERY
-select ST_MaxM(ST_GeomFromText('linestring m (10 10 2, 20 20 4)'));
----- TYPES
-DOUBLE
----- RESULTS
-4.0
-====
----- QUERY
-select ST_MaxM(ST_GeomFromText('polygon m ((0 0 5, 8 0 4, 0 8 3, 0 0 5))'));
----- TYPES
-DOUBLE
----- RESULTS
-5.0
-====
----- QUERY
-select ST_MaxM(ST_MultiPoint('multipoint m((0 0 1), (2 2 3))'));
----- TYPES
-DOUBLE
----- RESULTS
-3.0
-====
----- QUERY
-select ST_CoordDim(ST_Point(0., 3.));
----- RESULTS
-2
-====
----- QUERY
-select ST_CoordDim(ST_PointZ(0., 3., 1));
----- RESULTS
-3
-====
----- QUERY
-select ST_CoordDim(ST_Point('point m(0. 3. 1)'));
----- RESULTS
-3
-====
----- QUERY
-select ST_CoordDim(ST_Point('pointzm (0. 3. 1. 2.)'));
----- RESULTS
-4
-====
----- QUERY
-select ST_CoordDim(ST_LineString(0.,0., 3.,4., 0.,4., 0.,0.));
----- RESULTS
-2
-====
----- QUERY
-select ST_CoordDim(ST_Polygon(1, 1, 1, 4, 4, 4, 4, 1));
----- RESULTS
-2
-====
----- QUERY
-select ST_CoordDim(ST_GeomFromText('linestring z (10 10 2, 20 20 4)'));
----- RESULTS
-3
-====
----- QUERY
-select ST_CoordDim(ST_GeomFromText('linestring m (10 10 2, 20 20 4)'));
----- RESULTS
-3
-====
----- QUERY
select ST_NumPoints(ST_Point('point empty'));
---- RESULTS
0
@@ -741,11 +429,6 @@ select ST_NumPoints(ST_Point(0., 3.));
1
====
---- QUERY
-select ST_NumPoints(ST_PointZ(0., 3., 1));
----- RESULTS
-1
-====
----- QUERY
select ST_NumPoints(ST_LineString(0.,0., 3.,4.));
---- RESULTS
2
@@ -2204,13 +1887,6 @@ BOOLEAN, BOOLEAN
true,false
====
---- QUERY
-select ST_CoordDim(ST_Point(0., 3.)), ST_CoordDim(ST_PointZ(0., 3., 1));
----- TYPES
-INT, INT
----- RESULTS
-2,3
-====
----- QUERY
select ST_Crosses(st_linestring(2,0, 2,3), ST_Polygon(1,1, 1,4, 4,4, 4,1)), ST_Crosses(st_linestring(8,7, 7,8), ST_Polygon(1,1, 1,4, 4,4, 4,1));
---- TYPES
BOOLEAN, BOOLEAN
@@ -2253,13 +1929,6 @@ BOOLEAN, BOOLEAN
true,false
====
---- QUERY
-select ST_Is3D(ST_Point(0., 3.)), ST_Is3D(ST_PointZ(0., 3., 1));
----- TYPES
-BOOLEAN, BOOLEAN
----- RESULTS
-false,true
-====
----- QUERY
select ST_Overlaps(st_polygon(2,0, 2,3, 3,0), ST_Polygon(1,1, 1,4, 4,4, 4,1)), ST_Overlaps(st_polygon(2,0, 2,1, 3,1), ST_Polygon(1,1, 1,4, 4,4, 4,1));
---- TYPES
BOOLEAN, BOOLEAN
@@ -2395,11 +2064,6 @@ select ST_AsText(ST_Intersection(ST_Polygon(1,1, 1,4, 4,4, 4,1), ST_LineString(1
'LINESTRING (1 3, 1 4)'
====
---- QUERY
-select ST_AsText(ST_Intersection(ST_Polygon(2,0, 2,3, 3,0), ST_Polygon(1,1, 4,1, 4,4, 1,4)));
----- RESULTS
-'POLYGON ((2 1, 2.6666666666666665 1, 2 3, 2 1))'
-====
----- QUERY
select ST_AsText(ST_Intersection(ST_Polygon(1,0, 3,0, 1,2), ST_Polygon(0,1, 2,1, 0,3)));
---- RESULTS
'POLYGON ((1 1, 2 1, 1 2, 1 1))'
@@ -2542,36 +2206,16 @@ select ST_AsText(ST_GeomFromGeoJson('{"type":"Point", "coordinates":[1.2, 2.4]}'
'POINT (1.2 2.4)'
====
---- QUERY
-select ST_AsJson(ST_GeomFromGeoJson('{"type":"Point", "coordinates":[1.2, 2.4]}'));
----- RESULTS
-'{"x":1.2,"y":2.4,"spatialReference":{"wkid":4326}}'
-====
----- QUERY
select ST_AsText(ST_GeomFromGeoJson('{"type":"LineString", "coordinates":[[1,2], [3,4]]}'));
---- RESULTS
'LINESTRING (1 2, 3 4)'
====
---- QUERY
-select ST_AsJson(ST_GeomFromJson('{"x":1.2,"y":2.4,"spatialReference":{"wkid":4326}}'));
----- RESULTS
-'{"x":1.2,"y":2.4,"spatialReference":{"wkid":4326}}'
-====
----- QUERY
select ST_AsJson(ST_GeomFromJson('{"x":1.2,"y":2.4,"spatialReference":{"wkid": 0}}'));
---- RESULTS
'{"x":1.2,"y":2.4}'
====
---- QUERY
-select ST_AsGeoJson(ST_GeomFromJson('{"x":1.2,"y":2.4,"spatialReference":{"wkid":4326}}'));
----- RESULTS
-'{"type":"Point","coordinates":[1.2,2.4],"crs":{"type":"name","properties":{"name":"EPSG:4326"}}}'
-====
----- QUERY
-select ST_AsGeoJson(ST_GeomFromJson('{"x":1.2,"y":2.4,"spatialReference":{"wkid": 0}}'));
----- RESULTS
-'{"type":"Point","coordinates":[1.2,2.4],"crs":null}'
-====
----- QUERY
select ST_AsText(ST_GeomFromGeoJson(ST_AsGeoJson(ST_Point(1.2, 2.4))));
---- RESULTS
'POINT (1.2 2.4)'
@@ -2677,41 +2321,6 @@ select ST_AsText(ST_InteriorRingN(ST_Polygon('polygon ((0 0, 8 0, 0 8, 0 0), (1
'LINESTRING (1 1, 1 5, 5 1, 1 1)'
=====
---- QUERY
-select ST_GeodesicLengthWGS84(ST_SetSRID(ST_LineString(0,80, 0.03, 80.04), 4326));
----- TYPES
-DOUBLE
----- RESULTS
-4503.988488226892
-====
----- QUERY
-select ST_GeodesicLengthWGS84(ST_SetSRID(ST_GeomFromText('MultiLineString((0 80, 0.03 80.04))'), 4326));
----- TYPES
-DOUBLE
----- RESULTS
-4503.988488226892
-====
----- QUERY
-select ST_GeodesicLengthWGS84(ST_SetSRID(ST_LineString(179.98,-80, -179.98, -80.03), 4326));
----- TYPES
-DOUBLE
----- RESULTS
-3438.190416575652
-====
----- QUERY
-select ST_GeodesicLengthWGS84(ST_SetSRID(ST_LineString(179.98,80, -179.98, 80.03), 4326));
----- TYPES
-DOUBLE
----- RESULTS
-3438.190416575652
-====
----- QUERY
-select ST_GeodesicLengthWGS84(ST_SetSRID(ST_LineString(179.98,-0.01, -179.98, 0.02), 4326));
----- TYPES
-DOUBLE
----- RESULTS
-5552.589421311623
-====
----- QUERY
select ST_AsText(ST_SetSRID(ST_GeomFromText('MultiLineString((0 80, 0.03 80.04))'), 4326));
---- RESULTS
'MULTILINESTRING ((0 80, 0.03 80.04))'
diff --git a/tests/query_test/test_geospatial_functions.py b/tests/query_test/test_geospatial_functions.py
index 9677d1062..3dee728f4 100644
--- a/tests/query_test/test_geospatial_functions.py
+++ b/tests/query_test/test_geospatial_functions.py
@@ -20,6 +20,7 @@ from tests.common.skip import SkipIfApacheHive
from tests.common.test_dimensions import create_single_exec_option_dimension
+@SkipIfApacheHive.feature_not_supported
class TestGeospatialFuctions(ImpalaTestSuite):
"""Tests the geospatial builtin functions"""
@@ -31,15 +32,27 @@ class TestGeospatialFuctions(ImpalaTestSuite):
cls.ImpalaTestMatrix.add_constraint(lambda v:
v.get_value('table_format').file_format == 'parquet')
- @SkipIfApacheHive.feature_not_supported
def test_esri_geospatial_functions(self, vector):
# tests generated from
# https://github.com/Esri/spatial-framework-for-hadoop/tree/master/hive/test
self.run_test_case('QueryTest/geospatial-esri', vector)
- # manual tests added
+
+ def test_esri_geospatial_functions_extra(self, vector):
+ # manually added tests
self.run_test_case('QueryTest/geospatial-esri-extra', vector)
- @SkipIfApacheHive.feature_not_supported
+ def test_esri_specific_overloads(self, vector):
+ # HIVE_ESRI-only overloads that are planned to be dropped in future.
+ self.run_test_case('QueryTest/geospatial-esri-specific-overloads', vector)
+
+ def test_esri_srid(self, vector):
+ # SRID-dependent tests
+ self.run_test_case('QueryTest/geospatial-esri-srid', vector)
+
+ def test_esri_high_dimension(self, vector):
+ # 3D/4D geometry tests (ST_Z, ST_M, ST_Is3D, etc.)
+ self.run_test_case('QueryTest/geospatial-esri-high-dimension', vector)
+
def test_esri_geospatial_planner(self, vector):
# These tests are not among planner tests because with default flags
# geospatial builtin functions are not loaded.