Opened 3 years ago

Closed 3 years ago

#4795 closed defect (fixed)

Fix tests on PostGIS 3.0 so they pass for GEOS 3.9 and GDAL 3.2.0

Reported by: robe Owned by: robe
Priority: medium Milestone: PostGIS 3.0.3
Component: postgis Version: 2.5.x -- EOL
Keywords: Cc:

Description

inGW-W64 project) 8.1.0, 64-bit
  Postgis 3.0.3 - r3.1.0alpha2-164-gd2d5c9f98 - 2020-11-19 04:27:04
  scripts 3.0.3 3.1.0alpha2-164-gd2d5c9f98
  GEOS: 3.9.0-CAPI-1.14.0
  PROJ: 7.2.0

Running tests

 ../loader/Point .............. ok
 ../loader/PointM .............. ok
 ../loader/PointZ .............. ok
 ../loader/MultiPoint .............. ok
 ../loader/MultiPointM .............. ok
 ../loader/MultiPointZ .............. ok
 ../loader/Arc .............. ok
 ../loader/ArcM .............. ok
 ../loader/ArcZ .............. ok
 ../loader/Polygon .............. ok
 ../loader/PolygonM .............. ok
 ../loader/PolygonZ .............. ok
 ../loader/TSTPolygon ......... ok
 ../loader/TSIPolygon ......... ok
 ../loader/TSTIPolygon ......... ok
 ../loader/PointWithSchema ..... ok
 ../loader/NoTransPoint ......... ok
 ../loader/NotReallyMultiPoint ......... ok
 ../loader/MultiToSinglePoint ......... ok
 ../loader/ReprojectPts ........ ok
 ../loader/ReprojectPtsD ..... ok
 ../loader/ReprojectPtsGeog ........ ok
 ../loader/ReprojectPtsGeogD ........ ok
 ../loader/Latin1 .... ok
 ../loader/Latin1-implicit .... ok
 ../loader/mfile .... ok
 ../dumper/literalsrid ....... ok
 ../dumper/realtable ....... ok
 ../dumper/nullsintable ....... ok
 ../dumper/null3d ..... ok
 affine .. ok
 bestsrid .. ok
 binary .. ok
 boundary .. ok
 chaikin .. ok
 filterm .. ok
 cluster .. ok
 concave_hull .. ok
 ctors .. ok
 curvetoline .. ok
 dump .. ok
 dumppoints .. ok
 empty .. ok
 estimatedextent .. ok
 forcecurve .. ok
 geography .. ok
 geometric_median .. ok
 hausdorff .. ok
 in_geohash .. ok
 in_gml .. ok
 in_kml .. ok
 in_encodedpolyline .. ok
 iscollection .. ok
 legacy .. ok
 long_xact .. ok
 lwgeom_regress .. ok
 measures .. ok
 minimum_bounding_circle .. ok
 normalize .. ok
 operators .. ok
 orientation .. ok
 out_geometry .. ok
 out_geography .. ok
 polygonize .. ok
 polyhedralsurface .. ok
 postgis_type_name .. ok
 quantize_coordinates .. ok
 regress .. ok
 regress_bdpoly .. ok
 regress_buffer_params .. ok
 regress_gist_index_nd .. ok
 regress_index .. ok
 regress_index_nulls .. ok
 regress_management .. ok
 regress_selectivity .. ok
 regress_lrs .. ok
 regress_ogc .. failed (diff expected obtained: /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_77_diff)
-----------------------------------------------------------------------------
--- regress_ogc_expected        2020-11-18 23:03:44.061099200 -0500
+++ /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_77_out        2020-11-18 23:32:53.029233400 -0500
@@ -89,9 +89,9 @@
 isvalid|f
 isvalid|t
 intersection|POINT(0 0)
-difference|MULTILINESTRING((0 10,0 2),(0 -2,0 -10))
+difference|MULTILINESTRING((0 -2,0 -10),(0 10,0 2))
 boundary|MULTILINESTRING((0 0,0 10,10 10,10 0,0 0),(2 2,2 4,4 4,4 2,2 2))
-symdifference|GEOMETRYCOLLECTION(LINESTRING(2 2,4 4),LINESTRING(10 10,20 20),POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,2 4,2 2,4 2,4 4)))
+symdifference|GEOMETRYCOLLECTION(POLYGON((0 10,10 10,10 0,0 0,0 10),(2 4,2 2,4 2,4 4,2 4)),LINESTRING(2 2,4 4),LINESTRING(10 10,20 20))
 issimple|t
 equals|t
 pointonsurface|t
