Arvid Norberg
|
1ac8f806fa
|
added seed mode support (lazy hash checking)
|
2009-02-03 07:46:24 +00:00 |
Arvid Norberg
|
26910eff1d
|
update_settings fixes for disk_io_thread
|
2009-01-28 07:09:10 +00:00 |
Arvid Norberg
|
b3a17b1787
|
added disk buffer instrumentation and log parser
|
2009-01-23 09:13:31 +00:00 |
Arvid Norberg
|
00808473e7
|
factor out disk_buffer_pool from disk_io_thread. refactored the file open modes to be platform independent. gave the disk_io_thread its own copy of session_settings that it shares with storage. added an unaligned_read implementation to storage. Added options to session_settings on when to open files in unbuffered mode. Added unit tests for unaligned reads
|
2009-01-21 07:31:49 +00:00 |
Arvid Norberg
|
113d1f3557
|
moved page_aligned_allocator to its own file and uses it in set_piece_hashes to not pass in unaligned buffers to storage read
|
2009-01-15 17:09:36 +00:00 |
Arvid Norberg
|
630601aedf
|
use & instead of %
|
2009-01-15 04:25:07 +00:00 |
Arvid Norberg
|
b9d7538ba8
|
fixed storage to generate a proper error when the read operation
|
2009-01-14 03:05:35 +00:00 |
Arvid Norberg
|
3f0fa60164
|
fixed typo preventing pool-allocators=off build
|
2009-01-13 06:49:40 +00:00 |
Arvid Norberg
|
7592ad4aee
|
updated disk IO to support unbuffered files
|
2009-01-11 02:02:34 +00:00 |
Arvid Norberg
|
cfd116ffad
|
made disk_io_settings be synchronized through the job queue
|
2009-01-10 05:46:02 +00:00 |
Arvid Norberg
|
f1d229aae6
|
first pass of replacing coalesce writes and reads by writev and readv (no windows support yet)
|
2009-01-03 08:11:31 +00:00 |
Arvid Norberg
|
3bf9fa239d
|
fixed incorrect failure test in storage. Affected reading when not coalescing reads
|
2009-01-02 10:31:26 +00:00 |
Arvid Norberg
|
06da1f8e8a
|
added some session logging. added more disk-io-thread stats logging and parse script
|
2008-12-30 08:20:25 +00:00 |
Arvid Norberg
|
28cb451eac
|
expire read cache as well (same time out as write cache)
|
2008-12-27 02:38:14 +00:00 |
Arvid Norberg
|
2d4bdbca7d
|
fixed disk_io_thread over-allocation
|
2008-12-03 06:42:53 +00:00 |
Arvid Norberg
|
1022ba45fc
|
fixed bug in disk IO thread which would make it sometimes0 exit the thread if an error occurred
|
2008-11-29 21:38:34 +00:00 |
Arvid Norberg
|
09b3a865ef
|
fixed compiler flags in pkg-config file and made header files not depend on the NDEBUG define
|
2008-11-29 21:33:21 +00:00 |
Arvid Norberg
|
f503bbfe86
|
fix for when aborting torrents that are being checked. Fix in client_test when removing torrents that are checking.
|
2008-11-17 01:19:46 +00:00 |
Arvid Norberg
|
49a3ac9710
|
disk_io_thread shutdown fix
|
2008-11-11 09:32:51 +00:00 |
Arvid Norberg
|
4e9124019b
|
added accessor to query for the max number of connections
|
2008-11-08 07:40:55 +00:00 |
Arvid Norberg
|
5f6351146a
|
removed assert that could cause dead-lock in debug mode
|
2008-10-05 19:47:55 +00:00 |
Arvid Norberg
|
0f6ec06e12
|
fixed race condition in invariant check in disk io thread (only affected debug builds)
|
2008-09-30 01:16:19 +00:00 |
Arvid Norberg
|
26dea3c222
|
fixed stats miscount when deleting files
|
2008-09-17 02:29:05 +00:00 |
Arvid Norberg
|
658eef82a5
|
get rid of msvc warning
|
2008-09-15 13:58:38 +00:00 |
Arvid Norberg
|
8488d5eb59
|
fixed bug in disk_io_thread read cache management
|
2008-08-07 12:30:36 +00:00 |
Arvid Norberg
|
58978048e8
|
fixed assert in disk_io_thread
|
2008-07-30 08:05:04 +00:00 |
Arvid Norberg
|
21dff61cb5
|
clears read cache when paused. Saves memory
|
2008-07-18 15:31:22 +00:00 |
Arvid Norberg
|
3cb1369385
|
improved error reporting of file errors (uses boost.system's error_code). Now permission errors are properly reported when checking files
|
2008-07-17 23:41:46 +00:00 |
Arvid Norberg
|
9c9c13c7bb
|
exposed read cache info as well as write cache
|
2008-07-11 10:29:26 +00:00 |
Arvid Norberg
|
9c84908bb9
|
switched resume data parsing over to use lazy_bdecode. Improves memory allocation performance, especially noticable when heap allocations are expensive. Makes it more practical to run with malloc debug. Changed resume data interface to take a vector as opposed to a parsed structure
|
2008-06-30 23:14:31 +00:00 |
Arvid Norberg
|
52f6204288
|
simplified the disk-io mutexes and made it more efficient. separated the disk io mutex into a buffer mutex, queue mutex and the piece cache mutex.
|
2008-06-12 04:40:37 +00:00 |
Arvid Norberg
|
6e69480176
|
disk_io_thread fixes. Properly destructs torrent objects while disk io mutex is not locked. Properly flushes disk cache when closing, and aborting read and file check jobs. Fixes #334
|
2008-06-09 04:46:34 +00:00 |
Arvid Norberg
|
3910fe78de
|
separated file_storage from torrent_info and create_torrent
|
2008-05-28 08:44:40 +00:00 |
Arvid Norberg
|
f3d0eb3c11
|
fixed boost-1.35 build
|
2008-05-01 16:31:19 +00:00 |
Arvid Norberg
|
644d3aa66c
|
disk IO thread error handling
|
2008-04-13 21:26:57 +00:00 |
Arvid Norberg
|
3fea2080fd
|
added an asynchronous save_resume_data to make it easier to synchronize with the disk IO thread
|
2008-04-13 18:54:36 +00:00 |
Arvid Norberg
|
d4cfa126aa
|
storage fixes
|
2008-04-12 22:08:07 +00:00 |
Arvid Norberg
|
093d912e9a
|
receive buffer optimization. added receive_buffer_size and used_receive_buffer to peer_info. changed plugin api to make use of new disk_buffer_holder type
|
2008-04-10 10:03:23 +00:00 |
Arvid Norberg
|
5f35d170b0
|
disk io thread cleanup (all read operations are now read into disk buffers, no custom buffers)
|
2008-04-10 09:11:54 +00:00 |
Arvid Norberg
|
75ef4ec1f1
|
added option to not use pool allocators (useful when using memory debugging tools)
|
2008-04-09 05:19:11 +00:00 |
Arvid Norberg
|
4e9ed2dc96
|
fixed incorrect flushing of disk cache
|
2008-03-16 10:51:25 +00:00 |
Arvid Norberg
|
e5a98d1b7e
|
more invariant checks in disk_io_thread
|
2008-03-10 08:19:31 +00:00 |
Arvid Norberg
|
f53cfa7eeb
|
removed checker thread
|
2008-03-08 06:06:31 +00:00 |
Arvid Norberg
|
c689c0b5fc
|
replaced deque with list in disk_io_thread
|
2008-02-26 20:08:33 +00:00 |
Arvid Norberg
|
1d1398ed7f
|
read cache fix
|
2008-02-24 23:14:10 +00:00 |
Arvid Norberg
|
19462007d1
|
read cache fix
|
2008-02-22 08:22:57 +00:00 |
Arvid Norberg
|
ef9ef674d5
|
added read cache. Not fully configurable yet
|
2008-02-22 04:11:04 +00:00 |
Arvid Norberg
|
7e83c3fc51
|
changed storage interface to not require exceptions
|
2008-02-14 03:48:20 +00:00 |
Arvid Norberg
|
752149e341
|
fixed bug in write cache flush logic
|
2008-02-10 20:36:48 +00:00 |
Arvid Norberg
|
6c552db68e
|
added disk cache expiration
|
2008-02-10 00:58:25 +00:00 |
Arvid Norberg
|
ea7253c575
|
increased default cache size to 8 MB
|
2008-02-09 21:09:29 +00:00 |
Arvid Norberg
|
8cf0510144
|
added disk cache for write operations
|
2008-02-08 10:22:05 +00:00 |
Arvid Norberg
|
f7d34794a9
|
improved error handling
|
2008-01-14 23:51:04 +00:00 |
Arvid Norberg
|
e0d1951fac
|
fixes #234. properly shuts down the disk io thread
|
2007-12-24 08:15:10 +00:00 |
Arvid Norberg
|
9b54043478
|
attempt to fix potential deadlock in disk_io_thread
|
2007-12-13 04:05:25 +00:00 |
Arvid Norberg
|
1a280e31fa
|
cleanup. changed the connection map into a set of peer_connections. moved the policy object into the torrent (as opposed to being a pointer). Fixes issues with multiple peers on the same IP. Reduces some lookups.
|
2007-10-31 09:48:20 +00:00 |
Arvid Norberg
|
a1a564ef51
|
fixed debug issue with disk io thread
|
2007-10-23 22:11:17 +00:00 |
Arvid Norberg
|
b032c26bf0
|
adds invariant check to make sure pieces that are complete are also checked. adds a debug function in the disk_io_thread. Fixes a problem with a failing disk write that would not clear the block for re-download. Adds some extra session logging
|
2007-10-18 00:32:16 +00:00 |
Arvid Norberg
|
59c7f5bfbb
|
added option to delete files from disk as a torrent is removed
|
2007-10-13 03:33:33 +00:00 |
Arvid Norberg
|
966800cd5b
|
replaced the assert macro to TORRENT_ASSERT instead of hi-jacking assert.
|
2007-10-05 00:30:00 +00:00 |
Arvid Norberg
|
f4f30f5b19
|
disk io priority fix
|
2007-10-03 22:30:40 +00:00 |
Arvid Norberg
|
b48948e231
|
changed the double send buffers to a chained buffer using iovec send operations. buffers are recycled (saves memory and cpu) and memory copies are avoided (saves cpu). More statistics is added to track buffer usage
|
2007-09-29 16:14:03 +00:00 |
Arvid Norberg
|
b5a2373bff
|
added an option to generate a disk io log file
|
2007-09-17 08:15:54 +00:00 |
Arvid Norberg
|
9364a2d01d
|
added priority to disk io jobs
|
2007-09-16 01:34:06 +00:00 |
Arvid Norberg
|
94f5b93d21
|
made it possible to pass in custom buffers to piece_manager::async_read, increased the maximum buffer size on bottled http_requests
|
2007-09-11 17:45:20 +00:00 |
Arvid Norberg
|
192ce4b463
|
added some extra checks for buffer overrun in disk_io_thread
|
2007-08-02 01:42:19 +00:00 |
Arvid Norberg
|
bde5a9be0a
|
fixed intended behavior for async_move_storage (2nd attempt)
|
2007-07-17 08:33:14 +00:00 |
Arvid Norberg
|
fa37b9f3df
|
fixed intended behavior for async_move_storage
|
2007-07-17 08:12:32 +00:00 |
Arvid Norberg
|
eb03851276
|
fixed mutex issue in disk io thread
|
2007-06-17 05:58:12 +00:00 |
Arvid Norberg
|
3b8670626a
|
merged back async_io branch into trunk
|
2007-06-10 20:46:09 +00:00 |