Registered Member
|
A few bug reports, all in latest svn. I'll gather more details if needed, but I've reproduced them, so you should be able to as well. I haven't had time to look into the code and find the problems myself.
1. This is a crash bug, If you select multiple torrents and choose "Remove Torrent and Data" from the right click menu, ktorrent crashes with "Invalid List Index" or something similar. 2. Several times I've used the "Move Data" feature on a multi-file torrent that's being seeded, and later the torrent will stop with an Error that it can't find some file, and will list a file at the old location. So somewhere the location of the files is not being correctly updated. Starting the torrent again causes it to work fine, so somehow the error stopping the torrent actually fixes the problem. As far as I can tell this is multi-file torrent only. 3. Pretty frequently (several times per download) chunks get stuck. What I mean by this is that they have an assigned peer, but that peer is not sending any data. Because that chunk has an assigned peer, it does not get picked to have another peer assigned and won't finish until there are no more chunks left with no assigned peers. This causes two problems in general: more chunks being open than need to be, and chunks being available for upload later. For me, it causes an additional problem. I have changed ktorrent's chunk selection method to prefer earlier chunks in the torrent. This allows me to start watching a video before it has completed downloading, but only once I solved this problem. My solution is a bad hack; I haven't had a chance to fix this correctly. Let me know if you need more info or better description; I may have a chance to take a look at these myself (especially the last one) on Sunday. |
Moderator
|
Got a backtrace ?
This is a known issue : http://bugs.kde.org/show_bug.cgi?id=158813 I'm looking for a solution at the moment
This is not a bug, the bittorrent protocol is not designed to be used as a streaming media protocol. So KTorrent is not designed to be used as a streaming media app. However if you are looking for a workaround, you could play around with the chunk priorities. The chunk selection algorithm in 3.0.0 is a lot stricter on priorities. The chunk selector used to select the highest priority chunk which is not being downloaded. Now it first finds this chunk and then it goes back to see if there are higher priority chunks, and it selects the one with the least peers of the higher priority chunks. So you could progressively increase the priority of the next couple of chunks. So you start at 0, and you set the priority of the first 5 or so as high, when the first one is downloaded, you make the 6th one also high priority. And so you move on until you have all the chunks of the movie. Note: this will lead to more useless pieces being downloaded. |
Registered Member
|
This doesn't happen to me. I tried selecting only 2 torrents tho... |
Registered Member
|
If you just ignore what I said about my modification, I still think this is a bug. Those connections should be killed if they aren't sending any data for that long... don't know why they aren't. Not having those chunks complete does mean you have less chunks available for upload early in the download. It also does mean that more chunks have to stay in memory. I was able to work around this for my own purposes, but the solution I used isn't the "right" solution. I basically just made ktorrent always prefer to assign a peer to a chunk that is partially completed and has a d/l speed of zero. I don't have a backtrace for the first / crash bug. I just tried to reproduce it and couldn't, though it's happened to me twice before. The only difference between what I just tried and before was that those torrents were downloading and these were seeding. I'll let you know if I can get one. |
Registered Member
|
This seems to stop chunks from getting stalled with piece downloaders assigned but with no data being received. |
Moderator
|
And it is a very crude way of doing this, every time a peer is a bit slow with starting to send data you will release it. |
Registered Member
|
I am now able to reproduce the crash when multiple torrents are selected and "Remove Torrent" is clicked in the context menu. This time, I was not doing "Remove Torrent + Data" so that is not necessary for the error to occur, but it can happen then as well. The torrents were all in the "Downloaded" state this time, so it's happened with downloading, seeding, and downloaded torrents. I also believe it's happened now with two, three, and five torrents selected.
When I start ktorrent again, the torrents are still in the list, and repeating causes the crash again. I'll leave KTorrent in this state for now in case you want me to do anything else. First crash:
The next two crashes were essentially identical, with this being from the second crash. In terminal:
Backtrace:
|
Moderator
|
|
Registered Member
|
Beats me. But it's happened to me quite a few times now when selecting multiple torrents to remove.
Unfortunately, I had to switch trackers, so I don't still have ktorrent in a mode where I can reproduce the bug at will. Since I don't exactly understand when this happens and when it doesn't, I'm not sure how easily I'd be able to confirm a fix. If you want, I can let you know next time I encounter it so testing will be easier? |
Registered users: Bing [Bot], Google [Bot], Yahoo [Bot]