This forum has been archived. All content is frozen. Please use KDE Discuss instead.

[bug] Ktorrent "just dies"

Tags: None
(comma "," separated)
Tanktalus
Registered Member
Posts
67
Karma
0
OS

[bug] Ktorrent "just dies"

Sat May 10, 2008 8:38 pm
I was using 2.2.5, and downloaded 8 fairly large torrent. That succeeded, eventually, taking about 4 days. However, shortly thereafter, ktorrent would just disappear, and pgrep would show that it was entirely gone.

So I upgraded to 2.2.6, just in case. No go - that would crash shortly after being started, most likely due to the torrents, I assume.

Well, seeing that ktorrent.org claimed no more bug fixes in the 2.x stream, and that kde4 apps could run in kde3, I went and installed the minimal kde4 libraries to get ktorrent 3 running. Lo and behold ... that crashes, too. First with 3.0.1, and since I already have kde4 libraries installed, I tried 3.0.2.

So that's the versioning. The problem is that ktorrent *does* pick up the 8 torrents I'm still seeding (to get back to a reasonable ratio), and enables 5 of them at seeming random (not that I care which ones). And then after a half hour or an hour, it just locks up and then dies.

I'm not really sure what diagnostic information I can gather, though I can tell you that ktorrent is trying to seed ~25GB of data, and the other torrents it still knows about would bring the total to over 50GB.
George
Moderator
Posts
5421
Karma
1

Sun May 11, 2008 9:34 am
So you don't get a KDE crash dialog ?
Tanktalus
Registered Member
Posts
67
Karma
0
OS

Sun May 11, 2008 2:01 pm
No, I've never seen a KDE crash dialog that I recall for *anything*, and definitely not here.

...

Apparently, I don't have drkonqi installed... going to do that now. Not sure whether I need the KDE3 version (as I'm running KDE 3) or the KDE4 version...
Tanktalus
Registered Member
Posts
67
Karma
0
OS

Sun May 11, 2008 8:57 pm
Even now, drkonqi doesn't come up when ktorrent goes away. Even the return code is 0, which surprised me.