@@ -107,7 +107,7 @@
 intersects|f
 ST_GeometryN|LINESTRING(0 0,1 1)
 ST_NumGeometries|1
-ST_Union1|POLYGON((0 0,0 1,0.5 1,0.5 1.5,1.5 1.5,1.5 0.5,1 0.5,1 0,0 0))
+ST_Union1|POLYGON((0 1,0.5 1,0.5 1.5,1.5 1.5,1.5 0.5,1 0.5,1 0,0 0,0 1))
 ST_EndPoint1|POINT(2 2)
 ST_PointN1|POINT(1 1)
 ST_PointN2|POINT(2 2)
-----------------------------------------------------------------------------
 regress_ogc_cover .. ok
 regress_ogc_prep .. ok
 regress_proj .. ok
 relate .. ok
 remove_repeated_points .. ok
 removepoint .. ok
 reverse .. ok
 setpoint .. ok
 simplify .. ok
 simplifyvw .. ok
 size .. ok
 snaptogrid .. ok
 split .. failed (diff expected obtained: /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_90_diff)
-----------------------------------------------------------------------------
--- split_expected      2020-11-18 23:03:44.064098300 -0500
+++ /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_90_out        2020-11-18 23:32:58.279234200 -0500
@@ -10,17 +10,17 @@
 7|SRID=10;GEOMETRYCOLLECTION(LINESTRING(0 0,5 0),LINESTRING(5 0,10 0,10 10,5 10),LINESTRING(5 10,0 10,0 20,5 20),LINESTRING(5 20,10 20))
 ERROR:  Splitter line has linear intersection with input
 ERROR:  Splitter line has linear intersection with input
-20|SRID=12;GEOMETRYCOLLECTION(POLYGON((5 0,0 0,0 10,5 10,5 0)),POLYGON((5 10,10 10,10 0,5 0,5 10)))
-21|SRID=12;GEOMETRYCOLLECTION(POLYGON((5 0,0 0,0 10,5 10,5 8,2 8,2 2,5 2,5 0)),POLYGON((5 10,10 10,10 0,5 0,5 2,8 2,8 8,5 8,5 10)))
-22|SRID=12;GEOMETRYCOLLECTION(POLYGON((2 0,0 0,0 10,2 10,2 0)),POLYGON((2 10,10 10,10 0,2 0,2 10),(5 2,8 2,8 8,5 8,5 2)))
-23|SRID=12;GEOMETRYCOLLECTION(POLYGON((5 0,0 0,0 10,5 10,5 8,2 8,2 6,5 6,5 4,2 4,2 2,5 2,5 0)),POLYGON((5 10,10 10,10 0,5 0,5 2,8 2,8 4,5 4,5 6,8 6,8 8,5 8,5 10)))
+20|SRID=12;GEOMETRYCOLLECTION(POLYGON((0 0,0 10,5 10,5 0,0 0)),POLYGON((5 0,5 10,10 10,10 0,5 0)))
+21|SRID=12;GEOMETRYCOLLECTION(POLYGON((0 0,0 10,5 10,5 8,2 8,2 2,5 2,5 0,0 0)),POLYGON((5 0,5 2,8 2,8 8,5 8,5 10,10 10,10 0,5 0)))
+22|SRID=12;GEOMETRYCOLLECTION(POLYGON((0 0,0 10,2 10,2 0,0 0)),POLYGON((2 0,2 10,10 10,10 0,2 0),(5 2,8 2,8 8,5 8,5 2)))
+23|SRID=12;GEOMETRYCOLLECTION(POLYGON((0 0,0 10,5 10,5 8,2 8,2 6,5 6,5 4,2 4,2 2,5 2,5 0,0 0)),POLYGON((5 0,5 2,8 2,8 4,5 4,5 6,8 6,8 8,5 8,5 10,10 10,10 0,5 0)))
 30|SRID=10;GEOMETRYCOLLECTION(LINESTRING(0 0,5 0),LINESTRING(5 0,10 0),LINESTRING(0 5,5 5),LINESTRING(5 5,10 5))
 31|SRID=10;GEOMETRYCOLLECTION(LINESTRING(0 0,5 0),LINESTRING(5 0,10 0),LINESTRING(0 5,10 5))
 32|SRID=10;GEOMETRYCOLLECTION(LINESTRING(0 0,10 0),LINESTRING(0 5,10 5))
 40|SRID=10;GEOMETRYCOLLECTION(LINESTRING(0 0,5 0),LINESTRING(5 0,10 0),LINESTRING(0 5,10 5))
