Bug report #16966
QGIS 2.99 (3.0) crashes WMTS-Map Zoom-In
Status: | Closed | ||
---|---|---|---|
Priority: | High | ||
Assignee: | Even Rouault | ||
Category: | Web Services clients/WMS | ||
Affected QGIS version: | master | Regression?: | Yes |
Operating System: | Linux/xubuntu 16.04.2 | Easy fix?: | No |
Pull Request or Patch supplied: | No | Resolution: | |
Crashes QGIS or corrupts data: | Yes | Copied to github as #: | 24865 |
Description
QGIS 2.99 (c373c8b) crashes while zooming into a WMTS-Map (in my case basemap.at).
Associated revisions
[QgsAuthManager] Protect all methods that do SQL queries with mutex (fixes #16966)
[QgsAuthManager] Protect all methods that do SQL queries with mutex (fixes #16966)
History
#1 Updated by Flo Ju over 7 years ago
Error: QGIS died on signal 11qgis.bin: malloc.c:2868: mremap_chunk: Assertion `((size + offset) & (GLRO (dl_pagesize) - 1)) == 0' failed.
#2 Updated by Giovanni Manghi over 7 years ago
- Status changed from Open to Feedback
- Regression? changed from No to Yes
Can post the service URL? Thanks.
#3 Updated by Flo Ju over 7 years ago
WMTS-Service URL: https://www.basemap.at/wmts/1.0.0/WMTSCapabilities.xml
#4 Updated by Giovanni Manghi over 7 years ago
- Status changed from Feedback to Open
- Category changed from Data Provider to Web Services clients/WMS
#5 Updated by Richard Duivenvoorde about 7 years ago
- File crashing.qgs added
Confirmed here! Just wanted to create a ticket for it when I found this one.
(EDIT): note that this is on Debian Testing here with me. I tested the project file on current nightly in Windows10 in a Virtual Machine, and Windows was doing fine :-(
So could it be that recent reported stability problems are Linux/glib related?
It would be interesting to know if this crashes on Mac's too?
(EDIT2)): also crashing on Windows, altough it takes a little more effort: some more zooming/panning etc. I added also the stacktraces from Windows now.
It looks like a certain moment the network requests are stalling/handles to tiles are sufficated or so???
Easily reproducable with attached project file:
- a project in epsg:28992
- 2 wmts layers (from our national services)
With me loading this project, and do some zooming in and out with the mouse button guarantees to crash QGIS.
Stacktrace from Debian terminal:
/home/richard/bin/qgis_all/master/debug/bin/qgis(_start+0x2a)[0x555afc3ad1da] Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged. QGIS died on signal 11QGIS died on signal 11QGIS died on signal 11QGIS died on signal 11[New LWP 17212] [New LWP 17213] [New LWP 17214] [New LWP 17215] [New LWP 17216] [New LWP 17220] [New LWP 17221] [New LWP 17222] [New LWP 17223] [New LWP 17224] [New LWP 17225] [New LWP 17227] [New LWP 17320] [New LWP 17361] [New LWP 17362] [New LWP 17363] [New LWP 17364] [New LWP 17365] [New LWP 17366] [New LWP 17367] [New LWP 17368] [New LWP 17369] [2]+ Stopped qgis richard@west~$ fg qgis warning: process 17211 is already traced by process 17372 ptrace: Operation not permitted. No thread selected No stack. warning: Corrupted shared library list: 0x555afee65db0 != 0x555afef50dc0 warning: process 17211 is already traced by process 17372 ptrace: Operation not permitted. No thread selected No stack. warning: process 17211 is already traced by process 17372 ptrace: Operation not permitted. No thread selected No stack. [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". 0x00007fe52879266d in poll () at ../sysdeps/unix/syscall-template.S:84 84 ../sysdeps/unix/syscall-template.S: No such file or directory. [Current thread is 1 (Thread 0x7fe536421340 (LWP 17211))] #0 0x00007fe52879266d in poll () at ../sysdeps/unix/syscall-template.S:84 No locals. #1 0x00007fe526477119 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #2 0x00007fe52647722c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #3 0x00007fe52981541b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #4 0x00007fe5297badba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #5 0x00007fe5297c3d24 in QCoreApplication::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #6 0x0000555afc3b4eec in main (argc=1, argv=0x7fffb391cbc8) at /home/richard/dev/qgis/git/qgis/src/app/main.cpp:1398 profile = 0x555afe10b3b0 presetStyle = {static null = {<No data fields>}, d = 0x555afe247170} rootProfileFolder = {static null = {<No data fields>}, d = 0x555afe157840} myLocaleOverrideFlag = false qgistor = <incomplete type> w = 600 mySplashPath = {static null = {<No data fields>}, d = 0x7fe532d03500 <QgsApplication::splashPath()::{lambda()#1}::operator()() const::qstring_literal>} h = 300 mypSplash = 0x555afe44aa40 qgis = 0x555afe644740 retval = -1282291120 manager = {<QObject> = {<No data fields>}, static staticMetaObject = {d = {superdata = 0x7fe529c6ca00 <QObject::staticMetaObject>, stringdata = 0x7fe532e06760 <qt_meta_stringdata_QgsUserProfileManager>, data = 0x7fe532e067e0 <qt_meta_data_QgsUserProfileManager>, static_metacall = 0x7fe532c9e8e6 <QgsUserProfileManager::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, mWatchProfiles = false, mWatcher = std::unique_ptr<QFileSystemWatcher> containing 0x0, mRootProfilePath = {static null = {<No data fields>}, d = 0x555afe157840}, mUserProfile = std::unique_ptr<QgsUserProfile> containing 0x0, mSettings = std::unique_ptr<QSettings> containing 0x555afe10b230} profileFolder = {static null = {<No data fields>}, d = 0x555afe158c70} mySettings = {<QObject> = {<No data fields>}, static staticMetaObject = {d = {superdata = 0x7fe529c6ca00 <QObject::staticMetaObject>, stringdata = 0x7fe532df5a20 <qt_meta_stringdata_QgsSettings>, data = 0x7fe532df5a60 <qt_meta_data_QgsSettings>, static_metacall = 0x7fe532c8803e <QgsSettings::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, static sGlobalSettingsPath = {static null = {<No data fields>}, d = 0x555afe36dc00}, mUserSettings = 0x555afe3635e0, mGlobalSettings = 0x555afe3abf10, mUsingGlobalArray = false} systemEnvVars = {d = 0x555afe373f60} activeStyleName = {static null = {<No data fields>}, d = 0x555afe471ca0} i18nPath = {static null = {<No data fields>}, d = 0x555afe5dc030} myUserLocale = {static null = {<No data fields>}, d = 0x555afe3a7070} qttor = <incomplete type> myApp = {<QApplication> = {<No data fields>}, static staticMetaObject = {d = {superdata = 0x7fe52eaea020 <QApplication::staticMetaObject>, stringdata = 0x7fe532de3700 <qt_meta_stringdata_QgsApplication>, data = 0x7fe532de3860 <qt_meta_data_QgsApplication>, static_metacall = 0x7fe532c6edc8 <QgsApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, static QGIS_ORGANIZATION_NAME = 0x7fe532d02b08 "QGIS", static QGIS_ORGANIZATION_DOMAIN = 0x7fe532d02b0d "qgis.org", static QGIS_APPLICATION_NAME = 0x7fe532d02b16 "QGIS3", static mFileOpenEventReceiver29900 = 0x555afe644740, static mFileOpenEventList29900 = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7fe5298ac960 <QListData::shared_null>}, d = 0x7fe5298ac960 <QListData::shared_null>}}, <No data fields>}, static mUIThemeName29900 = {static null = {<No data fields>}, d = 0x7fe5298aa360 <QArrayData::shared_null>}, static mPrefixPath29900 = {static null = <same as static member of an already seen type>, d = 0x555afe369a50}, static mPluginPath29900 = {static null = <same as static member of an already seen type>, d = 0x555afe469520}, static mPkgDataPath29900 = {static null = <same as static member of an already seen type>, d = 0x555afe3698b0}, static mLibraryPath29900 = {static null = <same as static member of an already seen type>, d = 0x555afe369960}, static mLibexecPath29900 = {static null = <same as static member of an already seen type>, d = 0x555afe3ab200}, static mThemeName29900 = {static null = <same as static member of an already seen type>, d = 0x7fe532d030a0 <QgsApplication::setUITheme(QString const&)::{lambda()#2}::operator()() const::qstring_literal>}, static mDefaultSvgPaths29900 = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x555afe36da00}, d = 0x555afe36da00}}, <No data fields>}, static mSystemEnvVars29900 = {d = 0x555afe373f60}, static mConfigPath29900 = {static null = {<No data fields>}, d = 0x555afe352310}, static mRunningFromBuildDir29900 = false, static mBuildSourcePath29900 = {static null = <same as static member of an already seen type>, d = 0x7fe5298aa360 <QArrayData::shared_null>}, static mBuildOutputPath29900 = {static null = <same as static member of an already seen type>, d = 0x7fe5298aa360 <QArrayData::shared_null>}, static mGdalSkipList29900 = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7fe5298ac960 <QListData::shared_null>}, d = 0x7fe5298ac960 <QListData::shared_null>}}, <No data fields>}, static mMaxThreads29900 = 4, static mAuthDbDirPath29900 = {static null = {<No data fields>}, d = 0x555afe352310}, static sUserName = {static null = <same as static member of an already seen type>, d = 0x555afe2f94e0}, static sUserFullName = {static null = <same as static member of an already seen type>, d = 0x555afe89aa50}, static sPlatformName = {static null = <same as static member of an already seen type>, d = 0x555afe158c40}, mIconCache = {d = 0x555afe35afc0}, mDataItemProviderRegistry = 0x555afee40120, mAuthManager = 0x555afe708d00, mApplicationMembers = 0x555afe242630, static sApplicationMembers = 0x0} customizationsettings = 0x555afe3a6500 useCustomVars = false myPixmap = <incomplete type> __FUNCTION__ = "main" mySnapshotFileName = {static null = {<No data fields>}, d = 0x7fe5298aa360 <QArrayData::shared_null>} configLocalStorageLocation = {static null = {<No data fields>}, d = 0x555afe1576c0} profileName = {static null = {<No data fields>}, d = 0x555afe157b00} mySnapshotWidth = 800 mySnapshotHeight = 600 myHideSplash = false mySettingsMigrationForce = false mySkipVersionCheck = false myRestoreDefaultWindowState = false myRestorePlugins = true myCustomization = true dxfOutputFile = {static null = {<No data fields>}, d = 0x7fe5298aa360 <QArrayData::shared_null>} dxfSymbologyMode = QgsDxfExport::SymbolLayerSymbology dxfScale = 50000 dxfEncoding = {static null = {<No data fields>}, d = 0x555afc3bcec0 <main::{lambda()#1}::operator()() const::qstring_literal>} dxfPreset = {static null = {<No data fields>}, d = 0x7fe5298aa360 <QArrayData::shared_null>} dxfExtent = {mXmin = 0, mYmin = 0, mXmax = 0, mYmax = 0} myInitialExtent = {static null = {<No data fields>}, d = 0x555afc3bcf00 <main::{lambda()#2}::operator()() const::qstring_literal>} myTranslationCode = {static null = {<No data fields>}, d = 0x555afe3a7040} configpath = {static null = {<No data fields>}, d = 0x7fe5298aa360 <QArrayData::shared_null>} authdbdirectory = {static null = {<No data fields>}, d = 0x7fe5298aa360 <QArrayData::shared_null>} pythonfile = {static null = {<No data fields>}, d = 0x7fe5298aa360 <QArrayData::shared_null>} customizationfile = {static null = {<No data fields>}, d = 0x7fe5298aa360 <QArrayData::shared_null>} globalsettingsfile = {static null = {<No data fields>}, d = 0x555afe36dc00} args = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x555afe10b170}, d = 0x555afe10b170}}, <No data fields>} myUseGuiFlag = true settings = {<QObject> = {<No data fields>}, static staticMetaObject = {d = {superdata = 0x7fe529c6ca00 <QObject::staticMetaObject>, stringdata = 0x7fe532df5a20 <qt_meta_stringdata_QgsSettings>, data = 0x7fe532df5a60 <qt_meta_data_QgsSettings>, static_metacall = 0x7fe532c8803e <QgsSettings::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, static sGlobalSettingsPath = {static null = {<No data fields>}, d = 0x555afe36dc00}, mUserSettings = 0x555afe10ad50, mGlobalSettings = 0x0, mUsingGlobalArray = false} gdb returned 0 /home/richard/bin/qgis: line 5: 17211 Aborted /home/richard/bin/qgis_all/master/debug/bin/qgis "$@"
On Windows actually 3, not sure if these are all related or are different threads throwing up:
h2. User Feedback h2. Report Details *Crash ID*: 4851ecb0e60e52df090f1391bb90249936b1e578 *Stack Trace* <pre> ASN1_item_ex_i2d : ASN1_item_ex_free : ASN1_item_ex_i2d : ASN1_item_i2d : QSslCertificate::operator== : QSslCertificate::toDer : QSslCertificate::digest : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QNetworkAccessManager::get : std::basic_string<char,std::char_traits<char>,std::allocator<char> >::find_first_not_of : std::basic_string<char,std::char_traits<char>,std::allocator<char> >::find_first_not_of : std::basic_string<char,std::char_traits<char>,std::allocator<char> >::find_first_not_of : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QtConcurrent::ThreadEngineBase::run : QThreadPoolPrivate::reset : QThread::start : BaseThreadInitThunk : RtlUserThreadStart : </pre> *QGIS Info* QGIS Version: 2.99.0-Master QGIS code revision: commit:82644fb37f Compiled against Qt: 5.9.2 Running against Qt: 5.9.2 Compiled against GDAL: 2.2.2 Running against GDAL: 2.2.2 *System Info* CPU Type: x86_64 Kernel Type: winnt Kernel Version: 10.0.15063
h2. User Feedback h2. Report Details *Crash ID*: 4851ecb0e60e52df090f1391bb90249936b1e578 *Stack Trace* <pre> ASN1_item_ex_i2d : ASN1_item_ex_free : ASN1_item_ex_i2d : ASN1_item_i2d : QSslCertificate::operator== : QSslCertificate::toDer : QSslCertificate::digest : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QNetworkAccessManager::get : std::basic_string<char,std::char_traits<char>,std::allocator<char> >::find_first_not_of : std::basic_string<char,std::char_traits<char>,std::allocator<char> >::find_first_not_of : std::basic_string<char,std::char_traits<char>,std::allocator<char> >::find_first_not_of : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QgsProcessingModelParameter::toVariant : QtConcurrent::ThreadEngineBase::run : QThreadPoolPrivate::reset : QThread::start : BaseThreadInitThunk : RtlUserThreadStart : </pre> *QGIS Info* QGIS Version: 2.99.0-Master QGIS code revision: commit:82644fb37f Compiled against Qt: 5.9.2 Running against Qt: 5.9.2 Compiled against GDAL: 2.2.2 Running against GDAL: 2.2.2 *System Info* CPU Type: x86_64 Kernel Type: winnt Kernel Version: 10.0.15063
h2. User Feedback h2. Report Details *Crash ID*: 291957e1ea612b5c099f62b4b59acf1f85a25b25 *Stack Trace* <pre> QHeaderView::logicalIndexAt : QHeaderView::logicalIndexAt : QComboBox::addItems : QFrame::paintEvent : QAbstractScrollArea::event : QApplicationPrivate::notify_helper : QApplication::notify : QgsProcessingModelParameter::toVariant : QCoreApplication::notifyInternal2 : QWidgetPrivate::drawWidget : QWidgetPrivate::paintSiblingsRecursive : QWidgetPrivate::drawWidget : QWidgetPrivate::paintSiblingsRecursive : QWidgetPrivate::drawWidget : QWidgetPrivate::paintSiblingsRecursive : QWidgetPrivate::drawWidget : QWidgetPrivate::paintSiblingsRecursive : QWidgetPrivate::drawWidget : QWidgetPrivate::paintSiblingsRecursive : QWidgetPrivate::paintSiblingsRecursive : QWidgetPrivate::drawWidget : QApplication::windowIcon : QWidget::event : QMainWindow::event : QgsPluginRegistry::QgsPluginRegistry : QApplicationPrivate::notify_helper : QApplication::notify : QgsProcessingModelParameter::toVariant : QCoreApplication::notifyInternal2 : QCoreApplicationPrivate::sendPostedEvents : qt_plugin_query_metadata : QEventDispatcherWin32::processEvents : CallWindowProcW : DispatchMessageW : QEventDispatcherWin32::processEvents : qt_plugin_query_metadata : QEventLoop::exec : QCoreApplication::exec : QgsPluginRegistry::QgsPluginRegistry : BaseThreadInitThunk : RtlUserThreadStart : </pre> *QGIS Info* QGIS Version: 2.99.0-Master QGIS code revision: commit:82644fb37f Compiled against Qt: 5.9.2 Running against Qt: 5.9.2 Compiled against GDAL: 2.2.2 Running against GDAL: 2.2.2 *System Info* CPU Type: x86_64 Kernel Type: winnt Kernel Version: 10.0.15063
#6 Updated by Even Rouault about 7 years ago
- Assignee set to Even Rouault
#7 Updated by Even Rouault about 7 years ago
https://github.com/qgis/QGIS/pull/5646 submitted
#8 Updated by Even Rouault about 7 years ago
- Status changed from Open to Closed
- % Done changed from 0 to 100
Applied in changeset qgis|4ce1752157e5d43874117d22d7aeb85303c40098.