[postgis-tickets] [PostGIS] #4726: Garden hang on ST_VoronoiLines

PostGIS trac at osgeo.org
Tue Jul 21 05:46:41 PDT 2020


#4726: Garden hang on ST_VoronoiLines
----------------------+---------------------------
  Reporter:  robe     |      Owner:  pramsey
      Type:  defect   |     Status:  new
  Priority:  blocker  |  Milestone:  PostGIS 3.1.0
 Component:  postgis  |    Version:  master
Resolution:           |   Keywords:
----------------------+---------------------------

Comment (by Algunenano):

 Can confirm it hangs in current GEOS master / HEAD.

 I've attached gdb to the process and it's doing stuff:
 {{{
 #0  0x00007fc3eacf126c in geos::triangulate::quadedge::Vertex::isCCW
 (this=<optimized out>, b=..., c=...) at
 ../../../include/geos/triangulate/quadedge/Vertex.h:226
 #1  geos::triangulate::quadedge::Vertex::rightOf (this=0x55bba48b9720,
 e=...) at Vertex.cpp:83
 #2  0x00007fc3eace807c in
 geos::triangulate::IncrementalDelaunayTriangulator::insertSite
 (this=<optimized out>, v=...) at IncrementalDelaunayTriangulator.cpp:90
 #3  0x00007fc3eace7e4b in
 geos::triangulate::IncrementalDelaunayTriangulator::insertSites
 (this=0x7ffe3cf96408, vertices=...) at
 IncrementalDelaunayTriangulator.cpp:40
 #4  0x00007fc3eace9f5d in geos::triangulate::VoronoiDiagramBuilder::create
 (this=0x7ffe3cf964b8) at VoronoiDiagramBuilder.cpp:93
 #5  0x00007fc3eacea45b in
 geos::triangulate::VoronoiDiagramBuilder::getDiagramEdges
 (this=0x7ffe3cf964b8, geomFact=...) at VoronoiDiagramBuilder.cpp:122
 #6  0x00007fc3eba9c83e in GEOSVoronoiDiagram_r::$_188::operator()
 (this=<optimized out>) at geos_ts_c.cpp:3261
 #7  execute<GEOSVoronoiDiagram_r::$_188,
 (decltype(nullptr))0>(GEOSContextHandle_HS*,
 GEOSVoronoiDiagram_r::$_188&&) (extHandle=0x55bba48b88b0, f=...) at
 geos_ts_c.cpp:379
 #8  GEOSVoronoiDiagram_r (extHandle=0x55bba48b88b0, g1=0x55bba48b6840,
 env=0x55bba48e6f40, tolerance=20.100000000000001, onlyEdges=1) at
 geos_ts_c.cpp:3253
 #9  0x00007fc3ebc02ecb in lwgeom_voronoi_diagram (g=<optimized out>,
 env=0x7ffe3cf965c0, tolerance=20.100000000000001,
 output_edges=-1534355264) at lwgeom_geos.c:1926
 #10 0x00007fc3ebb3267e in ST_Voronoi (fcinfo=0x55bba48fbb20) at
 lwgeom_geos.c:3465
 #11 0x000055bba3c126e1 in ExecInterpExpr (state=<optimized out>,
 econtext=<optimized out>, isnull=0x7ffe3cf9675f) at execExprInterp.c:625
 #12 0x000055bba3c45874 in ExecEvalExprSwitchContext (state=0x55bba48fba48,
 econtext=0x55bba48fb770, isNull=0x7ffe3cf9675f) at
 ../../../src/include/executor/executor.h:307
 [...]

 (gdb) c
 Continuing.
 ^C
 Program received signal SIGINT, Interrupt.
 geos::triangulate::quadedge::Vertex::isCCW (this=<optimized out>, b=...,
 c=...) at ../../../include/geos/triangulate/quadedge/Vertex.h:227
 227                    > (b.p.y - p.y) * (c.p.x - p.x);
 (gdb) bt
 #0  geos::triangulate::quadedge::Vertex::isCCW (this=<optimized out>,
 b=..., c=...) at ../../../include/geos/triangulate/quadedge/Vertex.h:227
 #1  geos::triangulate::quadedge::Vertex::rightOf (this=0x55bba48b9ee0,
 e=...) at Vertex.cpp:83
 #2  0x00007fc3eace807c in
 geos::triangulate::IncrementalDelaunayTriangulator::insertSite
 (this=<optimized out>, v=...) at IncrementalDelaunayTriangulator.cpp:90
 #3  0x00007fc3eace7e4b in
 geos::triangulate::IncrementalDelaunayTriangulator::insertSites
 (this=0x7ffe3cf96408, vertices=...) at
 IncrementalDelaunayTriangulator.cpp:40
 #4  0x00007fc3eace9f5d in geos::triangulate::VoronoiDiagramBuilder::create
 (this=0x7ffe3cf964b8) at VoronoiDiagramBuilder.cpp:93
 #5  0x00007fc3eacea45b in
 geos::triangulate::VoronoiDiagramBuilder::getDiagramEdges
 (this=0x7ffe3cf964b8, geomFact=...) at VoronoiDiagramBuilder.cpp:122
 #6  0x00007fc3eba9c83e in GEOSVoronoiDiagram_r::$_188::operator()
 (this=<optimized out>) at geos_ts_c.cpp:3261
 #7  execute<GEOSVoronoiDiagram_r::$_188,
 (decltype(nullptr))0>(GEOSContextHandle_HS*,
 GEOSVoronoiDiagram_r::$_188&&) (extHandle=0x55bba48b88b0, f=...) at
 geos_ts_c.cpp:379
 #8  GEOSVoronoiDiagram_r (extHandle=0x55bba48b88b0, g1=0x55bba48b6840,
 env=0x55bba48e6f40, tolerance=20.100000000000001, onlyEdges=1) at
 geos_ts_c.cpp:3253
 #9  0x00007fc3ebc02ecb in lwgeom_voronoi_diagram (g=<optimized out>,
 env=0x7ffe3cf965c0, tolerance=20.100000000000001,
 output_edges=-1534355264) at lwgeom_geos.c:1926
 #10 0x00007fc3ebb3267e in ST_Voronoi (fcinfo=0x55bba48fbb20) at
 lwgeom_geos.c:3465
 [...]
 }}}

-- 
Ticket URL: <https://trac.osgeo.org/postgis/ticket/4726#comment:1>
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