Bug report #21393

qgis crashed with the infomation tool on a layer imported from a SqLite database

Added by Christophe Miroslaw over 5 years ago. Updated over 5 years ago.

Status:Closed
Priority:High
Assignee:-
Category:Map Tools
Affected QGIS version:3.6.0 Regression?:No
Operating System:Windows 7 x86 Easy fix?:No
Pull Request or Patch supplied:No Resolution:no timely feedback
Crashes QGIS or corrupts data:Yes Copied to github as #:29210

Description

User Feedback

I import cadastral data from a SqLite database (data provided by cadastre.gouv.fr). After several tests, the problem seems to be limited to 2 layers (built and parcel) that systematically crash QGis as soon as they are visible and that we want to either query them or use the right click to query another layer.
I do not observe this issue if I re-register the 2 layers in .shp format and after removing or deactivating the corresponding layers imported from the sQLite database.
I do not know if the problem could come from an error of translation of the data from the plugin Cadastre (same problem on several other bases SqLite, already present on QGis 3.4)
Thanks for your help

Report Details

Crash ID: 4edddc9507bebf3133e4acf4a957e35e940b4eb5

Stack Trace

QgsGeometryCollection::vertexAt :
QgsMapToolIdentify::closestVertexAttributes :
QgsMapToolIdentify::featureDerivedAttributes :
QgsMapToolIdentify::identifyVectorLayer :
QgsMapToolIdentify::identifyLayer :
QgsMapToolIdentify::identify :
QgsMapToolIdentify::identify :
QgsMapToolIdentify::identify :
QgsMapToolIdentify::identify :
QgsMapToolIdentifyAction::identifyFromGeometry :
QMetaObject::activate :
QgsMapToolSelect::qt_static_metacall :
QgsMapToolSelect::setSelectionMode :
QgsMapToolIdentifyAction::canvasReleaseEvent :
QgsMapCanvas::mouseReleaseEvent :
QWidget::event :
QFrame::event :
QGraphicsView::viewportEvent :
QCoreApplicationPrivate::sendThroughObjectEventFilters :
QApplicationPrivate::notify_helper :
QApplication::notify :
QgsApplication::notify :
QCoreApplication::notifyInternal2 :
QApplicationPrivate::sendMouseEvent :
QSizePolicy::QSizePolicy :
QSizePolicy::QSizePolicy :
QApplicationPrivate::notify_helper :
QApplication::notify :
QgsApplication::notify :
QCoreApplication::notifyInternal2 :
QGuiApplicationPrivate::processMouseEvent :
QWindowSystemInterface::sendWindowSystemEvents :
QEventDispatcherWin32::processEvents :
TranslateMessageEx :
TranslateMessage :
QEventDispatcherWin32::processEvents :
qt_plugin_query_metadata :
QEventLoop::exec :
QCoreApplication::exec :
main :
BaseThreadInitThunk :
RtlUserThreadStart :

QGIS Info
QGIS Version: 3.6.0-Noosa
QGIS code revision: 58734527ab
Compiled against Qt: 5.11.2
Running against Qt: 5.11.2
Compiled against GDAL: 2.4.0
Running against GDAL: 2.4.0

System Info
CPU Type: x86_64
Kernel Type: winnt
Kernel Version: 6.1.7601

test.zip - base SqLite (1.92 MB) Christophe Miroslaw, 2019-02-27 12:04 PM

edigeo-cc-77038.zip - source files 1 (271 KB) Christophe Miroslaw, 2019-02-27 12:05 PM

edigeo-cc-77039.zip - source files 2 (550 KB) Christophe Miroslaw, 2019-02-27 12:05 PM

History

#1 Updated by Alessandro Pasotti over 5 years ago

  • Status changed from Open to Feedback

Did you forget to attach the layer?

#2 Updated by Christophe Miroslaw over 5 years ago

I could not join the "problematic" layers because as soon as we export them from the SqLite database in .shp format, they do not pose any more problems.
I am therefore attaching an excerpt from our SqLite database (original database too large), with the source files provided by the French Cadastre service that were imported in with the Cadastre plugin.
I also performed several tests on my side::
- I reloaded the source data of a single territory in a SqLite database: QGis does not crash after interrogating the layers "building" or "parcel"
- I loaded the source data of a second territory in this database SqLite (same format of data): QGis crashed after interrogation of the layers "building" or "parcel"

At your disposal for any further information

#3 Updated by Alessandro Pasotti over 5 years ago

Thanks for the data!

Sorry if I ask but I'm not sure I understand: what is the exact procedure (step-by-step) if someone wanted to reproduce the issue with the data and project you provided?

#4 Updated by Christophe Miroslaw over 5 years ago

The procedure is as follows:
1. Creation of the SqLite database with the Cadastre plugin and import of the first dataset into the database
2. Loading all the layers contained in the database in QGis from the Cadastre plugin
3. Using the feature identification tool on the "parcel" layer (or by right clicking): it works
4. Deletion of all loaded cadastral layers
5. Importing a second dataset into the database
6. New loading of all the layers contained in the database in QGis from the Cadastre plugin
7. Using the feature identification tool on the "parcel" layer (or by right clicking): QGis crashed

#5 Updated by Alessandro Pasotti over 5 years ago

  • Resolution set to invalid

Please retry with all plugin disabled, if you cannot reproduce, please file a bug on the Cadastre plugin issue tracker.

#6 Updated by Christophe Miroslaw over 5 years ago

I already tested by disabling all of my plugins and reinstalling QGis completely. Same problem.
Problem also met by my other colleagues on versions QGis 2.18 and 3.4.
I will also add this error report to the Cadastre plugin site.
Thank you

#7 Updated by Alessandro Pasotti over 5 years ago

ok, please provide a step-by-step procedure to reproduce the issue without any plugin involved.

#8 Updated by Giovanni Manghi over 5 years ago

  • Resolution deleted (invalid)

Christophe Miroslaw wrote:

I already tested by disabling all of my plugins and reinstalling QGis completely. Same problem.

better try a new/clean profile, removing plugins and re-installing can anyway leave behind legacy stuff.

#9 Updated by Giovanni Manghi over 5 years ago

  • Resolution set to no timely feedback
  • Status changed from Feedback to Closed

Closing for lack of feedback. Please reopen if necessary.

Also available in: Atom PDF