[geos-devel] [GEOS] #1042: Segfault on multipolygon
GEOS
geos-trac at osgeo.org
Sun Aug 16 22:56:51 PDT 2020
#1042: Segfault on multipolygon
------------------------+--------------------------
Reporter: stefgis | Owner: geos-devel@…
Type: defect | Status: new
Priority: minor | Milestone:
Component: Default | Version: 3.8.0
Severity: Unassigned | Keywords:
------------------------+--------------------------
A customer of us triggered a segfault (through postgis):
kernel: [3756240.108588] postgres[17471]: segfault at 0 ip
00007fc6a56acce7 sp 00007fffffca5090 error 4 in
libgeos-3.8.0.so[7fc6a5605000+1be000]
After some debugging this seems related to the way some of their polygons
are saved in a specific table:
GEOMETRYCOLLECTION(MULTIPOLYGON(((224480.183 573551.3,224490.982
573554.021,224493.322 573554.693,224492.601 573557.214,224487.439
573555.74,224486.357 573559.53,224478.47 573557.287,224480.183
573551.3))))
In combination with st_intersecs or st_buffer this leads to a segfault. We
can reproduce the issue with the following query:
SELECT link AS id FROM ybak."test_bit_libgeos" WHERE
ST_dimension(m1g1) IN (2) AND st_isvalid(m1g1)=true AND
ST_Intersects(ST_Buffer(ST_GeomFromText('POINT(224707.42286981
573643.1066404)'), 2), m1g1) ORDER BY
ST_Intersects(ST_Geomfromtext('POINT(224707.42286981 573643.1066404)'),
m1g1) DESC LIMIT 1;
--
Ticket URL: <https://trac.osgeo.org/geos/ticket/1042>
GEOS <http://trac.osgeo.org/geos>
GEOS (Geometry Engine - Open Source) is a C++ port of the Java Topology Suite (JTS).
More information about the geos-devel
mailing list