Arvid Norberg
9deb594c18
Merge pull request #548 from arvidn/dead-disk-alloc-1.1
...
remove unused disk allocation code
2016-03-17 00:16:45 -04:00
arvidn
317eb2fe2a
remove unused disk allocation code
2016-03-16 20:13:28 -04:00
Arvid Norberg
a1d60db706
Merge pull request #547 from arvidn/no-read-cache-1.1
...
fix use_read_cache=false
2016-03-16 08:14:15 -04:00
Arvid Norberg
4343bb911c
Merge pull request #545 from arvidn/zero-cache-perf-1.1
...
allow each peer have at least 2 allocated disk blocks at any given time
2016-03-16 08:14:02 -04:00
arvidn
4926081960
fix use_read_cache=false
2016-03-16 02:22:18 -04:00
arvidn
36d0cfe40d
fix shutdown issue caused by peer connections being kept alive by disk buffer pool callbacks
2016-03-16 00:28:19 -04:00
arvidn
08bac479be
allow each peer have at least 2 allocated disk blocks at any given time, to avoid stalling when cache_size setting is small. also deprecate use_write_cache
2016-03-16 00:28:11 -04:00
Arvid Norberg
6ba5cb7826
Merge pull request #536 from ssiloti/always-cache-writes-1.1
...
Always cache writes
2016-03-15 01:49:16 -04:00
Steven Siloti
4331f57021
restrict check_cache_level to only runing on one thread at a time
...
If another thread trys to call check_cache_level then m_cache_check_state is set
to indicate that the thread currently in check_cache_level needs to call it again.
2016-03-14 19:03:12 -07:00
Steven Siloti
d405535a3f
try to free the piece after kicking the hasher and flushing
2016-03-14 19:03:12 -07:00
Steven Siloti
e8f93df700
fix indentation
2016-03-14 19:03:12 -07:00
Steven Siloti
826bbe35ee
always cache writes
2016-03-14 19:03:12 -07:00
Steven Siloti
6e8db41dd2
check_cache_level after performing a job rather than before
...
If dirty blocks are added while the job is running there is a chance of
deadlock if the dirty blocks cause the cache to exceed its size limit and
no further jobs come in to trigger another check.
2016-03-14 19:03:12 -07:00
Steven Siloti
9c5bb25d65
always clear outstanding_flush after attempting to flush a cached write
...
Also clear outstanding_flush before calling kick_hasher because kick_hasher
may unlock the cache mutex which can allow more dirty blocks to be added
which may require another flush_hashed job be added.
2016-03-14 19:03:12 -07:00
Arvid Norberg
82d177472e
Merge pull request #541 from arvidn/fix-test-transfer-1.1
...
improve message from listen_failed_alert
2016-03-14 21:43:34 -04:00
Arvid Norberg
48df15c753
Merge pull request #544 from aldenml/typos
...
Documentation typos
2016-03-14 21:04:47 -04:00
Alden Torres
303074e159
Documentation typos
2016-03-14 20:43:52 -04:00
arvidn
c5861bcc04
fix failure to increment port when retrying socket binding
2016-03-14 18:52:43 -04:00
Arvid Norberg
42d423e992
Merge pull request #540 from arvidn/remove-purgable-control-1.1
...
remove the purgable control patch
2016-03-14 17:54:12 -04:00
Arvid Norberg
beab2ec666
Merge pull request #537 from arvidn/remove-partfile-1.1
...
add option to remove partfile 1.1
2016-03-14 08:27:31 -04:00
arvidn
921cbeebed
add option to delete just the partfile when removing a torrent
2016-03-14 08:26:39 -04:00
arvidn
55cd19d1e2
remove the purgable control patch. It adds a lot of complexity and it does not perform well
2016-03-14 01:48:00 -04:00
Arvid Norberg
035f8e98d1
Merge pull request #542 from arvidn/request-timeout-1.1
...
fix seed timing-out unchoked peers for not sending requests
2016-03-14 01:44:50 -04:00
arvidn
0b4339064f
extend timeouts
2016-03-13 23:13:12 -04:00
arvidn
58e73c1469
fix typo
2016-03-13 20:47:50 -04:00
Arvid Norberg
1a6e226dc1
Merge pull request #539 from arvidn/piece-matrix-1.1
...
Piece matrix 1.1
2016-03-13 19:14:05 -04:00
arvidn
c9c401d15c
add piece matrix to client_test
2016-03-13 19:13:38 -04:00
Arvid Norberg
5652a46068
Merge pull request #508 from arvidn/part-file-1.1
...
attempt to fix issue where the partfile is not deleted
2016-03-13 18:05:01 -04:00
arvidn
8f14c74be8
fix issue where a seed could time-out an unchoked peer for not sending any requests, despite being busy servicing requests from the peer (and time out immediately when m_requests is drained)
2016-03-13 16:41:31 -04:00
arvidn
fb85e5e60f
improve message from listen_failed_alert. Post listen_failed_alert for every failure, including the ones that are re-tried
2016-03-13 16:18:44 -04:00
Arvid Norberg
108dfacd4d
Merge pull request #529 from arvidn/evict-volatile-1.1
...
try to evict a volatile piece before allocating a new one for a hash check
2016-03-13 12:53:11 -04:00
arvidn
0d0048d415
try to evict a volatile piece before allocating a new one for a hash check. It may be faster to check files without growing the cache, or reusing the same buffers.
2016-03-13 12:52:44 -04:00
Arvid Norberg
d059ac563d
Merge pull request #532 from arvidn/utp-mtu-1.1
...
improve robustness and performance of uTP PMTU discovery
2016-03-13 12:43:29 -04:00
arvidn
2178d1ad2b
improve robustness and performance of uTP PMTU discovery. fix duplicate ACK issue in uTP. demote an invariant check to 'expensive'
2016-03-13 12:40:59 -04:00
arvidn
71e3fb8941
fix division by zero in super-seeding logic
2016-03-07 23:40:01 -05:00
Arvid Norberg
2e66708273
Merge pull request #528 from arvidn/checking-cache-1.1
...
fix bug where disk cache was wiped out after completion file-checking
2016-03-07 01:00:12 -05:00
arvidn
f5d5ac4f3a
fix bug where disk cache was wiped out after completion file-checking. factor out sim test utilities and reuse them in the regression test
2016-03-06 21:44:38 -05:00
Arvid Norberg
3fa3004b85
Merge pull request #526 from arvidn/rechecking-outstanding-1.1
...
always keep at least 2 async hash jobs outstanding
2016-03-06 20:05:56 -05:00
Arvid Norberg
5efc625015
Merge pull request #525 from arvidn/load-state-1.1
...
support filtering which parts of session state are loaded
2016-03-06 16:36:57 -05:00
arvidn
442979c318
support filtering which parts of session state are loaded by load_state()
2016-03-06 16:35:49 -05:00
arvidn
67774d660d
always keep at least 2 async hash jobs outstanding when rechecking torrents (to keep the bandwidth delay product full)
2016-03-06 16:31:18 -05:00
Arvid Norberg
834d04efdc
Merge pull request #523 from arvidn/disk-cache-1.1
...
fix support for auto disk cache size
2016-03-06 16:16:17 -05:00
arvidn
b40430f175
change the cache size calculation for auto cache size (-1) to be smaller, especially for machines with large amounts of RAM
2016-03-06 16:15:22 -05:00
arvidn
adf56344e6
add interactive option to toggle use of disk cache to client_test
2016-03-06 16:15:17 -05:00
arvidn
a02c1d2164
record cache settings in the job instead of checking it twice for more robust behavior
2016-03-06 16:15:13 -05:00
arvidn
8ca76f9d59
fix support for auto disk cache size and disk buffer pool allocator behavior
2016-03-06 16:14:55 -05:00
Arvid Norberg
5febe36106
Merge pull request #517 from arvidn/receive-buffer-fix-1.1
...
fix bug in receive_buffer
2016-03-05 00:14:32 -05:00
arvidn
26f88bb12d
add receive_buffer unit test and some more cleanup and asserts
2016-03-05 00:14:00 -05:00
arvidn
2efb9d9a6a
fix bug in receive_buffer
2016-03-05 00:13:59 -05:00
Arvid Norberg
be17b78c5f
Merge pull request #522 from arvidn/io-thread-assert-1.1
...
remove invalid assert in the disk thread
2016-03-04 23:16:02 -05:00