[QGIS-Developer] QgsO2 (OAuth2 ) crash in exitQgis() on uWSGI
Radim Blazek
radim.blazek at gmail.com
Wed Apr 28 09:14:20 PDT 2021
Promemoria,
it is crashing whenever Q_GLOBAL_STATIC variable is accessed
because uwsgi is calling C/C++ libs atexit before python atexit.
https://github.com/unbit/uwsgi/issues/859
https://github.com/unbit/uwsgi/pull/1879
This workaround can clear project aux storage tmp file
os.remove(QgsProject.instance().auxiliaryStorage().currentFileName())
but there is also QgsProjectArchive tmp dir which is private.
BTW, what happens with old QgsProject instance when a new one is set?
void QgsProject::setInstance( QgsProject *project )
{
sProject = project;
}
Radim
On Mon, Apr 26, 2021 at 4:23 PM Radim Blazek <radim.blazek at gmail.com> wrote:
> I forgot to say that QgsApplication.exitQgis() / QgsProject.clear()
> is invoked by python atexit.register.
> > Now it crashes in QgsProject.clear() and again the last qgis function
> > does not have name in backtrace, is it macro?
> > /lib/x86_64-linux-gnu/libc.so.6(+0x37840) [0x7f06e03c9840]
> > /lib/libqgis_core.so.3.18.1(+0x3a2504) [0x7f06a43e5504]
> > /lib/libqgis_core.so.3.18.1(_ZN10QgsProject5clearEv+0xaa5) [0x7f06a4d5f235]
More information about the QGIS-Developer
mailing list