mirror of
https://github.com/transmission/transmission
synced 2025-02-20 13:16:53 +00:00
No description
The 'bad tracker' penalty was introduced in 2009 after a top tier trackers went down. Announces to it would hang, tying up an announce slot in libcurl for minutes at a time. If a user had enough torrents from that tracker, it could bottleneck all announce slots. The workaround was to deprioritize failing trackers so that they wouldn't obstruct other trackers. Its implementation could be better, however. There are two parts: 1. Deciding how frequently to retry unresponsive trackers 2. Once an unresponsive tracker announce was ready to go, it would be bumped down the queue if other announces were ready too. Part 2 probably contributes to #3931. If there are enough torrents loaded, there will always be good tracker announces that get pushed ahead of a bad one in the queue. Modifying 2's heuristics would be one option, but it seems simpler to remove it altogether now that getRetryInterval() grades more hashly for consecutive failures. Altering the retry interval also gives better visual feedback to users than Part 2 did. This commit removes "Part 2" as described above. |
||
---|---|---|
cli | ||
daemon | ||
extras | ||
gtk | ||
libtransmission | ||
m4 | ||
macosx | ||
po | ||
qt | ||
third-party | ||
Transmission.xcodeproj | ||
utils | ||
web | ||
.gitignore | ||
AUTHORS | ||
autogen.sh | ||
ChangeLog | ||
configure.ac | ||
COPYING | ||
Makefile.am | ||
NEWS | ||
README | ||
transmission-gtk.spec.in | ||
uncrustify.cfg | ||
update-version-h.sh |
ABOUT Transmission is a fast, easy, and free BitTorrent client. It comes in several flavors: * A native Mac OS X GUI application * GTK+ and Qt GUI applications for Linux, BSD, etc. * A headless daemon for servers and routers * A web UI for remote controlling any of the above Visit http://www.transmissionbt.com/ for more information. BUILDING Transmission has an Xcode project file (Transmission.xcodeproj) for building in Xcode. For a more detailed description, and dependancies, visit: http://trac.transmissionbt.com/wiki/ Building a Transmission release from the command line: $ xz -d -c transmission-2.11.tar.xz | tar xf - $ cd transmission-2.11 $ ./configure $ make $ sudo make install Building Transmission from the nightly builds: Download a tarball from http://build.transmissionbt.com/job/trunk-linux-inc/ and follow the steps from the previous section. If you're new to building programs from source code, this is typically easier than building from SVN. Building Transmission from SVN (First Time): $ svn co svn://svn.transmissionbt.org/Transmission/trunk Transmission $ cd Transmission $ ./autogen.sh $ make $ sudo make install Building Transmission from SVN (Updating): $ cd Transmission $ make clean $ svn up $ ./update-version-h.sh $ make $ sudo make install Notes for building on Solaris' C compiler: User av reports success with this invocation: ./configure CC=c99 CXX=CC CFLAGS='-D__EXTENSIONS__ -mt'