I even brought up kdevelop, had it create a new kde 3 project (my kdevelop doesn't have templates for kde 4) where I inserted code that said:

Code: Select all
   char* bug = NULL;
   *bug = 3;


and this brought up drkonqi when I ran it from the commandline (didn't when I ran from inside kdevelop), so apparently that part is working ok. I even retried using optimized mode, and that still would bring up drkonqi.
George
Moderator
Posts
5421
Karma
1

Mon May 12, 2008 9:02 am
Then it is probably an uncaught exception or some other signal then a segmentation fault.

Could you run it in gdb until it crashes ? And then type in bt, and gdb should print a backtrace.
Tanktalus
Registered Member
Posts
67
Karma
0
OS

Mon May 12, 2008 1:18 pm
I'm getting this when adding the scheduler plugin ...

Code: Select all
#0  0xb7f96410 in __kernel_vsyscall ()
#1  0xb620e9ab in write () from /lib/libc.so.6
#2  0xb61bd747 in _IO_file_write () from /lib/libc.so.6
#3  0xb61bd415 in ?? () from /lib/libc.so.6
#4  0xb61bd6ef in _IO_do_write () from /lib/libc.so.6
#5  0xb61bdec5 in _IO_file_sync () from /lib/libc.so.6
#6  0xb61b2282 in fflush () from /lib/libc.so.6
#7  0xb7e39ea6 in ?? () from /usr/lib/qt4/libQtCore.so.4
#8  0xb7e3e720 in ?? () from /usr/lib/qt4/libQtCore.so.4
#9  0xb7e39a2f in QFSFileEngine::flush () from /usr/lib/qt4/libQtCore.so.4
#10 0xb7dff09d in QFile::flush () from /usr/lib/qt4/libQtCore.so.4
#11 0xb7e106fa in ?? () from /usr/lib/qt4/libQtCore.so.4
#12 0xb7e107b2 in QTextStream::flush () from /usr/lib/qt4/libQtCore.so.4
#13 0xb7e107d2 in flush () from /usr/lib/qt4/libQtCore.so.4
#14 0xb7e110a6 in endl () from /usr/lib/qt4/libQtCore.so.4
#15 0xb6d93bbd in ?? () from /usr/kde/4.0/lib/libbtcore.so.3
#16 0xb6d93524 in bt::endl () from /usr/kde/4.0/lib/libbtcore.so.3
#17 0xb6db2062 in bt::PeerManager::loadPeerList ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#18 0xb6ddb1f6 in bt::TorrentControl::continueStart ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#19 0xb6ddb51e in bt::TorrentControl::start ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#20 0xb7f6b2f5 in kt::QueueManager::startSafely ()
   from /usr/kde/4.0/lib/libktcore.so.3
#21 0xb7f6b61c in kt::QueueManager::start ()
   from /usr/kde/4.0/lib/libktcore.so.3
#22 0xb7f6c136 in kt::QueueManager::orderQueue ()
   from /usr/kde/4.0/lib/libktcore.so.3
#23 0xb7f6c207 in kt::QueueManager::torrentStopped ()
   from /usr/kde/4.0/lib/libktcore.so.3
#24 0xb7f6c828 in kt::QueueManager::qt_metacall ()
   from /usr/kde/4.0/lib/libktcore.so.3
#25 0xb7e6d449 in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#26 0xb7e6deaa in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#27 0xb6dc34f3 in bt::TorrentInterface::torrentStopped ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#28 0xb6dddc94 in bt::TorrentControl::stop ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#29 0xb7f6ab94 in kt::QueueManager::stopSafely ()
   from /usr/kde/4.0/lib/libktcore.so.3
#30 0xb7f6b27b in kt::QueueManager::stop ()
   from /usr/kde/4.0/lib/libktcore.so.3
#31 0xb7f6bfc8 in kt::QueueManager::orderQueue ()
   from /usr/kde/4.0/lib/libktcore.so.3
#32 0xb7f6c207 in kt::QueueManager::torrentStopped ()
   from /usr/kde/4.0/lib/libktcore.so.3
#33 0xb7f6c828 in kt::QueueManager::qt_metacall ()
   from /usr/kde/4.0/lib/libktcore.so.3
#34 0xb7e6d449 in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#35 0xb7e6deaa in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#36 0xb6dc34f3 in bt::TorrentInterface::torrentStopped ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#37 0xb6dddc94 in bt::TorrentControl::stop ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#38 0xb7f6ab94 in kt::QueueManager::stopSafely ()
   from /usr/kde/4.0/lib/libktcore.so.3
#39 0xb7f6b27b in kt::QueueManager::stop ()
   from /usr/kde/4.0/lib/libktcore.so.3
#40 0xb7f6bfc8 in kt::QueueManager::orderQueue ()
   from /usr/kde/4.0/lib/libktcore.so.3
#41 0xb7f6c207 in kt::QueueManager::torrentStopped ()
   from /usr/kde/4.0/lib/libktcore.so.3
#42 0xb7f6c828 in kt::QueueManager::qt_metacall ()
   from /usr/kde/4.0/lib/libktcore.so.3
#43 0xb7e6d449 in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#44 0xb7e6deaa in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#45 0xb6dc34f3 in bt::TorrentInterface::torrentStopped ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#46 0xb6dddc94 in bt::TorrentControl::stop ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#47 0xb7f6ab94 in kt::QueueManager::stopSafely ()
   from /usr/kde/4.0/lib/libktcore.so.3
#48 0xb7f6b27b in kt::QueueManager::stop ()
   from /usr/kde/4.0/lib/libktcore.so.3
#49 0xb7f6bfc8 in kt::QueueManager::orderQueue ()
   from /usr/kde/4.0/lib/libktcore.so.3
#50 0xb7f6c207 in kt::QueueManager::torrentStopped ()
   from /usr/kde/4.0/lib/libktcore.so.3
#51 0xb7f6c828 in kt::QueueManager::qt_metacall ()
   from /usr/kde/4.0/lib/libktcore.so.3
#52 0xb7e6d449 in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#53 0xb7e6deaa in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#54 0xb6dc34f3 in bt::TorrentInterface::torrentStopped ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#55 0xb6dddc94 in bt::TorrentControl::stop ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#56 0xb7f6ab94 in kt::QueueManager::stopSafely ()
   from /usr/kde/4.0/lib/libktcore.so.3
#57 0xb7f6b27b in kt::QueueManager::stop ()
   from /usr/kde/4.0/lib/libktcore.so.3
#58 0xb7f6bfc8 in kt::QueueManager::orderQueue ()
   from /usr/kde/4.0/lib/libktcore.so.3
#59 0xb7f6c207 in kt::QueueManager::torrentStopped ()
   from /usr/kde/4.0/lib/libktcore.so.3
#60 0xb7f6c828 in kt::QueueManager::qt_metacall ()
   from /usr/kde/4.0/lib/libktcore.so.3
#61 0xb7e6d449 in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#62 0xb7e6deaa in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#63 0xb6dc34f3 in bt::TorrentInterface::torrentStopped ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#64 0xb6dddc94 in bt::TorrentControl::stop ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#65 0xb7f6ab94 in kt::QueueManager::stopSafely ()
   from /usr/kde/4.0/lib/libktcore.so.3
#66 0xb7f6b27b in kt::QueueManager::stop ()
   from /usr/kde/4.0/lib/libktcore.so.3
#67 0xb7f6bfc8 in kt::QueueManager::orderQueue ()
   from /usr/kde/4.0/lib/libktcore.so.3
#68 0xb7f6c207 in kt::QueueManager::torrentStopped ()
   from /usr/kde/4.0/lib/libktcore.so.3
#69 0xb7f6c828 in kt::QueueManager::qt_metacall ()
   from /usr/kde/4.0/lib/libktcore.so.3
#70 0xb7e6d449 in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#71 0xb7e6deaa in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#72 0xb6dc34f3 in bt::TorrentInterface::torrentStopped ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#73 0xb6dddc94 in bt::TorrentControl::stop ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#74 0xb7f6ab94 in kt::QueueManager::stopSafely ()
   from /usr/kde/4.0/lib/libktcore.so.3
#75 0xb7f6b27b in kt::QueueManager::stop ()
   from /usr/kde/4.0/lib/libktcore.so.3
#76 0xb7f6bfc8 in kt::QueueManager::orderQueue ()
   from /usr/kde/4.0/lib/libktcore.so.3
#77 0xb7f6c207 in kt::QueueManager::torrentStopped ()
   from /usr/kde/4.0/lib/libktcore.so.3
#78 0xb7f6c828 in kt::QueueManager::qt_metacall ()
   from /usr/kde/4.0/lib/libktcore.so.3
#79 0xb7e6d449 in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#80 0xb7e6deaa in QMetaObject::activate () from /usr/lib/qt4/libQtCore.so.4
#81 0xb6dc34f3 in bt::TorrentInterface::torrentStopped ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#82 0xb6dddc94 in bt::TorrentControl::stop ()
   from /usr/kde/4.0/lib/libbtcore.so.3
#83 0xb7f6ab94 in kt::QueueManager::stopSafely ()
   from /usr/kde/4.0/lib/libktcore.so.3
#84 0xb7f6b27b in kt::QueueManager::stop ()
   from /usr/kde/4.0/lib/libktcore.so.3
#85 0xb7f6bfc8 in kt::QueueManager::orderQueue ()


and this continues on for a looooong time. It's the easiest-to-reproduce crash, as I don't need to wait long. Unfortunately, it does happen in a back-end process. Apparently, ktorrent forks or something, and gdb thinks the program has exited prior to its completion. Luckily, I remembered about the -p flag: gdb -p $(pgrep ktorrent). That got me attached, and bt then told me about this apparent infinite loop.
Tanktalus
Registered Member
Posts
67
Karma
0
OS

Thu May 22, 2008 5:20 am
Is there any other debug information I can gather that may help with this apparent infinite loop?

I've even gone to a new machine, amd64, all kde4 to start with (i.e., even my desktop is kde4), and I'm getting the same problem, even when I go try to delete a torrent.

Thanks,
George
Moderator
Posts
5421
Karma
1

Thu May 22, 2008 1:49 pm
I see what the problem is, it should not take long to fix.
George
Moderator
Posts
5421
Karma
1

Thu May 22, 2008 1:56 pm
OK, it should be fixed in revision 811166


Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot], Yahoo [Bot]