-50|SRID=12;GEOMETRYCOLLECTION(POLYGON((5 0,0 0,0 10,5 10,5 8,2 8,2 6,5 6,5 4,2 4,2 2,5 2,5 0)),POLYGON((5 10,10 10,10 0,5 0,5 2,8 2,8 4,5 4,5 6,8 6,8 8,5 8,5 10)),POLYGON((20 0,20 10,30 10,30 0,20 0),(25 5,28 5,25 8,25 5)))
-60|SRID=12;GEOMETRYCOLLECTION(POLYGON((5 0,0 0,0 10,5 10,5 8,2 8,2 6,5 6,5 4,2 4,2 2,5 2,5 0)),POLYGON((5 10,10 10,10 0,5 0,5 2,8 2,8 4,5 4,5 6,8 6,8 8,5 8,5 10)),POLYGON((20 0,20 10,30 10,30 0,20 0),(25 5,28 5,25 8,25 5)),LINESTRING(0 0,5 0),LINESTRING(5 0,10 0),LINESTRING(0 5,5 5),LINESTRING(5 5,10 5))
-70|SRID=11;GEOMETRYCOLLECTION(LINESTRING(1691983.26 4874594.81 312.24,1691984.86 4874593.69 312.24,1691982 4874589.60428571 312.24),LINESTRING(1691982 4874589.60428571 312.24,1691981.30515131 4874588.61164472 312.24),LINESTRING(1691981.30515131 4874588.61164472 312.24,1691979.54 4874586.09 312.24,1691978.03 4874587.16 298.36))
+50|SRID=12;GEOMETRYCOLLECTION(POLYGON((0 0,0 10,5 10,5 8,2 8,2 6,5 6,5 4,2 4,2 2,5 2,5 0,0 0)),POLYGON((5 0,5 2,8 2,8 4,5 4,5 6,8 6,8 8,5 8,5 10,10 10,10 0,5 0)),POLYGON((20 0,20 10,30 10,30 0,20 0),(25 5,28 5,25 8,25 5)))
+60|SRID=12;GEOMETRYCOLLECTION(POLYGON((0 0,0 10,5 10,5 8,2 8,2 6,5 6,5 4,2 4,2 2,5 2,5 0,0 0)),POLYGON((5 0,5 2,8 2,8 4,5 4,5 6,8 6,8 8,5 8,5 10,10 10,10 0,5 0)),POLYGON((20 0,20 10,30 10,30 0,20 0),(25 5,28 5,25 8,25 5)),LINESTRING(0 0,5 0),LINESTRING(5 0,10 0),LINESTRING(0 5,5 5),LINESTRING(5 5,10 5))
+70|SRID=11;GEOMETRYCOLLECTION(LINESTRING(1691981.30515131 4874588.61164472 312.24,1691979.54 4874586.09 312.24,1691978.03 4874587.16 298.36),LINESTRING(1691982 4874589.60428571 312.24,1691981.30515131 4874588.61164472 312.24),LINESTRING(1691983.26 4874594.81 312.24,1691984.86 4874593.69 312.24,1691982 4874589.60428571 312.24))
 80|GEOMETRYCOLLECTION(LINESTRING(0 1,0 1,0 1))
 81|GEOMETRYCOLLECTION(LINESTRING(0 1,0 1))
 82|t
-----------------------------------------------------------------------------
 sql-mm-serialize .. ok
 sql-mm-circularstring .. ok
 sql-mm-compoundcurve .. ok
 sql-mm-curvepoly .. ok
 sql-mm-general .. ok
 sql-mm-multicurve .. ok
 sql-mm-multisurface .. ok
 swapordinates .. ok
 summary .. ok
 temporal .. ok
 temporal_knn .. ok
 tickets .. failed (diff expected obtained: /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_102_diff)
