[postgis-tickets] [PostGIS] #4684: concurrent topology construction routine may result in invalid topology
PostGIS
trac at osgeo.org
Sun May 24 00:48:36 PDT 2020
#4684: concurrent topology construction routine may result in invalid topology
-----------------------+-------------------
Reporter: laopsahl | Owner: strk
Type: defect | Status: new
Priority: medium | Milestone:
Component: topology | Version: 3.0.x
Resolution: | Keywords:
-----------------------+-------------------
Comment (by laopsahl):
I have been testing the pessimistic approach using this guide line from
Sandro
EVERY FACE whos MBR intersects the input line,
EVERY EDGE having any of those faces on its right or left side,
EVERY ISOLATED NODE within tolerance distance from the input line ,
On this branch [https://github.com/larsop/resolve-overlap-and-
gap/tree/trac_osgeo_org_postgis_ticket_4684] and what ever I tried I ended
up with st_getFaceGeometry that was null.
Here I [https://github.com/larsop/resolve-overlap-and-
gap/commit/7d71dbe9a71f099d2c4a8ec116ba49f7e749dcfb] tested with row-level
and no change in blocking area and we get null geometry and it seems to
increase with the number of parallel threads.
Here I [https://github.com/larsop/resolve-overlap-and-
gap/commit/8ef48c02587c5aff0f60e4a05339ca82619f9446] extend the blocking
area and I also did row level lock and that seems to generate less errors,
but I still get cases where st_getFaceGeometry is null, but fewer.
It seems like more deadlocks are increasing the cases off null geometries
from st_getFaceGeometry.
I will do some more checking around deadlocks and test rollback when that
happens
--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/4684#comment:9>
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