Bug 184941 - ktorrent ignores connection limits when using webseeds
Summary: ktorrent ignores connection limits when using webseeds
Alias: None
Product: ktorrent
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: NOR normal
Target Milestone: ---
Assignee: Joris Guisson
Depends on:
Reported: 2009-02-19 14:21 UTC by Pierre Schmitz
Modified: 2012-04-20 19:04 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Note You need to log in before you can comment on or make changes to this bug.
Description Pierre Schmitz 2009-02-19 14:21:32 UTC
Version:           3.2 (using KDE 4.2.0)
Compiler:          gcc 4.3.3 Arch Linux
OS:                Linux
Installed from:    Unspecified Linux

We have added some of hour http mirrors (53) as webseeds to our torrent files in order to speed up the inital seeding and to prevent the torrent from dieing when users stop seeding.

If you download such a torrent with KTorrent it ignores any connection limit you have set in the options dialog and will just download from every mirror simultanesly.

This seems to produce too much overhead espeically if you have an internet connection with a small bandwidth and some (broken) network adapters or routers don't like that much cennections either.

Here are the torrents I mentioned above: http://downloads.archlinux.de/iso/2009.02/
Comment 1 Joris Guisson 2009-07-09 18:02:14 UTC
This is not fixed yet, why are you closing this ?
Comment 2 Pierre Schmitz 2009-07-09 19:02:48 UTC
Ah sorry,  You are right. I just tested with latest ktorrent. The bandwidth limit is recognized but the number of parallel connections is still not limited.
Comment 3 Joris Guisson 2012-04-20 19:04:36 UTC
Git commit b89d11079a83f25eb82ebdf2d477cda96c0df510 by Joris Guisson.
Committed on 20/04/2012 at 21:03.
Pushed by guisson into branch 'master'.

Webseeds now follow connection limits

M  +1    -0    ChangeLog
M  +2    -1    src/CMakeLists.txt
M  +3    -2    src/diskio/cache.cpp
M  +13   -0    src/download/webseed.cpp
M  +4    -2    src/download/webseed.h
M  +1    -0    src/peer/CMakeLists.txt
A  +107  -0    src/peer/connectionlimit.cpp     [License: GPL (v2+)]
A  +95   -0    src/peer/connectionlimit.h     [License: GPL (v2+)]
M  +13   -3    src/peer/peer.cpp
M  +5    -0    src/peer/peer.h
M  +53   -52   src/peer/peerconnector.cpp
M  +2    -1    src/peer/peerconnector.h
M  +105  -150  src/peer/peermanager.cpp
M  +62   -70   src/peer/peermanager.h
M  +5    -1    src/peer/tests/CMakeLists.txt
A  +137  -0    src/peer/tests/connectionlimittest.cpp     [License: GPL (v2+)]