Bug report #20789

Check Geometries causes crash on 3.4.2 and Master

Added by Antonio Viscomi almost 2 years ago. Updated almost 2 years ago.

Status:Closed
Priority:High
Assignee:Alessandro Pasotti
Category:C++ plugins/Geometry Checker
Affected QGIS version:3.5(master) Regression?:No
Operating System:windows 7 x64 Easy fix?:No
Pull Request or Patch supplied:Yes Resolution:
Crashes QGIS or corrupts data:Yes Copied to github as #:28609

Description

Hi all,
I tried to check Topology but QGIS Master and 3.4.
I attached data, project and screencast in a divided 7zip file

Regards

Topology2.7z.002 (5 MB) Antonio Viscomi, 2018-12-12 03:09 PM

Topology2.7z.001 (5 MB) Antonio Viscomi, 2018-12-12 03:09 PM

Topology2.7z.003 (4.07 MB) Antonio Viscomi, 2018-12-12 03:09 PM


Related issues

Duplicated by QGIS Application - Bug report #20791: On the fly geometry validation doesn't work and causes QG... Open 2018-12-12

Associated revisions

Revision b0d1506b
Added by Alessandro Pasotti almost 2 years ago

Fix QgsReadWriteLocker changeMode

since mMode was never updated, the lock
was never toggled from read to write or
vice-versa.

This was leading to crashes because the
paths that were meant to be serialized
and thread safe were not.

Fixes #20789 and probably many more
random crashes where QgsFeaturePool
was used.

Revision 14e59ee6
Added by Alessandro Pasotti almost 2 years ago

Fix QgsReadWriteLocker changeMode

since mMode was never updated, the lock
was never toggled from read to write or
vice-versa.

This was leading to crashes because the
paths that were meant to be serialized
and thread safe were not.

Fixes #20789 and probably many more
random crashes where QgsFeaturePool
was used.

History

#1 Updated by Alessandro Pasotti almost 2 years ago

  • Assignee set to Alessandro Pasotti

Confirmed

#2 Updated by Alessandro Pasotti almost 2 years ago

I've found the bug that caused the crash (and what a big one!!) but the tool is still unusable with a big layer: it uses a feature cache (with an hardcoded size of 1000) and because the cache gets filled in a blink of an eye all the operations are slowed down by the cache trimming and insertion.

I have a 32 GB RAM and 16 CPU cores machine and this is taking a loooong time (61% after half an hour, no crashes so far).

#3 Updated by Alessandro Pasotti almost 2 years ago

  • Pull Request or Patch supplied changed from No to Yes

This fixes the crash (and probably many more bugs) https://github.com/qgis/QGIS/pull/8660

As I mentioned, the tool is almost unusable (too slow) with large layers (but that's another issue).

#4 Updated by Alessandro Pasotti almost 2 years ago

  • Status changed from Open to In Progress

#5 Updated by Antonio Viscomi almost 2 years ago

Alessandro Pasotti wrote:

I've found the bug that caused the crash (and what a big one!!) but the tool is still unusable with a big layer: it uses a feature cache (with an hardcoded size of 1000) and because the cache gets filled in a blink of an eye all the operations are slowed down by the cache trimming and insertion.

I have a 32 GB RAM and 16 CPU cores machine and this is taking a loooong time (61% after half an hour, no crashes so far).

Great! Alessandro,
Thanks a lot for your job

Cheers

#6 Updated by Alessandro Pasotti almost 2 years ago

  • Status changed from In Progress to Closed
  • % Done changed from 0 to 100

#7 Updated by Jürgen Fischer almost 2 years ago

  • Duplicated by Bug report #20791: On the fly geometry validation doesn't work and causes QGIS to not respond added

Also available in: Atom PDF