More specifically, if you look at the stack trace you see:

#6  0x00007f68aefe6292 in PyEval_RestoreThread () from 
target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
#7  0x00007f68af02f1dc in PyGILState_Ensure () from 
target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
#8  0x00007f68ac30d6e3 in ?? () from 
target:/usr/lib/python3.10/lib-dynload/_sqlite3.cpython-310-x86_64-linux-gnu.so
#9  0x00007f68a750b01a in sqlite3LeaveMutexAndCloseZombie () from 
target:/lib/x86_64-linux-gnu/libsqlite3.so.0

Note how that function ends up calling PyGILState_Ensure(). That is a big no no 
when working with Python sub interpreters.

In other words, it uses the simplified GIL state API for some callback into 
Python from C code of SQLite and using that  when in a sub interpreter can 
cause deadlocks.

https://modwsgi.readthedocs.io/en/master/user-guides/application-issues.html#python-simplified-gil-state-api

So need to find the code for that function in sqlite module and work out what 
it does.

Graham

> On 9 Feb 2023, at 7:09 am, Graham Dumpleton <graham.dumple...@gmail.com> 
> wrote:
> 
> The key bit of information in that is the call to 
> sqlite3LeaveMutexAndCloseZombie(). It looks like sqlite module for Python is 
> doing something really strange that isn't working with sub interpreters. This 
> will need some research as it may be a bug they have introduced in Python 
> 3.10 for the sqlite module.
> 
> Graham
> 
>> On 9 Feb 2023, at 7:02 am, Carsten Fuchs <carsten.fu...@cafu.de> wrote:
>> 
>> Ok, I got a stack trace. My understanding of this is limited, but the thread 
>> seems to be stuck at polling something without timeout? (gdb reports that 
>> file ../sysdeps/unix/sysv/linux/poll.c cannot be found)
>> 
>> The full session follows. (Using plaintext email today in the hope that this 
>> helps with readibility. Please let me know if I should send differently 
>> instead.)
>> Between the two "thread apply all bt" commands I waited about two minutes:
>> 
>> 
>> $ sudo gdb /usr/sbin/apache2 60501
>> GNU gdb (Ubuntu 12.1-0ubuntu1~22.04) 12.1
>> Copyright (C) 2022 Free Software Foundation, Inc.
>> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
>> This is free software: you are free to change and redistribute it.
>> There is NO WARRANTY, to the extent permitted by law.
>> Type "show copying" and "show warranty" for details.
>> This GDB was configured as "x86_64-linux-gnu".
>> Type "show configuration" for configuration details.
>> For bug reporting instructions, please see:
>> <https://www.gnu.org/software/gdb/bugs/>.
>> Find the GDB manual and other documentation resources online at:
>>   <http://www.gnu.org/software/gdb/documentation/>.
>> 
>> For help, type "help".
>> Type "apropos word" to search for commands related to "word"...
>> Reading symbols from /usr/sbin/apache2...
>> (No debugging symbols found in /usr/sbin/apache2)
>> Attaching to program: /usr/sbin/apache2, process 60501
>> [New LWP 60532]
>> [New LWP 60533]
>> [New LWP 60534]
>> [Thread debugging using libthread_db enabled]
>> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
>> 0x00007f68af72bd7f in __GI___poll (fds=0x7ffe9f0b9e90, nfds=1, timeout=-1) 
>> at ../sysdeps/unix/sysv/linux/poll.c:29
>> 29   ../sysdeps/unix/sysv/linux/poll.c: Datei oder Verzeichnis nicht 
>> gefunden.
>> (gdb) thread apply all bt
>> 
>> Thread 4 (Thread 0x7f68ad6f9640 (LWP 60534) "apache2"):
>> #0  __futex_abstimed_wait_common64 (private=-1359973880, cancel=true, 
>> abstime=0x7f68ad6f7220, op=137, expected=0, futex_word=0x7f68af3b49a8 
>> <_PyRuntime+424>) at ./nptl/futex-internal.c:57
>> #1  __futex_abstimed_wait_common (cancel=true, private=-1359973880, 
>> abstime=0x7f68ad6f7220, clockid=-1359689157, expected=0, 
>> futex_word=0x7f68af3b49a8 <_PyRuntime+424>) at ./nptl/futex-internal.c:87
>> #2  __GI___futex_abstimed_wait_cancelable64 
>> (futex_word=futex_word@entry=0x7f68af3b49a8 <_PyRuntime+424>, 
>> expected=expected@entry=0, clockid=clockid@entry=1, 
>> abstime=abstime@entry=0x7f68ad6f7220, private=private@entry=0) at 
>> ./nptl/futex-internal.c:139
>> #3  0x00007f68af6a6f1b in __pthread_cond_wait_common 
>> (abstime=0x7f68ad6f7220, clockid=1, mutex=0x7f68af3b49b0 <_PyRuntime+432>, 
>> cond=0x7f68af3b4980 <_PyRuntime+384>) at ./nptl/pthread_cond_wait.c:503
>> #4  ___pthread_cond_timedwait64 (cond=0x7f68af3b4980 <_PyRuntime+384>, 
>> mutex=0x7f68af3b49b0 <_PyRuntime+432>, abstime=0x7f68ad6f7220) at 
>> ./nptl/pthread_cond_wait.c:652
>> #5  0x00007f68aefe5df5 in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #6  0x00007f68aefe6292 in PyEval_RestoreThread () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #7  0x00007f68af02f1dc in PyGILState_Ensure () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #8  0x00007f68ac30d6e3 in ?? () from 
>> target:/usr/lib/python3.10/lib-dynload/_sqlite3.cpython-310-x86_64-linux-gnu.so
>> #9  0x00007f68a750b01a in sqlite3LeaveMutexAndCloseZombie () from 
>> target:/lib/x86_64-linux-gnu/libsqlite3.so.0
>> #10 0x00007f68a750b2d6 in ?? () from 
>> target:/lib/x86_64-linux-gnu/libsqlite3.so.0
>> #11 0x00007f68ac3087d6 in ?? () from 
>> target:/usr/lib/python3.10/lib-dynload/_sqlite3.cpython-310-x86_64-linux-gnu.so
>> #12 0x00007f68aef118ba in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #13 0x00007f68aee9aeee in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #14 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #15 0x00007f68aee9aeee in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #16 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #17 0x00007f68aee97766 in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #18 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #19 0x00007f68aee9c9b8 in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #20 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #21 0x00007f68aee97766 in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #22 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #23 0x00007f68aee9aeee in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #24 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #25 0x00007f68aee9aeee in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #26 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #27 0x00007f68aef08118 in PyVectorcall_Call () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #28 0x00007f68aee97766 in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #29 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #30 0x00007f68aee9962e in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #31 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #32 0x00007f68aef08618 in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #33 0x00007f68aee99458 in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #34 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #35 0x00007f68aef086ac in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #36 0x00007f68af41680f in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #37 0x00007f68af41c9c8 in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #38 0x00007f68af6a7b43 in start_thread (arg=<optimized out>) at 
>> ./nptl/pthread_create.c:442
>> #39 0x00007f68af739a00 in clone3 () at 
>> ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
>> 
>> Thread 3 (Thread 0x7f68adefa640 (LWP 60533) "apache2"):
>> #0  __futex_abstimed_wait_common64 (private=0, cancel=true, 
>> abstime=0x7f68adef9d80, op=137, expected=0, futex_word=0x7f68af3b49a8 
>> <_PyRuntime+424>) at ./nptl/futex-internal.c:57
>> #1  __futex_abstimed_wait_common (cancel=true, private=0, 
>> abstime=0x7f68adef9d80, clockid=0, expected=0, futex_word=0x7f68af3b49a8 
>> <_PyRuntime+424>) at ./nptl/futex-internal.c:87
>> #2  __GI___futex_abstimed_wait_cancelable64 
>> (futex_word=futex_word@entry=0x7f68af3b49a8 <_PyRuntime+424>, 
>> expected=expected@entry=0, clockid=clockid@entry=1, 
>> abstime=abstime@entry=0x7f68adef9d80, private=private@entry=0) at 
>> ./nptl/futex-internal.c:139
>> #3  0x00007f68af6a6f1b in __pthread_cond_wait_common 
>> (abstime=0x7f68adef9d80, clockid=1, mutex=0x7f68af3b49b0 <_PyRuntime+432>, 
>> cond=0x7f68af3b4980 <_PyRuntime+384>) at ./nptl/pthread_cond_wait.c:503
>> #4  ___pthread_cond_timedwait64 (cond=0x7f68af3b4980 <_PyRuntime+384>, 
>> mutex=0x7f68af3b49b0 <_PyRuntime+432>, abstime=0x7f68adef9d80) at 
>> ./nptl/pthread_cond_wait.c:652
>> #5  0x00007f68aefe5df5 in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #6  0x00007f68aefe6292 in PyEval_RestoreThread () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #7  0x00007f68af02f1dc in PyGILState_Ensure () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #8  0x00007f68af41cf30 in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #9  0x00007f68af6a7b43 in start_thread (arg=<optimized out>) at 
>> ./nptl/pthread_create.c:442
>> #10 0x00007f68af739a00 in clone3 () at 
>> ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
>> 
>> Thread 2 (Thread 0x7f68ae6fb640 (LWP 60532) "apache2"):
>> #0  0x00007f68af72e7ed in __GI___select (nfds=0, readfds=0x0, writefds=0x0, 
>> exceptfds=0x0, timeout=0x7f68ae6fad60) at 
>> ../sysdeps/unix/sysv/linux/select.c:69
>> #1  0x00007f68af865c09 in apr_sleep () from 
>> target:/lib/x86_64-linux-gnu/libapr-1.so.0
>> --Type <RET> for more, q to quit, c to continue without paging--
>> #2  0x00007f68af41d11c in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #3  0x00007f68af6a7b43 in start_thread (arg=<optimized out>) at 
>> ./nptl/pthread_create.c:442
>> #4  0x00007f68af739a00 in clone3 () at 
>> ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
>> 
>> Thread 1 (Thread 0x7f68af59a780 (LWP 60501) "apache2"):
>> #0  0x00007f68af72bd7f in __GI___poll (fds=0x7ffe9f0b9e90, nfds=1, 
>> timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
>> #1  0x00007f68af85e0fb in apr_poll () from 
>> target:/lib/x86_64-linux-gnu/libapr-1.so.0
>> #2  0x00007f68af4222d8 in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #3  0x00007f68af423f1f in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #4  0x000055c9771cc73d in ap_run_pre_mpm ()
>> #5  0x00007f68af478455 in ?? () from 
>> target:/usr/lib/apache2/modules/mod_mpm_event.so
>> #6  0x000055c9771c30e8 in ap_run_mpm ()
>> #7  0x000055c9771c2609 in main ()
>> (gdb) 
>> (gdb) 
>> (gdb) 
>> (gdb) 
>> (gdb) thread apply all bt
>> 
>> Thread 4 (Thread 0x7f68ad6f9640 (LWP 60534) "apache2"):
>> #0  __futex_abstimed_wait_common64 (private=-1359973880, cancel=true, 
>> abstime=0x7f68ad6f7220, op=137, expected=0, futex_word=0x7f68af3b49a8 
>> <_PyRuntime+424>) at ./nptl/futex-internal.c:57
>> #1  __futex_abstimed_wait_common (cancel=true, private=-1359973880, 
>> abstime=0x7f68ad6f7220, clockid=-1359689157, expected=0, 
>> futex_word=0x7f68af3b49a8 <_PyRuntime+424>) at ./nptl/futex-internal.c:87
>> #2  __GI___futex_abstimed_wait_cancelable64 
>> (futex_word=futex_word@entry=0x7f68af3b49a8 <_PyRuntime+424>, 
>> expected=expected@entry=0, clockid=clockid@entry=1, 
>> abstime=abstime@entry=0x7f68ad6f7220, private=private@entry=0) at 
>> ./nptl/futex-internal.c:139
>> #3  0x00007f68af6a6f1b in __pthread_cond_wait_common 
>> (abstime=0x7f68ad6f7220, clockid=1, mutex=0x7f68af3b49b0 <_PyRuntime+432>, 
>> cond=0x7f68af3b4980 <_PyRuntime+384>) at ./nptl/pthread_cond_wait.c:503
>> #4  ___pthread_cond_timedwait64 (cond=0x7f68af3b4980 <_PyRuntime+384>, 
>> mutex=0x7f68af3b49b0 <_PyRuntime+432>, abstime=0x7f68ad6f7220) at 
>> ./nptl/pthread_cond_wait.c:652
>> #5  0x00007f68aefe5df5 in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #6  0x00007f68aefe6292 in PyEval_RestoreThread () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #7  0x00007f68af02f1dc in PyGILState_Ensure () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #8  0x00007f68ac30d6e3 in ?? () from 
>> target:/usr/lib/python3.10/lib-dynload/_sqlite3.cpython-310-x86_64-linux-gnu.so
>> #9  0x00007f68a750b01a in sqlite3LeaveMutexAndCloseZombie () from 
>> target:/lib/x86_64-linux-gnu/libsqlite3.so.0
>> #10 0x00007f68a750b2d6 in ?? () from 
>> target:/lib/x86_64-linux-gnu/libsqlite3.so.0
>> #11 0x00007f68ac3087d6 in ?? () from 
>> target:/usr/lib/python3.10/lib-dynload/_sqlite3.cpython-310-x86_64-linux-gnu.so
>> #12 0x00007f68aef118ba in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #13 0x00007f68aee9aeee in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #14 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #15 0x00007f68aee9aeee in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #16 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #17 0x00007f68aee97766 in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #18 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #19 0x00007f68aee9c9b8 in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #20 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #21 0x00007f68aee97766 in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #22 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #23 0x00007f68aee9aeee in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #24 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #25 0x00007f68aee9aeee in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #26 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #27 0x00007f68aef08118 in PyVectorcall_Call () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #28 0x00007f68aee97766 in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #29 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #30 0x00007f68aee9962e in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #31 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #32 0x00007f68aef08618 in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #33 0x00007f68aee99458 in _PyEval_EvalFrameDefault () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #34 0x00007f68aefe781f in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #35 0x00007f68aef086ac in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #36 0x00007f68af41680f in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #37 0x00007f68af41c9c8 in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #38 0x00007f68af6a7b43 in start_thread (arg=<optimized out>) at 
>> ./nptl/pthread_create.c:442
>> #39 0x00007f68af739a00 in clone3 () at 
>> ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
>> 
>> Thread 3 (Thread 0x7f68adefa640 (LWP 60533) "apache2"):
>> #0  __futex_abstimed_wait_common64 (private=0, cancel=true, 
>> abstime=0x7f68adef9d80, op=137, expected=0, futex_word=0x7f68af3b49a8 
>> <_PyRuntime+424>) at ./nptl/futex-internal.c:57
>> #1  __futex_abstimed_wait_common (cancel=true, private=0, 
>> abstime=0x7f68adef9d80, clockid=0, expected=0, futex_word=0x7f68af3b49a8 
>> <_PyRuntime+424>) at ./nptl/futex-internal.c:87
>> #2  __GI___futex_abstimed_wait_cancelable64 
>> (futex_word=futex_word@entry=0x7f68af3b49a8 <_PyRuntime+424>, 
>> expected=expected@entry=0, clockid=clockid@entry=1, 
>> abstime=abstime@entry=0x7f68adef9d80, private=private@entry=0) at 
>> ./nptl/futex-internal.c:139
>> #3  0x00007f68af6a6f1b in __pthread_cond_wait_common 
>> (abstime=0x7f68adef9d80, clockid=1, mutex=0x7f68af3b49b0 <_PyRuntime+432>, 
>> cond=0x7f68af3b4980 <_PyRuntime+384>) at ./nptl/pthread_cond_wait.c:503
>> #4  ___pthread_cond_timedwait64 (cond=0x7f68af3b4980 <_PyRuntime+384>, 
>> mutex=0x7f68af3b49b0 <_PyRuntime+432>, abstime=0x7f68adef9d80) at 
>> ./nptl/pthread_cond_wait.c:652
>> #5  0x00007f68aefe5df5 in ?? () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #6  0x00007f68aefe6292 in PyEval_RestoreThread () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #7  0x00007f68af02f1dc in PyGILState_Ensure () from 
>> target:/lib/x86_64-linux-gnu/libpython3.10.so.1.0
>> #8  0x00007f68af41cf30 in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #9  0x00007f68af6a7b43 in start_thread (arg=<optimized out>) at 
>> ./nptl/pthread_create.c:442
>> #10 0x00007f68af739a00 in clone3 () at 
>> ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
>> 
>> Thread 2 (Thread 0x7f68ae6fb640 (LWP 60532) "apache2"):
>> #0  0x00007f68af72e7ed in __GI___select (nfds=0, readfds=0x0, writefds=0x0, 
>> exceptfds=0x0, timeout=0x7f68ae6fad60) at 
>> ../sysdeps/unix/sysv/linux/select.c:69
>> #1  0x00007f68af865c09 in apr_sleep () from 
>> target:/lib/x86_64-linux-gnu/libapr-1.so.0
>> --Type <RET> for more, q to quit, c to continue without paging--
>> #2  0x00007f68af41d11c in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #3  0x00007f68af6a7b43 in start_thread (arg=<optimized out>) at 
>> ./nptl/pthread_create.c:442
>> #4  0x00007f68af739a00 in clone3 () at 
>> ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
>> 
>> Thread 1 (Thread 0x7f68af59a780 (LWP 60501) "apache2"):
>> #0  0x00007f68af72bd7f in __GI___poll (fds=0x7ffe9f0b9e90, nfds=1, 
>> timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
>> #1  0x00007f68af85e0fb in apr_poll () from 
>> target:/lib/x86_64-linux-gnu/libapr-1.so.0
>> #2  0x00007f68af4222d8 in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #3  0x00007f68af423f1f in ?? () from 
>> target:/usr/lib/apache2/modules/mod_wsgi.so
>> #4  0x000055c9771cc73d in ap_run_pre_mpm ()
>> #5  0x00007f68af478455 in ?? () from 
>> target:/usr/lib/apache2/modules/mod_mpm_event.so
>> #6  0x000055c9771c30e8 in ap_run_mpm ()
>> #7  0x000055c9771c2609 in main ()
>> (gdb) 
>> 
>> 
>> Best regards,
>> Carsten
>> 
>> 
>> Am 07.02.23 um 22:44 schrieb Graham Dumpleton:
>>> Only other thing can suggest if you know point at which it is hanging, is 
>>> to test and extract C stack trace by attaching gdb to the running process. 
>>> This may or may not work depending on your system setup and what tools are 
>>> installed.
>>> 
>>> Debugging Techniques — mod_wsgi 4.9.4 documentation 
>>> <https://modwsgi.readthedocs.io/en/master/user-guides/debugging-techniques.html#debugging-crashes-with-gdb>
>>> modwsgi.readthedocs.io 
>>> <https://modwsgi.readthedocs.io/en/master/user-guides/debugging-techniques.html#debugging-crashes-with-gdb>
>>>     favicon.ico 
>>> <https://modwsgi.readthedocs.io/en/master/user-guides/debugging-techniques.html#debugging-crashes-with-gdb>
>>> 
>>> <https://modwsgi.readthedocs.io/en/master/user-guides/debugging-techniques.html#debugging-crashes-with-gdb>
>>> 
>>> 
>>> That may give some clues.
>>> 
>>> Graham
>>> 
>>>> On 8 Feb 2023, at 8:42 am, Graham Dumpleton <graham.dumple...@gmail.com> 
>>>> wrote:
>>>> 
>>>> Is any of your code using ctypes module for Apache, or any other module 
>>>> which is used to call into C code by writing Python code only?
>>>> 
>>>> Graham
>>>> 
>> 
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "modwsgi" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to modwsgi+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/modwsgi/a09f8380-eddd-e859-911b-5919d44ea610%40cafu.de.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"modwsgi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to modwsgi+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/modwsgi/F127EEEA-9ADD-4655-8A77-C5B4E4B165C4%40gmail.com.

Reply via email to