Skycoder42 / dolphin-seafile-plugin

A plugin for dolphin to show the seafile synchronization status

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Seafile Extension: Transport Error

j0hannes opened this issue · comments

Dolphin recently started to crash when opening a seafile folder. Running it with valgrind, I see the message "Seafile Extension: Transport Error" in dolphin and the following warnings on stdout:

(process:14914): Ccnet-WARNING **: 18:02:46.372: [client pool] Failed to connect.
(process:14914): Ccnet-WARNING **: 18:02:46.385: [Sea RPC] Failed to get client from pool.

This is the backtrace when run outside of valgrind:

Application: Dolphin (dolphin), signal: Aborted
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f37075b0800 (LWP 19561))]

Thread 6 (Thread 0x7f36d90b3700 (LWP 19622)):
[KCrash Handler]
#6  0x00007f3706da986b in raise () at /usr/lib/libc.so.6
#7  0x00007f3706d9440e in abort () at /usr/lib/libc.so.6
#8  0x00007f3706deb8b8 in __libc_message () at /usr/lib/libc.so.6
#9  0x00007f3706df1d4a in  () at /usr/lib/libc.so.6
#10 0x00007f3706df34dc in _int_free () at /usr/lib/libc.so.6
#11 0x00007f36db1b3f40 in SeafException::SeafException(_GError*) () at /usr/lib/qt/plugins/libfileviewseafileplugin.so
#12 0x00007f36db1b4798 in SeafStatus::reloadRepos() () at /usr/lib/qt/plugins/libfileviewseafileplugin.so
#13 0x00007f36db1b4870 in SeafStatus::ensureConnected() () at /usr/lib/qt/plugins/libfileviewseafileplugin.so
#14 0x00007f36db1b49da in SeafStatus::engage() () at /usr/lib/qt/plugins/libfileviewseafileplugin.so
#15 0x00007f36db1b34c6 in FileViewSeafilePlugin::beginRetrieval(QString const&) () at /usr/lib/qt/plugins/libfileviewseafileplugin.so
#16 0x00007f3706b124ea in UpdateItemStatesThread::run() () at /usr/lib/libdolphinprivate.so.5
#17 0x00007f3700e1fb45 in  () at /usr/lib/libQt5Core.so.5
#18 0x00007f36fbe53075 in start_thread () at /usr/lib/libpthread.so.0
#19 0x00007f3706e6b53f in clone () at /usr/lib/libc.so.6

Thread 5 (Thread 0x7f36e4b04700 (LWP 19565)):
#0  0x00007f3706e60ea9 in poll () at /usr/lib/libc.so.6
#1  0x00007f36f97c4523 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007f36f97c463e in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#3  0x00007f3701021054 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f3700fcc94c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#5  0x00007f3700e15a99 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#6  0x00007f3700e1fb45 in  () at /usr/lib/libQt5Core.so.5
#7  0x00007f36fbe53075 in start_thread () at /usr/lib/libpthread.so.0
#8  0x00007f3706e6b53f in clone () at /usr/lib/libc.so.6

Thread 4 (Thread 0x7f36e5fe1700 (LWP 19564)):
#0  0x00007f36fbe58ffc in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f36e6c7c124 in  () at /usr/lib/dri/i965_dri.so
#2  0x00007f36e6c7be18 in  () at /usr/lib/dri/i965_dri.so
#3  0x00007f36fbe53075 in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f3706e6b53f in clone () at /usr/lib/libc.so.6

Thread 3 (Thread 0x7f36ed994700 (LWP 19563)):
#0  0x00007f3706e60ea9 in poll () at /usr/lib/libc.so.6
#1  0x00007f36f97c4523 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007f36f97c463e in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#3  0x00007f3701021054 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f3700fcc94c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#5  0x00007f3700e15a99 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#6  0x00007f3701471976 in  () at /usr/lib/libQt5DBus.so.5
#7  0x00007f3700e1fb45 in  () at /usr/lib/libQt5Core.so.5
#8  0x00007f36fbe53075 in start_thread () at /usr/lib/libpthread.so.0
#9  0x00007f3706e6b53f in clone () at /usr/lib/libc.so.6

