Sentry run web command uwsgi segfault

Hi,
I am trying to install sentry on one of a server, following this guide,
/server/installation/python/

But when I try to start the server, I got this error segfault while doing this command
sentry --config ./ run web

*** Starting uWSGI 2.0.16 (64bit) on [Sun Feb 11 14:21:21 2018] ***
compiled with version: 4.8.2 on 11 February 2018 13:27:04
os: Linux-2.6.32-431.11.2.el6.x86_64 #1 SMP Tue Mar 25 19:59:55 UTC 2014
nodename: wqrgrid1087
machine: x86_64
clock source: unix
pcre jit disabled
detected number of CPU cores: 48
current working directory: /home/trle/sentry
detected binary path: /home/trle/sentry/bin/uwsgi
dropping root privileges as early as possible
your processes number limit is 40960
your memory page size is 4096 bytes
detected max file descriptor number: 364076
lock engine: pthread robust mutexes
thunder lock: enabled
uwsgi socket 0 bound to TCP address 0.0.0.0:9000 fd 3
dropping root privileges after socket binding
Python version: 2.7.6 (default, Apr 5 2014, 12:50:38) [GCC 4.8.2]
Set PythonHome to /home/trle/sentry
Python main interpreter initialized at 0x1ef93e0
dropping root privileges after plugin initialization
python threads support enabled
your server socket listen backlog is limited to 100 connections
your mercy for graceful operations on workers is 60 seconds
setting request body buffering size to 65536 bytes
mapped 1924480 bytes (1879 KB) for 12 cores
*** Operational MODE: preforking+threaded ***
dropping root privileges after application loading
spawned uWSGI master process (pid: 25689)
spawned uWSGI worker 1 (pid: 25707, cores: 4)
spawned uWSGI worker 2 (pid: 25708, cores: 4)
spawned uWSGI worker 3 (pid: 25709, cores: 4)
!!! uWSGI process 25707 got Segmentation Fault !!!
!!! uWSGI process 25709 got Segmentation Fault !!!
*** backtrace of 25707 ***
[Sentry] uWSGI worker 1(uwsgi_backtrace+0x2e) [0x46befe]
[Sentry] uWSGI worker 1(uwsgi_segfault+0x21) [0x46c291]
/lib64/libc.so.6(+0x326a0) [0x7f525ab736a0]
/home/trle/sentry/lib/python2.7/lib-dynload/_hashlib.so(+0x1d2e) [0x7f5253287d2e]
/home/trle/sentry/lib/python2.7/lib-dynload/_hashlib.so(+0x20dc) [0x7f52532880dc]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x4b7b) [0x7f525b212f6b]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x5613) [0x7f525b213a03]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x81d) [0x7f525b21446d]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(PyEval_EvalCode+0x32) [0x7f525b2145a2]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(PyImport_ExecCodeModuleEx+0x8c) [0x7f525b22be3c]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(+0x12019e) [0x7f525b22c19e]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(+0x121099) [0x7f525b22d099]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(+0x12019e) [0x7f525b22c19e]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(+0x121099) [0x7f525b22d099]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(PyImport_ImportModuleLevel+0x1c3) [0x7f525b22dcd3]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(+0x1003af) [0x7f525b20c3af]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(PyObject_Call+0x43) [0x7f525b15d7c3]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(PyObject_CallFunction+0xbb) [0x7f525b15d91b]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(PyImport_Import+0x112) [0x7f525b22eaa2]
/dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0(PyImport_ImportModule+0x1a) [0x7f525b22ec1a]
[Sentry] uWSGI worker 1(uwsgi_python_reset_random_seed+0x10) [0x481370]
[Sentry] uWSGI worker 1(uwsgi_python_post_fork+0x2a) [0x482a7a]
[Sentry] uWSGI worker 1(uwsgi_run+0x22e) [0x47115e]
[Sentry] uWSGI worker 1() [0x41ffee]
/lib64/libc.so.6(__libc_start_main+0xfd) [0x7f525ab5fd5d]
[Sentry] uWSGI worker 1() [0x420019]
*** end of backtrace ***
!!! uWSGI process 25708 got Segmentation Fault !!!

