Commit Graph

92 Commits

Author SHA1 Message Date
Arvid Norberg
a3e66a3efe made the piece picker handle multi-request blocks better. fixes problem that might occur at the end of a torrent where the piece picker could take over blocks back and forth 2007-07-06 17:15:35 +00:00
Arvid Norberg
f90a80ab05 made piece picker less anal about speed categories, to improve performance 2007-07-05 22:49:28 +00:00
Arvid Norberg
3bdf01778a chamged peer representation from tcp::endpoint to policy::peer pointer in piece_picker's downloading piece. Saves memory, removes the need for lookup and improves the hash check fail/pass handling for closed connections 2007-07-04 02:16:49 +00:00
Arvid Norberg
3b8670626a merged back async_io branch into trunk 2007-06-10 20:46:09 +00:00
Arvid Norberg
14a15831ef exposed piece availability vector 2007-05-30 06:52:59 +00:00
Arvid Norberg
8392276975 speed categories are now disabled before 1% of the pieces have been downloaded 2007-05-14 10:54:18 +00:00
Arvid Norberg
6dcca9250b optimized heap allocations in piece_picker. #42 2007-05-09 00:49:13 +00:00
Arvid Norberg
4956639171 piece picker optimization 2007-05-08 11:13:13 +00:00
Arvid Norberg
f942308ccb added extra assert to piece picker 2007-05-03 21:28:31 +00:00
Arvid Norberg
b9cdfc2771 fixed bug in piece_picker 2007-05-03 19:25:18 +00:00
Arvid Norberg
577bda5266 removed old code from piece picker and fixed set_priority to not tamper with the download queue 2007-05-03 18:38:57 +00:00
Arvid Norberg
9f1a11aa50 regenerated documentation. fixed a few warnings. fixed a bug in recent check in in piece picker 2007-04-27 16:26:30 +00:00
Arvid Norberg
4afe9712e0 improvements to the piece picker with regard to recently introduced categories 2007-04-27 02:33:59 +00:00
Arvid Norberg
ee1681e2cb added peer/piece categories to the piece picker. fixes #18 2007-04-27 00:27:37 +00:00
Arvid Norberg
094dc1065c some boost 1.34 preprocessor conditions and fixed assert in piece_picker 2007-04-23 17:14:40 +00:00
Arvid Norberg
a35c1ef1a5 piece picker fix 2007-04-19 02:54:46 +00:00
Arvid Norberg
60ddb5c64a piece_picker fix 2007-04-18 20:40:41 +00:00
Arvid Norberg
16e17f066c first stab at sparse files support 2007-04-17 21:54:40 +00:00
Arvid Norberg
067219d14a made downloading pieces higher priority. fix in piece picker when blocks in prio 0 pieces were marked as finished 2007-04-17 09:21:53 +00:00
Arvid Norberg
34473aad1b fixed bug in recent piece picker optimization when used in combination with sequenced download threshold 2007-04-17 00:20:39 +00:00
Arvid Norberg
40804a829b failcount is reset on a peer that successfully connects. documented max_failcount and min_reconnect_time. implemented seed optimization for piece_picker (inc_refcount_all and dec_refcount_all), ticket #17 2007-04-15 02:14:02 +00:00
Arvid Norberg
3bc8d093c2 fixed the distributed copy function in the piece picker 2007-04-11 20:33:28 +00:00
Arvid Norberg
5c90b99316 piece picker fix 2007-03-30 20:21:29 +00:00
Arvid Norberg
e6a4733392 fixed one incorrect assert 2007-03-30 19:18:03 +00:00
Arvid Norberg
a9d18439e9 piece picker fix 2007-03-30 03:09:28 +00:00
Arvid Norberg
fc46a731eb modified and enabled invariant checking for piece_picker 2007-03-29 00:52:16 +00:00
Arvid Norberg
ceadb93097 added asserts to the piece picker 2007-03-28 23:23:07 +00:00
Arvid Norberg
bec03261f5 fixed piece picker and test 2007-03-27 08:53:48 +00:00
Arvid Norberg
b3c889f563 fixed typo in previous check in 2007-03-21 02:14:31 +00:00
Arvid Norberg
20e38bc42b peer interest flag is now updated when priority is changed. fixes in piece_picker 2007-03-21 02:09:50 +00:00
Arvid Norberg
10da416c76 fix related to piece priorities 2007-03-20 19:50:15 +00:00
Arvid Norberg
00a7546f7e fix related to piece priorities 2007-03-20 19:34:10 +00:00
Arvid Norberg
776b399a97 added api for piece priorities 2007-03-20 01:59:00 +00:00
Arvid Norberg
7ff5893431 reverted bad check-in where files_checked was removed from piece_picker 2007-03-17 17:28:59 +00:00
Arvid Norberg
8957b64c04 prepared for precompiled headers support. fixed issue where storage didn't lock the session properly. fixed typo in natpmp.cpp 2007-03-17 17:15:16 +00:00
Arvid Norberg
4ac08f393a simplified the piece picker by initializing it properly in its constructor. Removed natpmp reporting port map success when removing mappings. fix where incoming connections before the files were completely checked would cause an assert. 2007-03-16 23:28:26 +00:00
Arvid Norberg
ecaa3068d5 added natpmp support. bumped version number to 0.13. added piece priority support to the piece picker. optmized and simplified the piece picker in the process. 2007-03-15 22:03:56 +00:00
Arvid Norberg
87f7b186b0 replaced the bandwidth throttling code with a leaky bucket for better accuracy 2007-01-10 15:02:25 +00:00
Arvid Norberg
45864b15ec fixed incorrect assert in bytes_done() 2006-12-31 14:48:18 +00:00
Arvid Norberg
c69479a166 fixed the cause of an inconsistency in the piece picker and the torrent 2006-12-22 00:45:43 +00:00
Arvid Norberg
f83db0a423 consistency fixes related to shutting down 2006-12-21 22:20:28 +00:00
Arvid Norberg
79ebcf5dd8 modified the hueristic for taking over blocks slightly, added logging 2006-12-15 10:42:56 +00:00
Arvid Norberg
16b7898de9 added some asserts 2006-12-15 02:26:11 +00:00
Arvid Norberg
f0519e86e8 separated session from session_impl and made a real pimpl-class of it. Introduced the possibility to destruct the sessions async. 2006-10-11 14:02:21 +00:00
Arvid Norberg
f029f5d6b2 fixed sequenced download bug 2006-10-02 08:58:28 +00:00
Arvid Norberg
191fd76b42 made sequenced_download_threshold a per torrent setting. Updated the project page layout. Removed incorrect invariant checks in piece picker. 2006-09-04 17:17:45 +00:00
Arvid Norberg
7bc1214749 fixed strange User-Agent encoding in HTTP requests. Fixed bug in sequenced_download_threshold code 2006-09-03 22:59:54 +00:00
Arvid Norberg
5ae55c5738 fixed bug appearing when changing the sequenced download threshold on a torrent which already had some pieced downloaded. 2006-09-01 09:36:43 +00:00
Arvid Norberg
8d31bf442a fixed incorrect sorting of pieces in piece_picker 2006-07-16 00:08:50 +00:00
Arvid Norberg
c3eaa26645 fixed bug spotted by Tianhao Qiu 2006-06-12 21:20:32 +00:00