[postgis-tickets] [PostGIS] #5401: ST_Difference silently giving us wrong results

PostGIS trac at osgeo.org
Thu Jun 15 07:12:45 PDT 2023


#5401: ST_Difference silently giving us wrong results
--------------------------------+---------------------------
  Reporter:  Lars Aksel Opsahl  |      Owner:  pramsey
      Type:  defect             |     Status:  new
  Priority:  medium             |  Milestone:  PostGIS 3.3.4
 Component:  postgis            |    Version:  3.3.x
Resolution:                     |   Keywords:
--------------------------------+---------------------------
Comment (by strk):

 I've installed GEOS-3.10.1 and enabled debug, here's the interesting log,
 with input that I can attach later, if needed:
 {{{
 Trying with OverlayNGRobust
 OverlayNGRobust: IllegalArgumentException: Argument must be Polygonal or
 LinearRing
 Trying with original input.
 Original exception: TopologyException: no outgoing dirEdge found at
 10.907027451935953 64.968978126148144
 Trying with Common Bits Remover (CBR)
 CBR: TopologyException: no outgoing dirEdge found at 0.90702745193595213
 0.96897812614814161
 Trying with snapping
 Computed snap tolerance: 7.5270739785750608223e-11
 Computed common bits: 10 64
 ...
 }}}

 It's interesting to note that IllegalArgumentException is NOT interrupting
 the operations, but it's rather considered as a triggering event to move
 to further attempts, which is probably WRONG. That's the link with
 https://github.com/libgeos/geos/issues/797 I had in mind, although I do
 realize that one is about mixed-typed collections really.
-- 
Ticket URL: <https://trac.osgeo.org/postgis/ticket/5401#comment:16>
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