apache / apache/pulsar-client-python

Segfaults in Python 3.11 on UWSGI worker close

Abierto
#153 8 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Python
Estrellas
75
Forks
53
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

We are using Python Pulsar producer clients in a web app that runs in UWSGI. We have our settings set to terminate and relaunch workers after a certain number of requests. We recently upgrade to Python 3.11 and the newest Pulsar client (3.3.0). At that point we started to see segfaults as the worker process was exiting. Here is the traceback that gets logged:

`!!! uWSGI process 85 got Segmentation Fault !!!
*** backtrace of 85 ***
uwsgi(uwsgi_backtrace+0x2f) [0x556ab933fcaf]
uwsgi(uwsgi_segfault+0x23) [0x556ab9340083]
/lib/x86_64-linux-gnu/libc.so.6(+0x3bfd0) [0x7f845c457fd0]
/usr/local/lib/python3.11/site-packages/pulsar_client.libs/libpulsar-2dce0d9f.so(+0x2b387a) [0x7f845770087a]
/usr/local/lib/python3.11/site-packages/_pulsar.cpython-311-x86_64-linux-gnu.so(+0xaf752) [0x7f8457f99752]
/usr/local/lib/python3.11/site-packages/_pulsar.cpython-311-x86_64-linux-gnu.so(+0x5399e) [0x7f8457f3d99e]
/usr/local/lib/python3.11/site-packages/_pulsar.cpython-311-x86_64-linux-gnu.so(+0x545ef) [0x7f8457f3e5ef]
/usr/local/lib/libpython3.11.so.1.0(+0x228f8a) [0x7f845c825f8a]
/usr/local/lib/libpython3.11.so.1.0(+0x1f4467) [0x7f845c7f1467]
/usr/local/lib/libpython3.11.so.1.0(+0x1f4030) [0x7f845c7f1030]
/usr/local/lib/libpython3.11.so.1.0(+0x29941f) [0x7f845c89641f]
/usr/local/lib/libpython3.11.so.1.0(+0x2993c5) [0x7f845c8963c5]
/usr/local/lib/libpython3.11.so.1.0(+0x1ed587) [0x7f845c7ea587]
/usr/local/lib/libpython3.11.so.1.0(_PyModule_ClearDict+0x115) [0x7f845c82bfe5]
/usr/local/lib/libpython3.11.so.1.0(+0x278bb6) [0x7f845c875bb6]
/usr/local/lib/libpython3.11.so.1.0(Py_FinalizeEx+0x12b) [0x7f845c8616ab]
uwsgi(uwsgi_plugins_atexit+0x71) [0x556ab933e121]
/lib/x86_64-linux-gnu/libc.so.6(+0x3e4dd) [0x7f845c45a4dd]
/lib/x86_64-linux-gnu/libc.so.6(+0x3e61a) [0x7f845c45a61a]
uwsgi(+0x3df6f) [0x556ab92f5f6f]
uwsgi(simple_goodbye_cruel_world+0x59) [0x556ab933f619]
uwsgi(+0x87658) [0x556ab933f658]
uwsgi(uwsgi_close_request+0x4d9) [0x556ab92f6bf9]
uwsgi(simple_loop_run+0xc0) [0x556ab933bbc0]
uwsgi(simple_loop+0x7b) [0x556ab933bc8b]
uwsgi(uwsgi_ignition+0x279) [0x556ab93403b9]
uwsgi(uwsgi_worker_run+0x25b) [0x556ab93449db]
uwsgi(uwsgi_run+0x43a) [0x556ab9344f2a]
uwsgi(+0x3aede) [0x556ab92f2ede]
/lib/x86_64-linux-gnu/libc.so.6(+0x271ca) [0x7f845c4431ca]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x85) [0x7f845c443285]
uwsgi(_start+0x21) [0x556ab92f2f01]
*** end of backtrace ***`

The resulting core files are filling up the server disks. We could ulimit them but we'd prefer to avoid that.

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.