FS#58364 - [mayavi] Segfaults upon starting

Attached to Project: Community Packages
Opened by Angel de Vicente (angelv) - Friday, 27 April 2018, 09:56 GMT
Last edited by Andrzej Giniewicz (Giniu) - Saturday, 20 October 2018, 14:07 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Andrzej Giniewicz (Giniu)
Architecture x86_64
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

On a fully updated system I just installed mayavi (version 4.5.0-6,
https://www.archlinux.org/packages/?q=mayavi), but just trying to start the program generates warnings and erros:

[angelv@comer ~]$ mayavi2
/usr/lib64/python2.7/site-packages/wx-3.0-gtk3/wx/_core.py:16629: UserWarning: wxPython/wxWidgets release number mismatch
warnings.warn("wxPython/wxWidgets release number mismatch")
********************************************************************************
WARNING: Imported VTK version (8.1) does not match the one used
to build the TVTK classes (7.1). This may cause problems.
Please rebuild TVTK.
********************************************************************************

Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/pyface/ui/wx/splash_screen.py", line 118, in _on_paint
dc = wx.PaintDC(window)
File "/usr/lib64/python2.7/site-packages/wx-3.0-gtk3/wx/_gdi.py", line 5130, in __init__
_gdi_.PaintDC_swiginit(self,_gdi_.new_PaintDC(*args, **kwargs))
wx._core.PyAssertionError: C++ assertion "IsOk()" failed at ./src/common/dcgraph.cpp(437) in SetTextBackground(): wxGCDC(cg)::SetTextBackground - invalid DC
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/pyface/ui/wx/splash_screen.py", line 118, in _on_paint
dc = wx.PaintDC(window)
File "/usr/lib64/python2.7/site-packages/wx-3.0-gtk3/wx/_gdi.py", line 5130, in __init__
_gdi_.PaintDC_swiginit(self,_gdi_.new_PaintDC(*args, **kwargs))

[... - traceback message repeated many times]

10:50:30: Debug: ScreenToClient cannot work when toplevel window is not shown
Segmentation fault (core dumped)
[angelv@comer ~]$


The journal has this information about the dumped core:
Apr 27 10:50:36 comer systemd-coredump[1410]: Process 1379 (mayavi2) of user 1000 dumped core.

Stack trace of thread 1379:
#0 0x00007f37f4a9f582 n/a (libgdk-3.so.0)
#1 0x00007f37f4ad688f gdk_x11_window_get_xid (libgdk-3.so.0)
#2 0x00007f37f6a2e743 n/a (_core_.so)
#3 0x00007f3858e656bd PyEval_EvalFrameEx (libpython2.7.so.1.0)
#4 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#5 0x00007f3858e64539 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#6 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#7 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#8 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#9 0x00007f3858eaba9f function_call.lto_priv.225 (libpython2.7.so.1.0)
#10 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#11 0x00007f3858ebc5ff instancemethod_call.lto_priv.140 (libpython2.7.so.1.0)
#12 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#13 0x00007f3858efce31 PyEval_CallObjectWithKeywords (libpython2.7.so.1.0)
#14 0x00007f37f69b54af _ZN12wxPyCallback12EventThunkerER7wxEvent (_core_.so)
#15 0x00007f37f584ea3e _ZN12wxEvtHandler23ProcessEventIfMatchesIdERK21wxEventTableEntryBasePS_R7wxEvent (libwx_baseu-3.0.so.0)
#16 0x00007f37f584ee5b _ZN12wxEvtHandler23SearchDynamicEventTableER7wxEvent (libwx_baseu-3.0.so.0)
#17 0x00007f37f584eef0 _ZN12wxEvtHandler11TryHereOnlyER7wxEvent (libwx_baseu-3.0.so.0)
#18 0x00007f37f584efa4 _ZN12wxEvtHandler19ProcessEventLocallyER7wxEvent (libwx_baseu-3.0.so.0)
#19 0x00007f37f584f006 _ZN12wxEvtHandler12ProcessEventER7wxEvent (libwx_baseu-3.0.so.0)
#20 0x00007f37f584ed57 _ZN12wxEvtHandler18SafelyProcessEventER7wxEvent (libwx_baseu-3.0.so.0)
#21 0x00007f37f5fadaef _ZN8wxWindow9DoSetSizeEiiiii (libwx_gtk3u_core-3.0.so.0)
#22 0x00007f37f6141b0b _ZN10wxBoxSizer11RecalcSizesEv (libwx_gtk3u_core-3.0.so.0)
#23 0x00007f37f613f92e _ZN7wxSizer6LayoutEv (libwx_gtk3u_core-3.0.so.0)
#24 0x00007f37f6a517c6 n/a (_core_.so)
#25 0x00007f3858e656bd PyEval_EvalFrameEx (libpython2.7.so.1.0)
#26 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#27 0x00007f3858e64539 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#28 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#29 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#30 0x00007f3858eabc48 function_call.lto_priv.225 (libpython2.7.so.1.0)
#31 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#32 0x00007f3858e6184c PyEval_EvalFrameEx (libpython2.7.so.1.0)
#33 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#34 0x00007f3858eabc48 function_call.lto_priv.225 (libpython2.7.so.1.0)
#35 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#36 0x00007f3858e6184c PyEval_EvalFrameEx (libpython2.7.so.1.0)
#37 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#38 0x00007f3858eabc48 function_call.lto_priv.225 (libpython2.7.so.1.0)
#39 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#40 0x00007f3858ebc5ff instancemethod_call.lto_priv.140 (libpython2.7.so.1.0)
#41 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#42 0x00007f3858ea0be8 slot_tp_init (libpython2.7.so.1.0)
#43 0x00007f3858eca0e5 type_call.lto_priv.51 (libpython2.7.so.1.0)
#44 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#45 0x00007f3858e63fde PyEval_EvalFrameEx (libpython2.7.so.1.0)
#46 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#47 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#48 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#49 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#50 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#51 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#52 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#53 0x00007f3858e640ef PyEval_EvalFrameEx (libpython2.7.so.1.0)
#54 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#55 0x00007f3858e640ef PyEval_EvalFrameEx (libpython2.7.so.1.0)
#56 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#57 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#58 0x00007f3858eabc48 function_call.lto_priv.225 (libpython2.7.so.1.0)
#59 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#60 0x00007f3858e6184c PyEval_EvalFrameEx (libpython2.7.so.1.0)
#61 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#62 0x00007f3858e64539 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#63 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)

Stack trace of thread 1408:
#0 0x00007f38592e9f2f __select (libc.so.6)
#1 0x00007f3857e51f60 n/a (time.so)
#2 0x00007f3858e5e83b PyEval_EvalFrameEx (libpython2.7.so.1.0)
#3 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#4 0x00007f3858eabc48 function_call.lto_priv.225 (libpython2.7.so.1.0)
#5 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#6 0x00007f3858e6184c PyEval_EvalFrameEx (libpython2.7.so.1.0)
#7 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#8 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#9 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#10 0x00007f3858eaba9f function_call.lto_priv.225 (libpython2.7.so.1.0)
#11 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#12 0x00007f3858ebc5ff instancemethod_call.lto_priv.140 (libpython2.7.so.1.0)
#13 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#14 0x00007f3858efce31 PyEval_CallObjectWithKeywords (libpython2.7.so.1.0)
#15 0x00007f3858f24ad6 t_bootstrap (libpython2.7.so.1.0)
#16 0x00007f38595bd0bc start_thread (libpthread.so.0)
#17 0x00007f38592f22ff __clone (libc.so.6)

Stack trace of thread 1406:
#0 0x00007f38592ecf09 syscall (libc.so.6)
#1 0x00007f384864e52d g_cond_wait_until (libglib-2.0.so.0)
#2 0x00007f38485d9903 n/a (libglib-2.0.so.0)
#3 0x00007f38485d9eee g_async_queue_timeout_pop (libglib-2.0.so.0)
#4 0x00007f3848630541 n/a (libglib-2.0.so.0)
#5 0x00007f384862fa2a n/a (libglib-2.0.so.0)
#6 0x00007f38595bd0bc start_thread (libpthread.so.0)
#7 0x00007f38592f22ff __clone (libc.so.6)

Stack trace of thread 1405:
#0 0x00007f38592e7cd9 __poll (libc.so.6)
#1 0x00007f3848607523 n/a (libglib-2.0.so.0)
#2 0x00007f384860763e g_main_context_iteration (libglib-2.0.so.0)
#3 0x00007f3848607692 n/a (libglib-2.0.so.0)
#4 0x00007f384862fa2a n/a (libglib-2.0.so.0)
#5 0x00007f38595bd0bc start_thread (libpthread.so.0)
#6 0x00007f38592f22ff __clone (libc.so.6)

Stack trace of thread 1407:
#0 0x00007f38592e9f2f __select (libc.so.6)
#1 0x00007f3857e51f60 n/a (time.so)
#2 0x00007f3858e5e83b PyEval_EvalFrameEx (libpython2.7.so.1.0)
#3 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#4 0x00007f3858eabc48 function_call.lto_priv.225 (libpython2.7.so.1.0)
#5 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#6 0x00007f3858e6184c PyEval_EvalFrameEx (libpython2.7.so.1.0)
#7 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#8 0x00007f3858e5ef20 PyEval_EvalFrameEx (libpython2.7.so.1.0)
#9 0x00007f3858efd746 PyEval_EvalCodeEx (libpython2.7.so.1.0)
#10 0x00007f3858eaba9f function_call.lto_priv.225 (libpython2.7.so.1.0)
#11 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#12 0x00007f3858ebc5ff instancemethod_call.lto_priv.140 (libpython2.7.so.1.0)
#13 0x00007f3858ec3d83 PyObject_Call (libpython2.7.so.1.0)
#14 0x00007f3858efce31 PyEval_CallObjectWithKeywords (libpython2.7.so.1.0)
#15 0x00007f3858f24ad6 t_bootstrap (libpython2.7.so.1.0)
#16 0x00007f38595bd0bc start_thread (libpthread.so.0)
#17 0x00007f38592f22ff __clone (libc.so.6)







This task depends upon
 FS#48113 - [vtk] support for python 3 

Closed by  Andrzej Giniewicz (Giniu)
Saturday, 20 October 2018, 14:07 GMT
Reason for closing:  Fixed
Comment by Angel de Vicente (angelv) - Sunday, 29 April 2018, 16:44 GMT
In my system the problem arises when the environment variable ETS_TOOLKIT has the default value (wx).

By setting it to qt4 I can start mayavi2 without issues (I still get the WARNING about VTK versions, but mayavi2 now starts OK and I can visualize data).
Comment by Andrzej Giniewicz (Giniu) - Thursday, 17 May 2018, 09:37 GMT
 FS#58534  stops mayavi rebuilds. Until it is resolved, we are stuck for now.
Comment by Andrzej Giniewicz (Giniu) - Friday, 01 June 2018, 07:50 GMT
 FS#48113  adds support for Python3 which is needed for Qt5 and modern backend
Comment by Bruno Pagani (ArchangeGabriel) - Thursday, 16 August 2018, 14:58 GMT
Should we move both Mayavi and VTK to Python 3? Note that currently the wx backend won’t be available because upstream does not support fully wxpython 4 (first version to be python 3).

Would the rebuild issue still be present in new version, python 3 based, and using Qt5 as a basis? Or maybe we can skip the doc/package it separately using some trick to make it build?
Comment by Andrzej Giniewicz (Giniu) - Thursday, 16 August 2018, 19:45 GMT
yes, as far as I tried,  FS#58534  stops building of mayavi in chroot. This kind of sucks. I'm trying to walk around this issue, but no luck till now.
Comment by Bruno Pagani (ArchangeGabriel) - Friday, 17 August 2018, 15:42 GMT
Let’s do that then. I’m updating VTK to python 3 now, I’ll let you move mayavi to the AUR and update it to python 3. I think you should keep being the maintainer on the AUR, and when things are figured out, just bring it back to [community].
Comment by Jingbei Li (Petron) - Sunday, 30 September 2018, 08:59 GMT
@Andrzej Giniewicz (Giniu)
Hi, I'm the maintainer of mayavi-py3 on AUR.
I'm trying to bring mayavi to python 3 either.
I post my PKGBUILD [here](https://github.com/petronny/mayavi).
It does package successfully with `extra-x86_64-build` but I don't have an Arch with GUI to test the package.
And I'm not sure if it can package on the official build machine.
Please take a look and I wish it can help you.
Comment by Andrzej Giniewicz (Giniu) - Sunday, 30 September 2018, 20:51 GMT
It is  FS#58534  that stops updates. You have line "xvfb-run python setup.py build" as well. Did you managed to build in clean chroot?
Comment by Jingbei Li (Petron) - Thursday, 04 October 2018, 12:10 GMT
Yes, extra-x86_64-build (from extra/devtools) is definitely a clean chroot build.
Comment by Andrzej Giniewicz (Giniu) - Thursday, 04 October 2018, 20:22 GMT
Thanks for letting me know, I will compare our pkgbuilds and try it :)
Comment by Andrzej Giniewicz (Giniu) - Saturday, 20 October 2018, 14:04 GMT
I switched to Qt5 and VTK8 and Python3 - thanks for help with this package! Please test if you can :)

I'm closing this (original issue).

Please open a new one if something is not right.

Loading...