#997: ST_Union performance degradation from GEOS 3.6.x -> 3.7.x -------------------------+--------------------------- Reporter: greenlaw | Owner: geos-devel@… Type: defect | Status: new Priority: major | Milestone: Component: Default | Version: 3.7.0 Severity: Significant | Resolution: Keywords: union | -------------------------+---------------------------
Comment (by greenlaw): Sorry, was not clear about the query grouping. It's been a few years since I wrote this code so it's not exactly fresh in my mind, but I believe what I was trying to accomplish is merging adjacent polygons that have matching attributes. I'm applying the buffer first in order to ensure close-by polygons are union'd even if they don't touch. Looks like I was compiling with `-O2 -Os`, so I've changed that to `-O3` and ran your query (using 3.7.3 for this test), which ran in ~168 sec (guess my docker instance inside a VM on my laptop is not quite as fast as your machine :). So yes looks like a normal Union works in reasonable time. {{{ explain analyze select st_npoints(st_union(st_buffer(wkb_geometry,100))) from nws_haz_hang_201910 ; QUERY PLAN ----------------------------------------------------------------------------------------------------------------------- Aggregate (cost=10.15..10.19 rows=1 width=32) (actual time=168404.120..168404.121 rows=1 loops=1) -> Seq Scan on nws_haz_hang_201910 (cost=0.00..10.10 rows=10 width=32) (actual time=0.006..0.041 rows=21 loops=1) Planning time: 0.055 ms Execution time: 168407.313 ms }}} -- Ticket URL: <https://trac.osgeo.org/geos/ticket/997#comment:4> GEOS <http://trac.osgeo.org/geos> GEOS (Geometry Engine - Open Source) is a C++ port of the Java Topology Suite (JTS).
_______________________________________________ geos-devel mailing list geos-devel@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/geos-devel