<p dir="ltr"></p>
<p dir="ltr">On 7 Oct 2016 5:59 AM, "Even Rouault" <<a href="mailto:even.rouault@spatialys.com">even.rouault@spatialys.com</a>> wrote:<br>
><br>
> Le samedi 17 septembre 2016 00:00:55, Jeff McKenna a écrit :<br>
> > On 2016-09-16 3:53 PM, Even Rouault wrote:<br>
> > > One of my hypothesis is some bad interaction with the "connection pool".<br>
> > > Could you (or anyone) open the attribute table before doing the edits,and<br>
> > > do the edits and commit them no more than 60 seconds afterwards ? I'm<br>
> > > not sure but this might perhaps also require the shapefile to be big<br>
> > > enough (several thousands of features).<br>
> ><br>
> > Here was my next test:<br>
> ><br>
> > - download OSM land polygons for the world, unsplit:<br>
> > <a href="http://data.openstreetmapdata.com/land-polygons-complete-4326.zip">http://data.openstreetmapdata.com/land-polygons-complete-4326.zip</a><br>
> > 424MB   568,635 features  <--- big test!<br>
> ><br>
> > - add shapefile to QGIS 2.16.2 view<br>
> ><br>
> > - open attribute table<br>
> ><br>
> > - start editing<br>
> ><br>
> > - after a while waiting for nodes to appear as QGIS works, message is<br>
> > displayed of "qgis-bin.exe has stopped working"<br>
><br>
> I've tried your file 2.16.3 in a Win7 VM with 4GB and trying to reproduce your<br>
> actions but didn't get a crash. I managed painfully to move a node of the<br>
> coastline of western part of France. Note that I used a 64 bit build, and I<br>
> noticed that the memory consumption goes up to 3 GB when you enable the Node<br>
> tool (goes down to 300 MB once you finish all editing actions), so if you use a<br>
> 32 bit build, a crash is not surprising.<br>
> All the actions are super slow, particularly making a node active and moving<br>
> it. There are clearly issues, with algorithms, data structures and memory use,<br>
> when dealing with huge polygons.<br>
> I also noticed that there's apparently always a core busy until you finish<br>
> editing.</p>
<p dir="ltr">The issue here is that the node tool adds a new QGraphicsItem to the canvas for every node - so in a complex polygon you can end up with 100k's of items in the scene. Then these items are repainted for every mouse move across the canvas.... Ouch!!</p>
<p dir="ltr">One good solution here would be to enable Qt's inbuilt caching for the map canvas QGraphicsItems. I experimented with this with good results, but also a bunch of bugs I didn't have a chance to fix at the time... (Could not find anyway to force qt to invalidate the cache for every item in the scene when the map scale/extent changed)<br></p>
<p dir="ltr">Nyall</p>
<p dir="ltr">><br>
> Even<br>
><br>
> --<br>
> Spatialys - Geospatial professional services<br>
> <a href="http://www.spatialys.com">http://www.spatialys.com</a><br>
> _______________________________________________<br>
> Qgis-developer mailing list<br>
> <a href="mailto:Qgis-developer@lists.osgeo.org">Qgis-developer@lists.osgeo.org</a><br>
> List info: <a href="http://lists.osgeo.org/mailman/listinfo/qgis-developer">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
> Unsubscribe: <a href="http://lists.osgeo.org/mailman/listinfo/qgis-developer">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br></p>