Versions of things:
~/sentry $ ldd which python
linux-vdso.so.1 => (0x00007fff111b0000)
libpython2.7.so.1.0 => /dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0 (0x00007f8abcd41000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f8abcb0b000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f8abc906000)
libutil.so.1 => /lib64/libutil.so.1 (0x00007f8abc703000)
libm.so.6 => /lib64/libm.so.6 (0x00007f8abc47f000)
libc.so.6 => /lib64/libc.so.6 (0x00007f8abc0ea000)
/lib64/ld-linux-x86-64.so.2 (0x00007f8abd165000)

~/sentry $ ldd which uwsgi
linux-vdso.so.1 => (0x00007fff66806000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fc485672000)
libm.so.6 => /lib64/libm.so.6 (0x00007fc4853ee000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fc4851e9000)
libz.so.1 => /dat/wqdata/stable/postgresql-10.2.1//lib/libz.so.1 (0x00007fc484fcd000)
libpcre.so.1 => /dat/wqdata/stable/pcre-8.35/lib/libpcre.so.1 (0x00007fc484d7f000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007fc484b7a000)
libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007fc48490e000)
libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00007fc48452e000)
libxml2.so.2 => /dat/wqdata/stable/libxml2-2.9.1/lib/libxml2.so.2 (0x00007fc484160000)
libutil.so.1 => /lib64/libutil.so.1 (0x00007fc483f5d000)
libpython2.7.so.1.0 => /dat/wqdata/stable/Python-2.7.6/lib/libpython2.7.so.1.0 (0x00007fc483b3b000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007fc483903000)
libc.so.6 => /lib64/libc.so.6 (0x00007fc48356f000)
/lib64/ld-linux-x86-64.so.2 (0x00007fc4858aa000)
libgssapi_krb5.so.2 => /dat/wqdata/stable/postgresql-10.2.1//lib/libgssapi_krb5.so.2 (0x00007fc483315000)
libkrb5.so.3 => /dat/wqdata/stable/postgresql-10.2.1//lib/libkrb5.so.3 (0x00007fc48301f000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007fc482e1b000)
libk5crypto.so.3 => /dat/wqdata/stable/postgresql-10.2.1//lib/libk5crypto.so.3 (0x00007fc482bd5000)
libfreebl3.so => /usr/lib64/libfreebl3.so (0x00007fc48295d000)
libcom_err.so.3 => /dat/wqdata/stable/postgresql-10.2.1//lib/libcom_err.so.3 (0x00007fc48275a000)
libkrb5support.so.0 => /dat/wqdata/stable/postgresql-10.2.1//lib/libkrb5support.so.0 (0x00007fc48254d000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fc482332000)

sentry.conf.py:
DATABASES = {
‘default’: {
‘ENGINE’: ‘sentry.db.postgres’,
‘NAME’: ‘postgres’,
‘USER’: ‘trle’,
‘PASSWORD’: ‘’,
‘HOST’: ‘’,
‘PORT’: ‘’,
‘AUTOCOMMIT’: True,
‘ATOMIC_REQUESTS’: False,
}
}

I do not have any ideas what might cause this kind of segfault @@
Machine is on centos 6.5 (but i think it’s not quite an issue)

Ive never seen this issue before, but I can say we don’t support CentOS.

Ah maybe the python package i used has some error, tried another python package and it seems working well now

Same issue over here!

I installed Sentry from scratch, following the (deprecated) python way (and also the docker way) and the two of them take me to the same error.

In this case, I’m using ubuntu 16.4 and my “uWSGI workers” are dying and restarting again and again. I cant get the Sentry web server running :frowning:

Any idea? @matt

to my experience, please try another standard python distribution, i switched to use another and it works

Thanks for you suggestion @sandcoffin. I’ve been trying with python 2.7 (as the documentation says) and got the worker’s error.

After reading your suggestion, I ran the installation with the latest Python and pip versions, but it doesn’t work. When I start the Sentry installation some tests failed and the installation stops, I ran them again with Python 2.7 and I was able again to install Sentry, but cant run due to the same worker’s error.

I’ll let you know when I reach a solution.

UPDATE: I can see these lines at the postgres log

LOG: could not receive data from client: Connection reset by peer
[unknown]@[unknown] LOG: could not accept SSL connection: Success

The last log line (indicating the SSL issue) is repeating all over the time while sentry run web is running.