-----------------------------------------------------------------------------
--- tickets_expected    2020-11-18 23:03:44.070099600 -0500
+++ /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_102_out       2020-11-18 23:33:07.977233700 -0500
@@ -1,4 +1,4 @@
-#2|POLYGON((1 1,1 2,2 2,3 2,3 1,2 1,1 1))
+#2|POLYGON((1 2,2 2,3 2,3 1,2 1,1 1,1 2))
 #11|0
 #21|SRID=31293;MULTIPOINTM(6220.13 5337367.145 4566)
 t
@@ -128,7 +128,7 @@
 #723|f
 #804|<gml:Point srsName="urn:ogc:def:crs:EPSG::4326"><gml:pos srsDimension="2">0 0</gml:pos></gml:Point>
 #845|t
-#834|GEOMETRYCOLLECTION(POINT(0 0 5),LINESTRING(10 10 5,10 0 5))
+#834|GEOMETRYCOLLECTION(LINESTRING(10 10,10 0),POINT(0 0))
 #884|1|f
 #884|2|t
 #938|
@@ -236,7 +236,7 @@
 #2110.3|t
 #2145|6792004
 #2232|M 0 0 l 0 0 1 0 0 0 1 0 0 0
-#2307|MULTIPOLYGON(((-41.1932 -7.3257,-41.1616 -7.3257,-41.1569 -7.3257,-41.1569 -7.3483,-41.1932 -7.3483,-41.1932 -7.3257),(-41.1616 -7.3257,-41.1879 -7.3257,-41.1879 -7.3425,-41.1616 -7.3425,-41.1616 -7.3257)))
+#2307|MULTIPOLYGON(((-41.1569 -7.3257,-41.1569 -7.3483,-41.1932 -7.3483,-41.1932 -7.3257,-41.1616 -7.3257,-41.1569 -7.3257),(-41.1879 -7.3257,-41.1879 -7.3425,-41.1616 -7.3425,-41.1616 -7.3257,-41.1879 -7.3257)))
 #2409|GeometryCollection[B] with 2 elements:
   MultiSurface[] with 2 elements:
     Polygon[] with 1 ring:
@@ -252,7 +252,7 @@
 #2412|LINESTRING(0 0,10 0,20 0)
 #2420.1|LINESTRING(0 0,10 0,10 10,0 10,0 0)
 #2420.2|LINESTRING(0 0,10 0,10 10,0 10)
-#2423|POLYGON((-10 0,-9.2388 3.82683,-7.07107 7.07107,-3.82683 9.2388,0 10,3.82683 9.2388,7.07107 7.07107,9.2388 3.82683,10 0,-10 0))
+#2423|POLYGON((-9.80785 1.9509,-8.3147 5.5557,-5.5557 8.3147,-1.9509 9.80785,1.9509 9.80785,5.5557 8.3147,8.3147 5.5557,9.80785 1.9509,10 0,-10 0,-9.80785 1.9509))
 #2424|MULTILINESTRING((0 0,10 0,24 3,30 10))
 #2427|POINT(-1 0)
 #2168|5340.76237395|5340.76237395|0
-----------------------------------------------------------------------------
 twkb .. ok
 typmod .. ok
 wkb .. ok
 wkt .. ok
 wmsservers .. ok
 offsetcurve .. ok
 relatematch .. ok
 isvaliddetail .. ok
 sharedpaths .. ok
 snap .. ok
 node .. ok
 unaryunion .. failed (diff expected obtained: /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_114_diff)
-----------------------------------------------------------------------------
--- unaryunion_expected 2020-11-18 23:03:44.074099100 -0500
+++ /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_114_out       2020-11-18 23:33:28.892950700 -0500
@@ -1,3 +1,3 @@
-1|MULTILINESTRING((0 0,5 0),(5 0,10 0),(5 -5,5 0),(5 0,5 5))
-2|POLYGON((10 5,10 0,0 0,0 10,5 10,5 15,15 15,15 5,10 5))
-3|GEOMETRYCOLLECTION(POINT(-5 4),LINESTRING(2 -10,2 0),LINESTRING(2 10,2 20),POLYGON((10 5,10 0,2 0,0 0,0 10,2 10,5 10,5 15,15 15,15 5,10 5)))
+1|MULTILINESTRING((0 0,5 0),(5 -5,5 0),(5 0,5 5),(5 0,10 0))
+2|POLYGON((0 10,5 10,5 15,15 15,15 5,10 5,10 0,0 0,0 10))
+3|GEOMETRYCOLLECTION(POINT(-5 4),POLYGON((0 0,0 10,2 10,5 10,5 15,15 15,15 5,10 5,10 0,2 0,0 0)),LINESTRING(2 -10,2 0),LINESTRING(2 10,2 20))
-----------------------------------------------------------------------------
 clean .. failed (diff expected obtained: /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_115_diff)
