Graham Dumpleton
                                            Graham Dumpleton
                                        
                                    Found was not using the correct setting. Need to set: ``` "security.workspace.trust.enabled": false ``` which isn't visible from UI settings page and have to work out can use it from...
Read the docs where it talks about Python egg cache issues and set a different path which is unique to the user that your application runs as. As it stands,...
Try something like: ``` os.environ['PYTHON_EGG_CACHE'] = '/var/tmp/.python-eggs-%s' % os.getpid() ``` Only problem with this as is will be that the number of directories may keep growing.
Out of tree builds have never been possible. It isn't just structuring the `Makefile` correctly, with part of the issue being the `apxs` command from Apache which does the actual...
For a start, don't use Python sub interpreters. I see the call to `Py_EndInterpreter()` which indicates you are. Sub interpreters can have issues with various third party modules which use...
To make one thing clear which may be relevant. All request handler threads in mod_wsgi are external threads, they are not Python threads, thus the Python interpreter would never be...
That configuration looks buggy to me. You have set: ``` WSGIProcessGroup ipa WSGIApplicationGroup ipa ``` under: ``` ``` This means that for that one URL path you are running a...
The relevant Python issue about changes to daemon threads in sub interpreters is: * https://bugs.python.org/issue40234 The outcome of that suggests that default behaviour would be the same and daemon threads...
For sub interpreters, mod_wsgi triggers atexit() callbacks itself earlier before interpreter deletion. But then, how atexit callbacks work has changed many times over the years between Python versions, so how...
So looks like the hack was to replace `threading._shutdown()`. See: https://github.com/GrahamDumpleton/mod_wsgi/blob/develop/src/server/wsgi_interp.c#L519 https://github.com/GrahamDumpleton/mod_wsgi/blob/develop/src/server/wsgi_interp.c#L211 But the order was that I would only call atexit() after calling original function I was wrapping. That...