xeus-python
xeus-python copied to clipboard
HoloViews segfaults the `xeus` kernel but not `ipykernel`
In JupyterLab in a linux-64 container:
import holoviews as hv
hv.extension('bokeh')
Kernel output:
Error: signal 11:
/opt/conda/envs/quantdev/bin/xpython(+0x84fd)[0x5634b39614fd]
/lib/x86_64-linux-gnu/libc.so.6(+0x3f040)[0x7f570017b040]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7f570017afb7]
/lib/x86_64-linux-gnu/libc.so.6(+0x3f040)[0x7f570017b040]
/opt/conda/envs/quantdev/bin/../lib/libpython3.7m.so.1.0(PyObject_Call+0xd)[0x7f570088fb5d]
/opt/conda/envs/quantdev/bin/../lib/libxeus-python.so.0(+0x35a89)[0x7f5700bc9a89]
/opt/conda/envs/quantdev/bin/../lib/libxeus-python.so.0(+0x35c4b)[0x7f5700bc9c4b]
/opt/conda/envs/quantdev/bin/../lib/libxeus.so.1(_ZN4xeus13xcomm_manager9comm_openERKNS_8xmessageE+0x39a)[0x7f5700b00aba]
/opt/conda/envs/quantdev/bin/../lib/libxeus.so.1(_ZN4xeus12xkernel_core8dispatchERN3zmq11multipart_tENS_7channelE+0x1e6)[0x7f5700b55586]
/opt/conda/envs/quantdev/bin/../lib/libxeus.so.1(_ZN4xeus6xshell3runEv+0x449)[0x7f5700b6e259]
[I 2021-04-15 12:01:38.809 SingleUserLabApp restarter:71] AsyncIOLoopKernelRestarter: restarting kernel (1/5), keep random ports
faulthandler output:
Fatal Python error: Segmentation fault
Thread 0x00007f56fd72c700 (most recent call first):
File "/opt/conda/envs/quantdev/lib/python3.7/threading.py", line 296 in wait
File "/opt/conda/envs/quantdev/lib/python3.7/threading.py", line 552 in wait
File "/opt/conda/envs/quantdev/lib/python3.7/site-packages/IPython/core/history.py", line 829 in run
File "/opt/conda/envs/quantdev/lib/python3.7/site-packages/IPython/core/history.py", line 58 in needs_sqlite
File "/opt/conda/envs/quantdev/lib/python3.7/site-packages/decorator.py", line 231 in fun
File "/opt/conda/envs/quantdev/lib/python3.7/threading.py", line 926 in _bootstrap_inner
File "/opt/conda/envs/quantdev/lib/python3.7/threading.py", line 890 in _bootstrap
Current thread 0x00007f5700a3f9c0 (most recent call first):
I've tried to specify a minimal env to repro it:
mamba create -n segfault --file env.txt
env.txt
bokeh=2.3.1=py37h89c1867_0
bottleneck=1.3.2=py37h902c9e0_3
datashader=0.12.1=pyh44b312d_0
holoviews=1.14.3=pyhd8ed1ab_0
hvplot=0.7.1=pyh44b312d_0
ipykernel=5.5.3=py37h085eea5_0
ipython=7.22.0=py37h085eea5_0
ipywidgets=7.6.3=pyhd3deb0d_0
jupyter-packaging=0.8.3=pyhd8ed1ab_0
jupyter-server-proxy=3.0.2=pyhd8ed1ab_0
jupyter_bokeh=3.0.0=pyhd8ed1ab_0
jupyter_client=6.1.12=pyhd8ed1ab_0
jupyter_console=6.4.0=pyhd8ed1ab_0
jupyter_core=4.7.1=py37h89c1867_0
jupyter_server=1.6.0=py37h89c1867_0
jupyter_telemetry=0.1.0=pyhd8ed1ab_1
jupyterlab=3.0.14=pyhd8ed1ab_0
jupyterlab_server=2.4.0=pyhd8ed1ab_0
jupyterlab_widgets=1.0.0=pyhd8ed1ab_1
mkl=2020.4=h726a3e6_304
mkl-service=2.3.0=py37h8f50634_2
mkl_fft=1.3.0=py37h902c9e0_1
mkl_random=1.2.0=py37h9fdb41a_1
notebook=6.3.0=py37h89c1867_0
numba=0.53.1=py37h134767a_0
numdifftools=0.9.39=py_0
numexpr=2.7.3=py37hdc94413_0
numpy=1.20.2=py37h038b26d_0
pandas=1.2.3=py37hdc94413_0
pyarrow=2.0.0=py37he2832ee_32_cpu
pyviz_comms=2.0.1=pyhd3deb0d_0
xeus=1.0.1=h7d0c39e_2
xeus-python=0.12.3=py37h52ea871_0
Yup, confirmed the above environment reproduces the segfault in a separate WSL install.
I'm looking into it this morning.