Thread 2 (Thread 0x7f36eff1d700 (LWP 19562)):
#0  0x00007f3706e60ea9 in poll () at /usr/lib/libc.so.6
#1  0x00007f36f90fe180 in  () at /usr/lib/libxcb.so.1
#2  0x00007f36f90ffe4b in xcb_wait_for_event () at /usr/lib/libxcb.so.1
#3  0x00007f36f2abb22a in  () at /usr/lib/libQt5XcbQpa.so.5
#4  0x00007f3700e1fb45 in  () at /usr/lib/libQt5Core.so.5
#5  0x00007f36fbe53075 in start_thread () at /usr/lib/libpthread.so.0
#6  0x00007f3706e6b53f in clone () at /usr/lib/libc.so.6

Thread 1 (Thread 0x7f37075b0800 (LWP 19561)):
#0  0x00007f36fbe58ffc in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f36f90fe393 in  () at /usr/lib/libxcb.so.1
#2  0x00007f36f90ffb3f in  () at /usr/lib/libxcb.so.1
#3  0x00007f36f90ffc51 in xcb_wait_for_reply () at /usr/lib/libxcb.so.1
#4  0x00007f36f2ab971c in QXcbConnection::sync() () at /usr/lib/libQt5XcbQpa.so.5
#5  0x00007f36f2adb33c in  () at /usr/lib/libQt5XcbQpa.so.5
#6  0x00007f36f2adb430 in  () at /usr/lib/libQt5XcbQpa.so.5
#7  0x00007f37019918b6 in QBackingStore::beginPaint(QRegion const&) () at /usr/lib/libQt5Gui.so.5
#8  0x00007f3701fe106d in  () at /usr/lib/libQt5Widgets.so.5
#9  0x00007f3701fe1489 in  () at /usr/lib/libQt5Widgets.so.5
#10 0x00007f3701ff8bd7 in QWidgetPrivate::syncBackingStore() () at /usr/lib/libQt5Widgets.so.5
#11 0x00007f37020113f9 in QWidget::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#12 0x00007f370211d125 in QMainWindow::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#13 0x00007f37048e8d1c in KMainWindow::event(QEvent*) () at /usr/lib/libKF5XmlGui.so.5
#14 0x00007f3704933536 in KXmlGuiWindow::event(QEvent*) () at /usr/lib/libKF5XmlGui.so.5
#15 0x00007f3701fd1a74 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#16 0x00007f3701fd9341 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#17 0x00007f3700fcdcb9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#18 0x00007f3700fd0d4c in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib/libQt5Core.so.5
#19 0x00007f37022e1446 in  () at /usr/lib/libQt5Widgets.so.5
#20 0x00007f37022e69f9 in  () at /usr/lib/libQt5Widgets.so.5
#21 0x00007f3700ff83d2 in QObject::event(QEvent*) () at /usr/lib/libQt5Core.so.5
#22 0x00007f37022f2b8c in QGraphicsScene::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#23 0x00007f3701fd1a74 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#24 0x00007f3701fd9341 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#25 0x00007f3700fcdcb9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#26 0x00007f3700fd0d4c in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib/libQt5Core.so.5
#27 0x00007f3701021a54 in  () at /usr/lib/libQt5Core.so.5
#28 0x00007f36f97c4368 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#29 0x00007f36f97c45b1 in  () at /usr/lib/libglib-2.0.so.0
#30 0x00007f36f97c463e in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#31 0x00007f3701021039 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#32 0x00007f36f2b50722 in  () at /usr/lib/libQt5XcbQpa.so.5
#33 0x00007f3700fcc94c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#34 0x00007f3700fd4c46 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#35 0x00007f370716eac2 in kdemain () at /usr/lib/libkdeinit5_dolphin.so
#36 0x00007f3706d9606b in __libc_start_main () at /usr/lib/libc.so.6
#37 0x00005617dd53e75a in _start ()

Thanks for reporting. I already discovered this myself, but am currently not able to work on the problem. I should be able to find the time within the next to weeks. Until then you will have to deactivate or uninstall the plugin to make dolphin usable again.

Okay, so the reason for the crash was simply me using the wrong method to free the error.

The reason for the error appearing seems to be that the current seafile runs without ccnet - which means I can't connect to it using ccnet. I will have to figure out how to connect in a different way...

Has been fixed by directly connecting to seafile using a local pipe instead of ccnet as proxy. Has been released and AUR was updated - wich means you should be fine with Version 1.1.0

Also, thanks to your stack trace I was able to fix the crashing itself, which means from now on errors like this one will only generate an error message and not crash anymore

Yes, it's working now. Thanks for this plugin. 👍