[postgis-tickets] [PostGIS] #3206: winnie crashing with topology ST_AddModeFace in C commit 9.3 w32 bit run

PostGIS trac at osgeo.org
Fri Jul 31 15:13:06 PDT 2015


#3206: winnie crashing with topology ST_AddModeFace in C commit 9.3 w32 bit run
-----------------------+---------------------------
  Reporter:  robe      |      Owner:  strk
      Type:  defect    |     Status:  new
  Priority:  blocker   |  Milestone:  PostGIS 2.2.0
 Component:  topology  |    Version:  trunk
Resolution:            |   Keywords:
-----------------------+---------------------------

Comment (by robe):

 strk I committed my code at r13866 and enabled topology testing on winnie.

 Debbie still seems to be passing topology tests fine.  On winnie I still
 have issues, but the syntax errors are gone and compiler warnings are
 gone.  Now what is left is this:


 {{{
 Running tests

  regress/legacy_validate .. ok
  regress/legacy_predicate .. ok
  regress/legacy_invalid .. ok
  regress/sqlmm .. ok
  regress/legacy_query .. ok
  regress/addnode .. ok
  regress/addedge .. ok
  regress/addface .. ok
  regress/addface2.5d .. ok
  regress/addtopogeometrycolumn .. ok
  regress/polygonize .. ok
  regress/st_addisoedge .. failed (diff expected obtained:
 /projects/postgis/tmp/2.2.0dev_pg9.4_geos3.5.0dev_gdal2.0w64/test_12_diff)
 -----------------------------------------------------------------------------
 --- regress/st_addisoedge_expected      2015-07-30 10:40:34 -0400
 +++
 /projects/postgis/tmp/2.2.0dev_pg9.4_geos3.5.0dev_gdal2.0w64/test_12_out
 2015-07-31 17:54:27 -0400
 @@ -29,5 +29,5 @@
  ERROR:  SQL/MM Spatial exception - not isolated node
  ERROR:  Closed edges would not be isolated, try ST_AddEdgeNewFaces
  ERROR:  SQL/MM Spatial exception - not isolated node
 -ERROR:  SQL/MM Spatial exception - geometry crosses edge 2
 +ERROR:  SQL/MM Spatial exception - geometry crosses edge 64d
  Topology 'tt' dropped
 -----------------------------------------------------------------------------
  regress/st_addisonode .. ok
  regress/st_addedgemodface .. failed (diff expected obtained:
 /projects/postgis/tmp/2.2.0dev_pg9.4_geos3.5.0dev_gdal2.0w64/test_14_diff)
 -----------------------------------------------------------------------------
 --- regress/st_addedgemodface_expected  2014-08-07 22:32:08 -0400
 +++
 /projects/postgis/tmp/2.2.0dev_pg9.4_geos3.5.0dev_gdal2.0w64/test_14_out
 2015-07-31 17:54:27 -0400
 @@ -13,10 +13,10 @@
  ERROR:  SQL/MM Spatial exception - curve not simple
  ERROR:  Invalid edge (no two distinct vertices exist)
  ERROR:  Invalid edge (no two distinct vertices exist)
 -ERROR:  SQL/MM Spatial exception - coincident edge 8
 -ERROR:  SQL/MM Spatial exception - geometry crosses edge 5
 -ERROR:  SQL/MM Spatial exception - geometry crosses edge 4
 -ERROR:  Spatial exception - geometry intersects edge 4
 +ERROR:  SQL/MM Spatial exception - coincident edge 64d
 +ERROR:  SQL/MM Spatial exception - geometry crosses edge 64d
 +ERROR:  SQL/MM Spatial exception - geometry crosses edge 64d
 +ERROR:  Spatial exception - geometry intersects edge 64d
  L1
  L2
  T1|E7|8|-19|0|10
 -----------------------------------------------------------------------------
  regress/st_addedgenewfaces .. failed (diff expected obtained:
 /projects/postgis/tmp/2.2.0dev_pg9.4_geos3.5.0dev_gdal2.0w64/test_15_diff)
 -----------------------------------------------------------------------------
 --- regress/st_addedgenewfaces_expected 2014-08-07 22:32:08 -0400
 +++
 /projects/postgis/tmp/2.2.0dev_pg9.4_geos3.5.0dev_gdal2.0w64/test_15_out
 2015-07-31 17:54:27 -0400
 @@ -13,10 +13,10 @@
  ERROR:  SQL/MM Spatial exception - curve not simple
  ERROR:  Invalid edge (no two distinct vertices exist)
  ERROR:  Invalid edge (no two distinct vertices exist)
 -ERROR:  SQL/MM Spatial exception - coincident edge 8
 -ERROR:  SQL/MM Spatial exception - geometry crosses edge 5
 -ERROR:  SQL/MM Spatial exception - geometry crosses edge 4
 -ERROR:  Spatial exception - geometry intersects edge 4
 +ERROR:  SQL/MM Spatial exception - coincident edge 64d
 +ERROR:  SQL/MM Spatial exception - geometry crosses edge 64d
 +ERROR:  SQL/MM Spatial exception - geometry crosses edge 64d
 +ERROR:  Spatial exception - geometry intersects edge 64d
  L1
  L2
  T1|E7|8|-19|0|11
 -----------------------------------------------------------------------------
  regress/st_changeedgegeom .. ok
  regress/st_createtopogeo .. ok
  regress/st_getfacegeometry .. ok
  regress/st_getfaceedges .. ok
  regress/st_modedgeheal .. ok
  regress/st_modedgesplit .. ok
  regress/st_newedgeheal .. ok
  regress/st_newedgessplit .. ok
  regress/st_remedgenewface .. ok
  regress/st_remedgemodface .. ok
  regress/st_simplify .. ok
  regress/topoelement .. ok
  regress/topoelementarray_agg .. ok
  regress/topogeo_addlinestring .. ok
  regress/topogeo_addpoint .. ok
  regress/topogeo_addpolygon .. ok
  regress/topogeometry_type .. ok
  regress/topojson .. ok
  regress/topologysummary .. ok
  regress/topo2.5d .. ok
  regress/totopogeom .. ok
  regress/droptopology .. ok
  regress/droptopogeometrycolumn .. ok
  regress/copytopology .. ok
  regress/createtopogeom .. ok
  regress/createtopology .. ok
  regress/gml .. ok
  regress/getnodebypoint .. ok
  regress/getedgebypoint .. ok
  regress/getfacebypoint .. ok
  regress/getringedges .. ok
  regress/gettopogeomelements .. ok
  regress/layertrigger .. ok
  regress/validatetopology .. ok
  uninstall .  /projects/postgis/branches/2.2/regress/00-regress-
 install/share/contrib/postgis/uninstall_topology.sql
   /projects/postgis/branches/2.2/regress/00-regress-
 install/share/contrib/postgis/uninstall_postgis.sql
 . ok (4336)

 Run tests: 50
 Failed: 3
 }}}


 I presume the 64d errors are additional places where PRI64d needs to be
 replaced (possibly not in appendInfoString).  I was hesitant to replace
 your PRId64 calls in anything but the postgresql appendInfoString calls.

--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/3206#comment:32>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.


More information about the postgis-tickets mailing list