Opened 2 years ago

Closed 2 years ago

Last modified 2 years ago

#5136 closed defect (fixed)

failures on raster tests - some ci bots running GDAL 3.2

Reported by: robe Owned by: robe
Priority: blocker Milestone: PostGIS 3.3.0
Component: raster Version: master
Keywords: Cc:

Description

Seems since

[494ce4273c644fd0cd757dd0b64e41b0505f15a9/git]

22:20:43   Test: test_raster_surface ...FAILED
22:20:43     1. cu_raster_geometry.c:325  - CU_ASSERT_DOUBLE_EQUAL(lwgeom_area(gobserved),lwgeom_area(gexpected),FLT_EPSILON)
22:20:43     2. cu_raster_geometry.c:339  - CU_ASSERT_DOUBLE_EQUAL(lwgeom_area(gobserved),lwgeom_area(gexpected),FLT_EPSILON)

this is running against

06:39:53   GEOS config:          /var/lib/jenkins/workspace/geos/rel-3.11w64/bin/geos-config
06:39:53   GEOS version:         3.11.0dev
06:39:53   GDAL config:          /var/lib/jenkins/workspace/gdal/rel-3.2w64/bin/gdal-config
06:39:53   GDAL version:         3.2.3
06:39:53   SFCGAL config:        /usr/bin/sfcgal-config
06:39:53   SFCGAL version:       1.3.8
06:39:53   PostgreSQL config:    /var/lib/jenkins/workspace/pg/rel/pg15w64/bin/pg_config
06:39:53   PostgreSQL version:   PostgreSQL 15devel
06:39:53   PROJ4 version:        72
06:39:53   Libxml2 config:       /usr/bin/xml2-config
06:39:53   Libxml2 version:      2.9.13
06:39:53   JSON-C support:       yes
06:39:53   protobuf support:     yes
06:39:53   protobuf-c version:   1003003
06:39:53   PCRE support:         not found
06:39:53   Perl:                 /usr/bin/perl

I'm going to first try with a newer GDAL to confirm if it's just an issue with old GDAL.

Change History (10)

comment:1 by robe, 2 years ago

Okay GDAL 3.4 branch seems okay. I wonder if this is worth even fixing.

comment:2 by robe, 2 years ago

Okay evidentally GH Actions is testing on GDAL 3.1 and it works there, odd it doesn't work on 3.2 or perhaps something even more specific with the compile. I guess it's worth fixing the test to be less sensitive.

comment:3 by robe, 2 years ago

I've switched debbie to testing against GDAL 3.4 until I have time to review the test and patch it for 3.2

comment:4 by kalenik, 2 years ago

I tested with 3.2.2 on Ubuntu and it also failed for me. cu_raster_geometry.c:325 — failed with 7 area observed vs 16 expected so can't be fixed by tweaking epsilon. I can add makevalid back enabled for GDAL < 3.4 but leaning toward reverting this change at all.

comment:5 by robe, 2 years ago

hmm well it's odd it works on GDAL 3.1. I'd rather just change that test than revert or put any < anything GDAL on it.

comment:6 by robe, 2 years ago

Summary: debbie failing on raster testfailures on raster tests - some ci bots running GDAL 3.2

I just renabled the berrie bots.

berrie64 and berrie are both failing with same error and they are both running GDAL 3.2.2 on debian with gdal installed from packages. I'm going to test with lower GDAL besides 3.1. At a glance 3.1 seemed fine, so this could just be an issue with GDAL 3.2s

-------------- Dependencies -------------- 
16:44:44   GEOS config:          /home/jenkins/workspace/geos/rel-3.11.0/bin/geos-config
16:44:44   GEOS version:         3.11.0dev
16:44:44   GDAL config:          /usr/bin/gdal-config
16:44:44   GDAL version:         3.2.2
16:44:44   PostgreSQL config:    /home/jenkins/workspace/pg/label/berrie64/rel/pg14w64/bin/pg_config
16:44:44   PostgreSQL version:   PostgreSQL 14.1
16:44:44   PROJ4 version:        72
16:44:44   Libxml2 config:       /usr/bin/xml2-config
16:44:44   Libxml2 version:      2.9.10
16:44:44   JSON-C support:       yes
16:44:44   protobuf support:     yes
16:44:44   protobuf-c version:   1003003
16:44:44   PCRE support:         Version 1
16:44:44   Perl:                 /usr/bin/perl
16:44:44 
16:51:09   Test: test_raster_surface ...FAILED
16:51:09     1. cu_raster_geometry.c:325  - CU_ASSERT_DOUBLE_EQUAL(lwgeom_area(gobserved),lwgeom_area(gexpected),FLT_EPSILON)
16:51:09     2. cu_raster_geometry.c:339  - CU_ASSERT_DOUBLE_EQUAL(lwgeom_area(gobserved),lwgeom_area(gexpected),FLT_EPSILON)

Note to self, have to change berrie to fail on first failure instead of going on to garden tests, as the green is misleading on that one.

comment:7 by robe, 2 years ago

Okay I tested locally on GDAL 3.2.3 and also get this error:

 ./raster/test/regress/rt_polygon .. failed (diff expected obtained: /projects/postgis/tmp/3.3.0dev_pg11_geos3.8_gdal3.2.3w64/test_259_diff)
-----------------------------------------------------------------------------
--- ./raster/test/regress/rt_polygon_expected   2022-04-20 11:07:12.099094700 -0400
+++ /projects/postgis/tmp/3.3.0dev_pg11_geos3.8_gdal3.2.3w64/test_259_out      2022-05-02 17:15:21.809989200 -0400
@@ -1,7 +1,7 @@
 t
 t
 t
-t
-t
+ERROR:  GEOSEquals: TopologyException: side location conflict at 2 -2
+ERROR:  GEOSEquals: TopologyException: side location conflict at 2 -2
 t
 t
-----------------------------------------------------------------------------

I feel like since we said it may not be valid maybe just run a valid check on these. I still need to run GDAL 3.1, but I suspect that passes fine since GHA is not complaining and is running GDAL 3.1 for some runs.

comment:8 by robe, 2 years ago

I guess this change affects both ST_DumpAsPolygons and ST_Polygon, so NEWS note needs amendment and also docs.

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

Resolution: fixed
Status: newclosed

In 6ba156f5/git:

CHANGES:
Closes #5136
Change cunit tests that fail on GDAL 3.2 to do perimeter test instead of
area test
Change postgresql tests that fail on GDAL 3.2 to do ST_MakeValid before
testing

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

In fbf207f/git:

Note about raster ST_Polygon no longer simplified. References #5136

Note: See TracTickets for help on using tickets.