Graham Dumpleton
Graham Dumpleton
I think the only solution to all of this is for mod_wsgi to not bother trying to delete sub interpreters or shutdown the main Python interpreter. Instead mod_wsgi would just...
Latest develop version of mod_wsgi in GitHub no longer attempts to destroy Python sub interpreters or main Python interpreter on shutdown and will instead just let the process exit without...
I don't know whether has always existed as an issue with `atexit._run_exitfuncs()`, only older implementations, or maybe was only an issue when one had to use `sys.exitfunc()`, but at one...
Some more issues to complicate this. From mod_wsgi code: ``` /* * In Python 2.5.1 an exit function is no longer used to * shutdown and wait on non daemon...
FWIW, these are all the Python versions mod_wsgi possibly still works with: ``` Python :: 2.6 Python :: 2.7 Python :: 3.3 Python :: 3.4 Python :: 3.5 Python ::...
Reviewing code. Python 2.7 atexit calling is pure Python. * https://github.com/python/cpython/blob/v2.7.18/Lib/atexit.py#L22 It pops handlers off the list when calling so they are thus removed. Python 3.6 atexit calling is C...
In contrast, summarising what was being done since have better understanding now, ignoring funny variations for old Python versions, we have: * Trigger mod_wsgi shutdown notification event and trigger registered...
To make clear one point. Am not calling `os._exit()` and no intention to. That actually calls C `_exit()` which doesn't result in C level i/o buffers to be flushed and...
Can someone summarise the outcome on this given I see a change was made in CPython to revert some change made in it? I need to determine if I revert...
Since have no idea what final outcome of this is, I reverted the change in mod_wsgi which would mean the interpreter is not deleted on process shutdown. The same behaviour...