SUMMARY After commit 2329f29edc8d83b4823995a184ed454b580f0809 ([Python] Don't use Qt in pythonserver executable for avoding problems with PyQt5), Cantor crashes every time I run python code. ADDITIONAL INFORMATION I don't think the backtrace will be very informative but I couldn't make it any better: Application: Cantor (cantor), signal: Segmentation fault Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [Current thread is 1 (Thread 0x7fb0a6444780 (LWP 30265))] Thread 4 (Thread 0x7fb09132d700 (LWP 30268)): #0 0x00007fb0abc989f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55e1e73be828) at ../sysdeps/unix/sysv/linux/futex-internal.h:88 #1 __pthread_cond_wait_common (abstime=0x0, mutex=0x55e1e73be7d8, cond=0x55e1e73be800) at pthread_cond_wait.c:502 #2 __pthread_cond_wait (cond=0x55e1e73be800, mutex=0x55e1e73be7d8) at pthread_cond_wait.c:655 #3 0x00007fb091dcf3da in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #4 0x00007fb091dcf107 in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #5 0x00007fb0abc926db in start_thread (arg=0x7fb09132d700) at pthread_create.c:463 #6 0x00007fb0af89688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 3 (Thread 0x7fb099f37700 (LWP 30267)): #0 0x00007fb0af8850b4 in __GI___libc_read (fd=7, buf=0x7fb099f36be0, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:27 #1 0x00007fb0aa438c81 in g_wakeup_acknowledge () from /home/jsardid/Documents/al3/cantor/cantor-python-lib/libglib-2.0.so.0 #2 0x00007fb0aa3f2788 in g_main_context_check () from /home/jsardid/Documents/al3/cantor/cantor-python-lib/libglib-2.0.so.0 #3 0x00007fb0aa3f2c56 in g_main_context_iterate.isra () from /home/jsardid/Documents/al3/cantor/cantor-python-lib/libglib-2.0.so.0 #4 0x00007fb0aa3f2dce in g_main_context_iteration () from /home/jsardid/Documents/al3/cantor/cantor-python-lib/libglib-2.0.so.0 #5 0x00007fb0afe43dcb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #6 0x00007fb0afde503a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #7 0x00007fb0afc0c4ca in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #8 0x00007fb0acc6e015 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5 #9 0x00007fb0afc0dc72 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #10 0x00007fb0abc926db in start_thread (arg=0x7fb099f37700) at pthread_create.c:463 #11 0x00007fb0af89688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 2 (Thread 0x7fb0a2be7700 (LWP 30266)): #0 0x00007fb0af889bf9 in __GI___poll (fds=0x7fb0a2be6d28, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 #1 0x00007fb0a8e70fc0 in _xcb_conn_wait () from /home/jsardid/Documents/al3/cantor/cantor-python-lib/libxcb.so.1 #2 0x00007fb0a8e72a4b in xcb_wait_for_event () from /home/jsardid/Documents/al3/cantor/cantor-python-lib/libxcb.so.1 #3 0x00007fb0a5b1f578 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5 #4 0x00007fb0afc0dc72 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #5 0x00007fb0abc926db in start_thread (arg=0x7fb0a2be7700) at pthread_create.c:463 #6 0x00007fb0af89688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 1 (Thread 0x7fb0a6444780 (LWP 30265)): [KCrash Handler] #6 0x00007fb0afd63a80 in QProcess::kill() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #7 0x00007fb0871bf98b in PythonSession::logout() () from /usr/x86_64-linux-gnu/qt5/libcantor_pythonbackend.so #8 0x00007fb0871bdb64 in PythonSession::reportServerProcessError(QProcess::ProcessError) () from /usr/x86_64-linux-gnu/qt5/libcantor_pythonbackend.so #9 0x00007fb0afe1698f in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #10 0x00007fb0afd61c21 in QProcess::errorOccurred(QProcess::ProcessError) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #11 0x00007fb0afd6894e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #12 0x00007fb0afd68ac9 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #13 0x00007fb0afe16875 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #14 0x00007fb0afe23178 in QSocketNotifier::activated(int, QSocketNotifier::QPrivateSignal) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #15 0x00007fb0afe23532 in QSocketNotifier::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #16 0x00007fb0b0be265c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #17 0x00007fb0b0be9b90 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #18 0x00007fb0afde6d18 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #19 0x00007fb0afe44a18 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #20 0x00007fb0aa3f2af8 in g_main_context_dispatch () from /home/jsardid/Documents/al3/cantor/cantor-python-lib/libglib-2.0.so.0 #21 0x00007fb0aa3f2d41 in g_main_context_iterate.isra () from /home/jsardid/Documents/al3/cantor/cantor-python-lib/libglib-2.0.so.0 #22 0x00007fb0aa3f2dce in g_main_context_iteration () from /home/jsardid/Documents/al3/cantor/cantor-python-lib/libglib-2.0.so.0 #23 0x00007fb0afe43daf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #24 0x00007fb0afde503a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #25 0x00007fb0afdee170 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #26 0x000055e1e55bf6e2 in main ()
Could you please attache debug output from Cantor? Also, could you uninstall installed Cantor, rebuild the app, and install it again?
(In reply to Nikita Sirgienko from comment #1) > Could you please attache debug output from Cantor? How do I do that? I tried removing "-DCMAKE_BUILD_TYPE=Release -Wnodev" from cmake, but all I can get in the output is: QObject::disconnect: Unexpected null parameter KCrash: crashing... crashRecursionCounter = 2 KCrash: Application Name = cantor path = /usr/bin pid = 13042 KCrash: Arguments: /usr/bin/cantor KCrash: Attempting to start /usr/lib/x86_64-linux-gnu/libexec/drkonqi from kdeinit sock_file=/run/user/1000/kdeinit5__0 > Also, could you uninstall installed Cantor, rebuild the app, and install it > again? Did that already, same behavior (and output)
It even happens parsing a python comment, so nothing is really executed
(In reply to avlas from comment #2) > (In reply to Nikita Sirgienko from comment #1) > > Could you please attache debug output from Cantor? > > How do I do that? I tried removing "-DCMAKE_BUILD_TYPE=Release -Wnodev" from > cmake, but all I can get in the output is: > > QObject::disconnect: Unexpected null parameter > KCrash: crashing... crashRecursionCounter = 2 > KCrash: Application Name = cantor path = /usr/bin pid = 13042 > KCrash: Arguments: /usr/bin/cantor > KCrash: Attempting to start /usr/lib/x86_64-linux-gnu/libexec/drkonqi from > kdeinit > sock_file=/run/user/1000/kdeinit5__0 > Add "-DCMAKE_BUILD_TYPe=debug"
(In reply to Nikita Sirgienko from comment #4) > Add "-DCMAKE_BUILD_TYPe=debug" Done: dir: "/usr/lib/x86_64-linux-gnu/qt5/plugins/cantor/backends" Creating MaximaBackend Creating NullBackend Creating PythonBackend Creating PythonBackend Creating SageBackend Creating ScilabBackend dir: "/usr/bin/cantor/backends" Backend "Python 3" offers extensions: ("LinearAlgebraExtension", "PackagingExtension", "PlotExtension", "ScriptExtension", "VariableManagementExtension") PythonSession(0x5599333f1240) Cantor::VariableManagementExtension(0x5599334314c0, name = "VariableManagementExtension") PythonHighlighter constructor PythonKeywords constructor new worksheetaccess interface loading assistants... dir: "/usr/lib/x86_64-linux-gnu/qt5/plugins/cantor/assistants" plugin "GràficAvançat" is not supported by "Python 3" plugin "Crea una matriu" is supported by "Python 3" , requires extensions ("LinearAlgebraExtension") plugin "Deriva" is not supported by "Python 3" plugin "Valors propis (autovalors)" is not supported by "Python 3" plugin "Vectors propis (autovectors)" is not supported by "Python 3" plugin "Importació de paquet" is supported by "Python 3" , requires extensions ("PackagingExtension") plugin "Integra" is not supported by "Python 3" plugin "Inverteix una matriu" is not supported by "Python 3" plugin "Plot2d" is supported by "Python 3" , requires extensions ("PlotExtension") plugin "Plot3d" is supported by "Python 3" , requires extensions ("PlotExtension") plugin "Gràfic de Qalculate" is not supported by "Python 3" plugin "ExecutaScript" is supported by "Python 3" , requires extensions ("ScriptExtension") plugin "Resol" is not supported by "Python 3" dir: "/usr/bin/cantor/assistants" loading panel plugins for session of type "Python 3" Requesting capabilities of Python3Session dir: "/usr/lib/x86_64-linux-gnu/qt5/plugins/cantor/panels" plugin "Ajuda" is supported, requires extensions ("") plugin "Gestor de variables" is supported, requires extensions ("VariableManagementExtension") dir: "/usr/bin/cantor/panels" Requesting capabilities of Python3Session Entry Appended adding panel for "Ajuda" adding panel for "Gestor de variables" PythonSession(0x559933a925f0) Cantor::VariableManagementExtension(0x5599334314c0, name = "VariableManagementExtension") loading entries Entry Appended Entry Appended setting result to a type 1 result update Entry Entry Appended Entry Appended setting result to a type 1 result update Entry Entry Appended setting result to a type 1 result update Entry Entry Appended setting result to a type 1 result update Entry Entry Appended PythonHighlighter constructor loading assistants... dir: "/usr/lib/x86_64-linux-gnu/qt5/plugins/cantor/assistants" plugin "GràficAvançat" is not supported by "Python 3" plugin "Crea una matriu" is supported by "Python 3" , requires extensions ("LinearAlgebraExtension") plugin "Deriva" is not supported by "Python 3" plugin "Valors propis (autovalors)" is not supported by "Python 3" plugin "Vectors propis (autovectors)" is not supported by "Python 3" plugin "Importació de paquet" is supported by "Python 3" , requires extensions ("PackagingExtension") plugin "Integra" is not supported by "Python 3" plugin "Inverteix una matriu" is not supported by "Python 3" plugin "Plot2d" is supported by "Python 3" , requires extensions ("PlotExtension") plugin "Plot3d" is supported by "Python 3" , requires extensions ("PlotExtension") plugin "Gràfic de Qalculate" is not supported by "Python 3" plugin "ExecutaScript" is supported by "Python 3" , requires extensions ("ScriptExtension") plugin "Resol" is not supported by "Python 3" dir: "/usr/bin/cantor/assistants" loading panel plugins for session of type "Python 3" Requesting capabilities of Python3Session dir: "/usr/lib/x86_64-linux-gnu/qt5/plugins/cantor/panels" plugin "Ajuda" is supported, requires extensions ("") plugin "Gestor de variables" is supported, requires extensions ("VariableManagementExtension") dir: "/usr/bin/cantor/panels" adding panel for "Ajuda" adding panel for "Gestor de variables" Requesting capabilities of Python3Session Worksheet successfully loaded in 0.057 seconds). login send command: "login" () send command: "setFilePath" ("/mypath/test_cantor.cws", "/mypath") wsStatusChange 1 evaluating: "# import sys\n\n# flag_append_local_dir = True\n# for path in sys.path:\n# if path == '.':\n# flag_append_local_dir = False\n# break\n\n# if flag_append_local_dir:\n# sys.path.append('.')\n\n# for path in sys.path:\n# print(path)" wsStatusChange 0 wsStatusChange 0 run first expression "# import sys\n\n# flag_append_local_dir = True\n# for path in sys.path:\n# if path == '.':\n# flag_append_local_dir = False\n# break\n\n# if flag_append_local_dir:\n# sys.path.append('.')\n\n# for path in sys.path:\n# print(path)\n" send command: "code" ("# import sys\n\n# flag_append_local_dir = True\n# for path in sys.path:\n# if path == '.':\n# flag_append_local_dir = False\n# break\n\n# if flag_append_local_dir:\n# sys.path.append('.')\n\n# for path in sys.path:\n# print(path)\n") Error: "Cantor Python server stopped working." loading assistants... dir: "/usr/lib/x86_64-linux-gnu/qt5/plugins/cantor/assistants" plugin "GràficAvançat" is not supported by "Python 3" plugin "Crea una matriu" is supported by "Python 3" , requires extensions ("LinearAlgebraExtension") plugin "Deriva" is not supported by "Python 3" plugin "Valors propis (autovalors)" is not supported by "Python 3" plugin "Vectors propis (autovectors)" is not supported by "Python 3" plugin "Importació de paquet" is supported by "Python 3" , requires extensions ("PackagingExtension") plugin "Integra" is not supported by "Python 3" plugin "Inverteix una matriu" is not supported by "Python 3" plugin "Plot2d" is supported by "Python 3" , requires extensions ("PlotExtension") plugin "Plot3d" is supported by "Python 3" , requires extensions ("PlotExtension") plugin "Gràfic de Qalculate" is not supported by "Python 3" plugin "ExecutaScript" is supported by "Python 3" , requires extensions ("ScriptExtension") plugin "Resol" is not supported by "Python 3" dir: "/usr/bin/cantor/assistants" loading panel plugins for session of type "Python 3" Requesting capabilities of Python3Session dir: "/usr/lib/x86_64-linux-gnu/qt5/plugins/cantor/panels" plugin "Ajuda" is supported, requires extensions ("") plugin "Gestor de variables" is supported, requires extensions ("VariableManagementExtension") dir: "/usr/bin/cantor/panels" adding panel for "Ajuda" adding panel for "Gestor de variables" Requesting capabilities of Python3Session send command: "exit" () Error: "Communication with Cantor python server failed for unknown reasons." loading assistants... dir: "/usr/lib/x86_64-linux-gnu/qt5/plugins/cantor/assistants" plugin "GràficAvançat" is not supported by "Python 3" plugin "Crea una matriu" is supported by "Python 3" , requires extensions ("LinearAlgebraExtension") plugin "Deriva" is not supported by "Python 3" plugin "Valors propis (autovalors)" is not supported by "Python 3" plugin "Vectors propis (autovectors)" is not supported by "Python 3" plugin "Importació de paquet" is supported by "Python 3" , requires extensions ("PackagingExtension") plugin "Integra" is not supported by "Python 3" plugin "Inverteix una matriu" is not supported by "Python 3" plugin "Plot2d" is supported by "Python 3" , requires extensions ("PlotExtension") plugin "Plot3d" is supported by "Python 3" , requires extensions ("PlotExtension") plugin "Gràfic de Qalculate" is not supported by "Python 3" plugin "ExecutaScript" is supported by "Python 3" , requires extensions ("ScriptExtension") plugin "Resol" is not supported by "Python 3" dir: "/usr/bin/cantor/assistants" loading panel plugins for session of type "Python 3" Requesting capabilities of Python3Session dir: "/usr/lib/x86_64-linux-gnu/qt5/plugins/cantor/panels" plugin "Ajuda" is supported, requires extensions ("") plugin "Gestor de variables" is supported, requires extensions ("VariableManagementExtension") dir: "/usr/bin/cantor/panels" adding panel for "Ajuda" adding panel for "Gestor de variables" Requesting capabilities of Python3Session Error: "Communication with Cantor python server failed for unknown reasons." loading assistants... dir: "/usr/lib/x86_64-linux-gnu/qt5/plugins/cantor/assistants" plugin "GràficAvançat" is not supported by "Python 3" plugin "Crea una matriu" is supported by "Python 3" , requires extensions ("LinearAlgebraExtension") plugin "Deriva" is not supported by "Python 3" plugin "Valors propis (autovalors)" is not supported by "Python 3" plugin "Vectors propis (autovectors)" is not supported by "Python 3" plugin "Importació de paquet" is supported by "Python 3" , requires extensions ("PackagingExtension") plugin "Integra" is not supported by "Python 3" plugin "Inverteix una matriu" is not supported by "Python 3" plugin "Plot2d" is supported by "Python 3" , requires extensions ("PlotExtension") plugin "Plot3d" is supported by "Python 3" , requires extensions ("PlotExtension") plugin "Gràfic de Qalculate" is not supported by "Python 3" plugin "ExecutaScript" is supported by "Python 3" , requires extensions ("ScriptExtension") plugin "Resol" is not supported by "Python 3" dir: "/usr/bin/cantor/assistants" loading panel plugins for session of type "Python 3" Requesting capabilities of Python3Session dir: "/usr/lib/x86_64-linux-gnu/qt5/plugins/cantor/panels" plugin "Ajuda" is supported, requires extensions ("") plugin "Gestor de variables" is supported, requires extensions ("VariableManagementExtension") dir: "/usr/bin/cantor/panels" adding panel for "Ajuda" adding panel for "Gestor de variables" Requesting capabilities of Python3Session send command: "exit" () cantor_python server still running, process kill enforced logout interrupting "# import sys\n\n# flag_append_local_dir = True\n# for path in sys.path:\n# if path == '.':\n# flag_append_local_dir = False\n# break\n\n# if flag_append_local_dir:\n# sys.path.append('.')\n\n# for path in sys.path:\n# print(path)" done interrupting wsStatusChange 1 wsStatusChange 1 wsStatusChange 1 wsStatusChange 1 wsStatusChange 2 wsStatusChange 2 wsStatusChange 2 wsStatusChange 2 QObject::disconnect: Unexpected null parameter KCrash: crashing... crashRecursionCounter = 2 KCrash: Application Name = cantor path = /usr/bin pid = 30760 KCrash: Arguments: /usr/bin/cantor KCrash: Attempting to start /usr/lib/x86_64-linux-gnu/libexec/drkonqi from kdeinit sock_file=/run/user/1000/kdeinit5__0
I think it's an incompatibility issue as crash does not happen unless I load a previously saved cws file
Good catch, also your traceback was very helpfull, thanks.
Git commit b441bebce8ad6b9ef33f0a49f2c2599bc73962d1 by Nikita Sirgienko. Committed on 05/07/2019 at 16:03. Pushed by sirgienko into branch 'master'. [Python] Urgent server side fix FIXED-IN: 19.08 M +1 -1 src/backends/python/pythonservermain.cpp https://commits.kde.org/cantor/b441bebce8ad6b9ef33f0a49f2c2599bc73962d1
(In reply to Nikita Sirgienko from comment #8) > Git commit b441bebce8ad6b9ef33f0a49f2c2599bc73962d1 by Nikita Sirgienko. > Committed on 05/07/2019 at 16:03. > Pushed by sirgienko into branch 'master'. > > [Python] Urgent server side fix > FIXED-IN: 19.08 > > M +1 -1 src/backends/python/pythonservermain.cpp > > https://commits.kde.org/cantor/b441bebce8ad6b9ef33f0a49f2c2599bc73962d1 Wow, that was fast, thank you!