-----------------------------------------------------------------------------
--- clean_expected      2020-11-18 23:03:44.048101400 -0500
+++ /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_115_out       2020-11-18 23:33:29.216949900 -0500
@@ -27,5 +27,5 @@
 RT|16.4|t|t|f
 RT|17.1|t|t|f
 #1719.1|POINT(0 0)
-#1719.2|GEOMETRYCOLLECTION(POINT(0 0),MULTIPOINT(3 4,5 2),POINT(4 4),MULTIPOLYGON(((0 0,5 5,10 0,0 0)),((5 5,0 10,10 10,5 5))))
+#1719.2|GEOMETRYCOLLECTION(POINT(0 0),MULTIPOINT(3 4,5 2),POINT(4 4),MULTIPOLYGON(((0 10,10 10,5 5,0 10)),((10 0,0 0,5 5,10 0))))
 #1719.3|MULTIPOINT(3 4,5 2)
-----------------------------------------------------------------------------
 relate_bnr .. ok
 delaunaytriangles .. ok
 clipbybox2d .. ok
 subdivide .. failed (diff expected obtained: /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_119_diff)
-----------------------------------------------------------------------------
--- subdivide_expected  2020-11-18 23:03:44.068098300 -0500
+++ /projects/postgis/tmp/3.1.0dev_pg13_geos3.9_gdal3.2.0w64/test_119_out       2020-11-18 23:33:34.422955600 -0500
@@ -4,7 +4,7 @@
 ERROR:  lwgeom_subdivide: cannot subdivide to fewer than 5 vertices per output
 #3522|POINT(1 1)
 #3744|1600000000000000
-4|29321996468.6|29321996468.6|1857|256
+4|29321996468.6|29321996468.6|1856|256
 #4211|0.00008316000
 #4217|0.00002463668
 #4301|0.00213614552
-----------------------------------------------------------------------------
 voronoi .. ok
 regress_brin_index .. ok
 regress_brin_index_3d .. ok
 regress_brin_index_geography .. ok
 minimum_clearance .. ok
 oriented_envelope .. ok
 point_coordinates .. ok
 out_geojson .. ok
 frechet .. ok
 geos38 .. ok
 in_geojson .. ok
 regress_spgist_index_2d .. ok
 regress_spgist_index_3d .. ok
 regress_spgist_index_nd .. ok
 mvt .. ok
 mvt_jsonb .. ok
 geobuf .. ok
 uninstall .  /projects/postgis/postgis-git/regress/00-regress-install/share/contrib/postgis/uninstall_postgis.sql
. ok (4832)

Run tests: 137
Failed: 6
make[2]: *** [Makefile:231: check] Error 6
make[2]: Leaving directory '/projects/postgis/postgis-git/regress/core'
make[1]: *** [Makefile:47: check-regress] Error 2
make[1]: Leaving directory '/projects/postgis/postgis-git/regress'
make: *** [GNUmakefile:20: check-regress] Error 1

I've fixed the cu_geos one already but I guess the rounding logic in 3.1 changed so I couldn't do a direct copy. will commit soon

Change History (4)

comment:1 by Regina Obe <lr@…>, 3 years ago

In b880805/git:

Prep for release 3.0.3 and fix some GEOS 3.9 tests references #4795

comment:2 by robe, 3 years ago

Summary: Fix tests on PostGIS 3.0 so they pass for GEOS 3.9Fix tests on PostGIS 3.0 so they pass for GEOS 3.9 and GDAL 3.2.0

Also saw failure on rt_gdal_warp postgres test when testing against GDAL 3.2.0 released. backporting change from 3.1.0 to 3.0.3 to fix.

comment:3 by Regina Obe <lr@…>, 3 years ago

In be6ac75/git:

Fix tests so also works against GDAL 3.2.0. References #4795 for PostGIS 3.0.3

comment:4 by Regina Obe <lr@…>, 3 years ago

Resolution: fixed
Status: assignedclosed

In 1fcca87/git:

Fix for topology to pass for GEOS 3.9 as well. Closes #4795 for PostGIS 3.0.3

Note: See TracTickets for help on using tickets.