Bug report #20203
Crash when opening attribute table in form mode (potentially related to relation reference widgets)
Status: | Open | ||
---|---|---|---|
Priority: | High | ||
Assignee: | Matthias Kuhn | ||
Category: | Forms | ||
Affected QGIS version: | 3.4.5 | Regression?: | Yes |
Operating System: | Windows | Easy fix?: | No |
Pull Request or Patch supplied: | No | Resolution: | |
Crashes QGIS or corrupts data: | Yes | Copied to github as #: | 28024 |
Description
To replicate this issue you need the "EWS" project of Kanton Zug. It contains a complex form in the layer "EWS Anlage".
If you open the attribute table in form mode (Setting --> Options --> Data Sources --> Default view: Form view), QGIS crashes. It first displays numeric values in the relation reference widgets and then crashes just before it would (most likely) display the text representations of the relation reference widgets.
Stacktrace is below:
Crash ID: 0f456c400f5ba69fabe2acc635d234b2b6b1ae50 Stack Trace QBitArray::QBitArray : QgsPostgresConn::connInfo qgspostgresconn.h:317 qgsConnectionPool_ConnectionToName qgspostgresconnpool.h:25 QgsConnectionPool::releaseConnection qgsconnectionpool.h:310 QgsPostgresFeatureIterator::close qgspostgresfeatureiterator.cpp:412 QgsFeatureIterator::close qgsfeatureiterator.h:391 QgsVectorLayerFeatureIterator::close qgsvectorlayerfeatureiterator.cpp:405 QgsVectorLayerFeatureIterator::~QgsVectorLayerFeatureIterator qgsvectorlayerfeatureiterator.cpp:276 QgsVectorLayerFeatureIterator::`vector deleting destructor' : QgsAbstractFeatureIterator::deref qgsfeatureiterator.cpp:147 QgsFeatureIterator::~QgsFeatureIterator qgsfeatureiterator.h:370 QgsFieldExpressionValuesGatherer::~QgsFieldExpressionValuesGatherer : QgsFieldExpressionValuesGatherer::`scalar deleting destructor' : QgsFeatureFilterModel::gathererThreadFinished qgsfeaturefiltermodel.cpp:310 QtPrivate::FunctorCall,QtPrivate::List,void,void (__cdecl QgsFeatureFilterModel::*)(void) __ptr64>::call qobjectdefs_impl.h:134 QtPrivate::FunctionPointer::call,void> qobjectdefs_impl.h:168 QtPrivate::QSlotObject,void>::impl qobjectdefs_impl.h:397 QMetaCallEvent::placeMetaCall : QObject::event : QApplicationPrivate::notify_helper : QApplication::notify : QgsApplication::notify qgsapplication.cpp:355 QCoreApplication::notifyInternal2 : QCoreApplicationPrivate::sendPostedEvents : qt_plugin_query_metadata : QEventDispatcherWin32::processEvents : TranslateMessageEx : TranslateMessage : QEventDispatcherWin32::processEvents : qt_plugin_query_metadata : QEventLoop::exec : QCoreApplication::exec : main main.cpp:1505 WinMain mainwin.cpp:170 __scrt_common_main_seh exe_common.inl:253 BaseThreadInitThunk : RtlUserThreadStart : QGIS Info QGIS Version: 3.3.0-Master QGIS code revision: 17f30f5762 Compiled against Qt: 5.11.2 Running against Qt: 5.11.2 Compiled against GDAL: 2.3.2 Running against GDAL: 2.3.2 System Info CPU Type: x86_64 Kernel Type: winnt Kernel Version: 6.1.7601
History
#1 Updated by Andreas Neumann about 6 years ago
So far, I only tested on Windows 7, where the database is on a separate server somewhere in the LAN (with latency), not on the same machine that is running QGIS.
Will do tests on Linux with local PostgreSQL installation and report back.
#2 Updated by Andreas Neumann about 6 years ago
More info:
If one opens the table first in "table mode" and then later switches to "form mode", the crash is not happening.
#3 Updated by Andreas Neumann about 6 years ago
- File 2018-10-24_11-34-13.mp4 added
#4 Updated by Andreas Neumann about 6 years ago
New, different stackt trace:
Crash ID: 4760e0e29fb16fe82be9e65811f9f36cc283f4e7 Stack Trace QVector::QVector qvector.h:358 QgsFieldExpressionValuesGatherer::entries qgsfeaturefiltermodel_p.h:82 QgsFeatureFilterModel::updateCompleter qgsfeaturefiltermodel.cpp:195 QtPrivate::FunctorCall,QtPrivate::List,void,void (__cdecl QgsFeatureFilterModel::*)(void) __ptr64>::call qobjectdefs_impl.h:134 QtPrivate::FunctionPointer::call,void> qobjectdefs_impl.h:168 QtPrivate::QSlotObject,void>::impl qobjectdefs_impl.h:397 QMetaCallEvent::placeMetaCall : QObject::event : QApplicationPrivate::notify_helper : QApplication::notify : QgsApplication::notify qgsapplication.cpp:355 QCoreApplication::notifyInternal2 : QCoreApplicationPrivate::sendPostedEvents : qt_plugin_query_metadata : QEventDispatcherWin32::processEvents : TranslateMessageEx : TranslateMessage : QEventDispatcherWin32::processEvents : qt_plugin_query_metadata : QEventLoop::exec : QCoreApplication::exec : main main.cpp:1505 WinMain mainwin.cpp:170 __scrt_common_main_seh exe_common.inl:253 BaseThreadInitThunk : RtlUserThreadStart : QGIS Info QGIS Version: 3.3.0-Master QGIS code revision: 17f30f5762 Compiled against Qt: 5.11.2 Running against Qt: 5.11.2 Compiled against GDAL: 2.3.2 Running against GDAL: 2.3.2 System Info CPU Type: x86_64 Kernel Type: winnt Kernel Version: 6.1.7601
#5 Updated by Giovanni Manghi about 6 years ago
- Status changed from Open to Feedback
Please try on QGIS 3.4.1, if the issue is still valid change the affected version, thanks.
#6 Updated by Jürgen Fischer over 5 years ago
- Status changed from Feedback to Closed
- Resolution set to no timely feedback
Bulk closing 82 tickets in feedback state for more than 90 days affecting an old version. Feel free to reopen if it still applies to a current version and you have more information that clarify the issue.
#7 Updated by Andreas Neumann over 5 years ago
- Status changed from Closed to Open
- Operating System changed from any to Windows
Unfortunately, this problem is still appearing. It seems to happen only on Windows, not on Linux.
#8 Updated by Giovanni Manghi over 5 years ago
- Resolution deleted (
no timely feedback) - Affected QGIS version changed from 3.3(master) to 3.4.5