arvidn
|
b628692223
|
separate out announce_entry and torrent_status into their own headers
|
2015-09-18 08:08:08 -04:00 |
arvidn
|
17c5759829
|
disable warning for unused command line argument and fix warnings. remove redundant travis build config. use new preprocessor on clang to avoid warnings
|
2015-09-06 22:55:41 -04:00 |
arvidn
|
904da120d7
|
fixed some warnings
|
2015-08-20 22:28:00 +02:00 |
arvidn
|
8cf8e65861
|
turn linked_list into a template to improve type safety and remove some casts
|
2015-08-20 02:02:46 +02:00 |
arvidn
|
ffa870d280
|
fixed some GCC warnings
|
2015-08-20 01:33:20 +02:00 |
arvidn
|
bd177a857f
|
make tailequeue a template, introduce type safety, remove old-style casts
|
2015-08-19 15:22:05 +02:00 |
arvidn
|
5c8fc818c1
|
fix more warnings
|
2015-08-19 01:39:01 +02:00 |
arvidn
|
12da02ae52
|
fix some warnings
|
2015-08-18 09:33:00 -04:00 |
arvidn
|
8d8c049d9e
|
fix warnings and invalid defines in disk_io_thread.cpp
|
2015-08-18 07:55:50 -04:00 |
arvidn
|
9a0092c120
|
fix some warnings
|
2015-08-16 12:17:23 -04:00 |
Alden Torres
|
cd8a4d2511
|
Moved TORRENT_DISK_STATS to default_storage with the option of enable/disable at runtime.
|
2015-08-03 18:16:43 -04:00 |
arvidn
|
e0c3d28321
|
fix some warnings
|
2015-08-02 15:55:05 -04:00 |
arvidn
|
2b05b1c85c
|
fix cppcheck warnings
|
2015-07-11 10:36:13 -04:00 |
arvidn
|
f91799006a
|
fix make_shared invocation
|
2015-06-14 16:42:52 -04:00 |
arvidn
|
5cb095f6d2
|
support using 0 disk threads (to perform disk I/O in network thread)
|
2015-06-14 16:00:04 -04:00 |
arvidn
|
389ffc622c
|
don't pull in the asio namespace in libtorrent. refer to it by boost::asio
|
2015-06-06 01:24:25 -04:00 |
Arvid Norberg
|
d43f7b56a2
|
update copyright year
|
2015-06-03 05:18:48 +00:00 |
Arvid Norberg
|
9b0313bd8e
|
hold settings_pack by shared_ptr when passing it across thread boundaries. don't allocate it on the heap redundantly
|
2015-05-29 05:27:53 +00:00 |
Arvid Norberg
|
607e708bc4
|
fix warnings
|
2015-05-19 03:13:49 +00:00 |
Arvid Norberg
|
051ca6b22c
|
fix warnings
|
2015-05-18 05:32:18 +00:00 |
Arvid Norberg
|
58ae099cf8
|
clean up disk_io_job a bit to avoid old-style casts
|
2015-05-16 20:41:37 +00:00 |
Arvid Norberg
|
8fdacf9534
|
address coverity issues and build issue with non atomic 64 bit operations
|
2015-05-03 22:21:19 +00:00 |
Arvid Norberg
|
a1dbba7cf4
|
make clear_read_cache() code less confusing
|
2015-04-29 05:11:55 +00:00 |
Arvid Norberg
|
2fff222235
|
silence some warnings on msvc
|
2015-04-27 02:21:12 +00:00 |
Arvid Norberg
|
f5629eb403
|
cleanup and fixing of more warnings
|
2015-04-21 00:23:00 +00:00 |
Arvid Norberg
|
4d15f1410f
|
fix warnings, some clean-up and todo comments
|
2015-04-20 04:52:49 +00:00 |
Arvid Norberg
|
013ed36f09
|
landed alert_queue feature branch into trunk
|
2015-04-03 20:15:48 +00:00 |
Arvid Norberg
|
ccc7e45406
|
landed mutable torrents branch in trunk
|
2015-03-21 00:12:40 +00:00 |
Arvid Norberg
|
37225b71ae
|
const static -> static const (thanks gubatron). helps swigs parser
|
2015-03-14 00:42:27 +00:00 |
Arvid Norberg
|
6c1df7eb55
|
landed the bdecode branch in master. lazy_bdecode/lazy_entry is now being replaced by bdecode/bdecode_node
|
2015-03-12 05:20:12 +00:00 |
Arvid Norberg
|
c1dc982f4f
|
deprecate the ptime type and related time types. just use boost::chrono / std::chrono
|
2015-03-12 04:34:54 +00:00 |
Arvid Norberg
|
89055c4c7a
|
some more optimizations on loading torrents
|
2015-02-18 03:32:49 +00:00 |
Arvid Norberg
|
bc9281a27c
|
deprecate file_entry (used by file_storage) and clean up the add_file overload that borrows memory (and improve implementation and documentation). The python bindings were updated to more closely match the c++ API (specifically actually using file_storage)
|
2015-01-21 15:46:12 +00:00 |
Arvid Norberg
|
a1c1f9393d
|
fix flush_pieces in disk_io_thread to also flush the read cache
|
2015-01-01 10:10:13 +00:00 |
Arvid Norberg
|
1039d4ae86
|
tweak some TODO comments and fix one
|
2014-12-31 14:41:35 +00:00 |
Arvid Norberg
|
5666cdcd07
|
fix warnings
|
2014-12-09 09:33:34 +00:00 |
Arvid Norberg
|
1ed1963f29
|
remove size_type typedef in favor of boost::int64_t
|
2014-12-03 04:32:50 +00:00 |
Arvid Norberg
|
0b711f1280
|
remove unused variables. add some comments
|
2014-11-17 03:10:00 +00:00 |
Arvid Norberg
|
935eea9d0b
|
some more fixes to cache_status
|
2014-10-25 21:28:57 +00:00 |
Arvid Norberg
|
83394f54f9
|
transition fenced job histogram to session stats gauges. deprecate it from cache_status
|
2014-10-25 20:59:54 +00:00 |
Arvid Norberg
|
0bcbe433ed
|
deprecate most of cache_status type (use session stats instead)
|
2014-10-25 20:07:50 +00:00 |
Arvid Norberg
|
d287ce9c46
|
fix issue when hash checking files resulting in a short read
|
2014-10-12 23:49:51 +00:00 |
Arvid Norberg
|
f32f5e96aa
|
deprecate parts of cache_status and move those counters to session_stats counters. make the performance counters thread safe. fix some issues recently introduced to performance counters and the usage of them in client_test
|
2014-08-01 06:07:48 +00:00 |
Arvid Norberg
|
671ae32ae5
|
fix docs generation for stats counters
|
2014-07-30 02:00:14 +00:00 |
Arvid Norberg
|
035da93592
|
fixed disk_io_job flags being used as file flags
|
2014-07-28 01:06:00 +00:00 |
Arvid Norberg
|
cd456964ad
|
storage fixes
|
2014-07-20 08:59:02 +00:00 |
Arvid Norberg
|
f3a7008bd5
|
close files when stopping a torrent
|
2014-07-20 00:23:12 +00:00 |
Arvid Norberg
|
c8e8eb6e15
|
some asserts in disk_io_thread. fix issue in torrent::initialize
|
2014-07-12 19:23:31 +00:00 |
Arvid Norberg
|
7351389ce8
|
land libtorrent_aio branch in trunk
|
2014-07-06 19:18:00 +00:00 |
Arvid Norberg
|
6ef1b98717
|
merged compiler warning fixes from RC_1_0
|
2014-07-05 14:10:25 +00:00 |
Arvid Norberg
|
6c6fe4dfe2
|
merged fixes of warnings from RC_1_0
|
2014-07-04 23:40:31 +00:00 |
Arvid Norberg
|
18c52fe7cd
|
fix bug in patch to introduce file_priority disk job
|
2014-03-01 09:05:53 +00:00 |
Arvid Norberg
|
a0a41b6c5e
|
merged file priority fix from RC_0_16 and keep the disk thread's file priorities up to date
|
2014-02-28 10:19:29 +00:00 |
Arvid Norberg
|
a943fec777
|
update copyright
|
2014-02-23 19:12:25 +00:00 |
Arvid Norberg
|
b3de578fe7
|
merge invalid assert fix from RC_0_16
|
2014-02-07 09:35:08 +00:00 |
Arvid Norberg
|
6597eaf09a
|
there doesn't seem to be any point in exporting piece_block_progress, so don't do that. Introduce magic number check in disk_io_thread (mysterious crash/corruption happens in storage unit test on mac, but not very often and hard to reproduce).
|
2014-02-03 01:55:26 +00:00 |
Arvid Norberg
|
36c9add067
|
don't print stuff to stdout in debug builds. when waking up from completing a connection attempt, exit immediately if the connection is disconnecting, or disconnect if we're in graceful pause mode. some test cleanups
|
2014-01-26 08:18:13 +00:00 |
Arvid Norberg
|
e0644ce8f5
|
invariant check macro fixes
|
2014-01-21 19:26:09 +00:00 |
Arvid Norberg
|
36889a1524
|
asserts and logging in SSL test
|
2014-01-17 01:00:49 +00:00 |
Arvid Norberg
|
4e6b1cfbfb
|
update copyright
|
2013-12-25 17:07:16 +00:00 |
Arvid Norberg
|
89c3db477d
|
merge build fix with C++11 from RC_0_16
|
2013-09-25 19:44:29 +00:00 |
Arvid Norberg
|
f2e16c36b3
|
merged fix from RC_0_16
|
2013-09-12 07:10:52 +00:00 |
Arvid Norberg
|
75789e3958
|
fix uninitialized variable in disk_io_thread
|
2013-09-04 04:09:33 +00:00 |
Arvid Norberg
|
01c8c8543b
|
fix typo in move_storage
|
2013-05-11 21:32:18 +00:00 |
Arvid Norberg
|
4607e36c6f
|
fix move_storage bug when using fail_if_exist as well as use the boost::system::errc::file_exists as error code for that case
|
2013-05-11 03:54:18 +00:00 |
Arvid Norberg
|
982a14c2e9
|
extend move_storage functionality to have more flexible behavior
|
2013-05-09 02:50:16 +00:00 |
Arvid Norberg
|
431efc6157
|
merge storage fix from RC_0_16
|
2013-03-03 04:47:19 +00:00 |
Arvid Norberg
|
a0caa0f4b2
|
disable invariant_check functions when invariant checks are disabled
|
2013-02-25 04:13:46 +00:00 |
Arvid Norberg
|
e45c71dd30
|
merged sparse file fix from RC_0_16
|
2013-02-16 08:26:55 +00:00 |
Arvid Norberg
|
bff648a89e
|
update copyright dates and add tool to do so
|
2012-10-02 03:16:33 +00:00 |
Arvid Norberg
|
24186f219a
|
fix write cache flush issue
|
2012-05-23 14:59:56 +00:00 |
Arvid Norberg
|
19e7546968
|
fixed low_prio_disk support on linux
|
2012-05-15 14:13:35 +00:00 |
Arvid Norberg
|
ba4c77e7e5
|
merged FreeBSD fix from RC_0_16
|
2012-04-15 00:48:44 +00:00 |
Arvid Norberg
|
a5a9006014
|
merged fixes from RC_0_16 into trunk
|
2012-04-07 00:35:25 +00:00 |
Arvid Norberg
|
9024209d51
|
merged set_settings race condition fix into trunk
|
2012-04-06 03:02:50 +00:00 |
Arvid Norberg
|
7f3aac3959
|
fix issue with unchoke_slots_limit not preserving its value correctly
|
2011-12-19 05:53:11 +00:00 |
Arvid Norberg
|
cc6bc5ba17
|
back-out attempt to make disk cache hits faster. it corrupts data
|
2011-11-28 17:51:14 +00:00 |
Arvid Norberg
|
85ef2528c6
|
serve cache hits without a round-trip to the disk thread for improved seeding performance
|
2011-11-16 07:09:12 +00:00 |
Arvid Norberg
|
b430152174
|
post disk job completions in batches to save CPU in the network thread
|
2011-10-19 05:46:49 +00:00 |
Arvid Norberg
|
ef1ee13d58
|
fix bug in flush_cache_blocks
|
2011-10-13 02:19:55 +00:00 |
Arvid Norberg
|
b078f908f0
|
one more attempt to fix no-readback cache algorithm
|
2011-09-27 10:46:56 +00:00 |
Arvid Norberg
|
b3d2877274
|
more no-readback fixes
|
2011-09-27 07:50:58 +00:00 |
Arvid Norberg
|
d8641705e3
|
commented out expensive invariant check in disk cache
|
2011-09-27 04:56:57 +00:00 |
Arvid Norberg
|
f6b6b57c0e
|
fix avoid-readback cache algorithm
|
2011-09-27 04:05:05 +00:00 |
Arvid Norberg
|
6271ee58f6
|
fix overflow issue in default disk write queue size limit
|
2011-09-14 06:22:45 +00:00 |
Arvid Norberg
|
ecba902ff1
|
fix cache eviction issue in seed_mode
|
2011-08-07 07:27:38 +00:00 |
Arvid Norberg
|
bc2f0c8c5e
|
move disk_buffer_pool out to its own file
|
2011-07-31 02:24:36 +00:00 |
Arvid Norberg
|
209b9e4186
|
make disk timing be average over the last second. fixed some other bugs in previous changes
|
2011-06-26 19:45:33 +00:00 |
Arvid Norberg
|
3e5b165a91
|
fix invariant check defines
|
2011-06-21 07:10:54 +00:00 |
Arvid Norberg
|
b9e754d14d
|
mark some invariant checks in disk_io_thread as expensive
|
2011-06-21 05:10:32 +00:00 |
Arvid Norberg
|
f6f516bed0
|
fix file_storage copy constructor (would break python bindings)
|
2011-06-06 07:47:29 +00:00 |
Arvid Norberg
|
a73960aa5a
|
support release asserts
|
2011-05-08 09:04:59 +00:00 |
Arvid Norberg
|
e389f5963d
|
added support for fadvise/F_RDADVISE for improved disk read performance
|
2011-04-26 07:03:05 +00:00 |
Arvid Norberg
|
8e92cad2db
|
fixed bug in avoid_readback disk cache eviction algorithm
|
2011-04-17 05:33:33 +00:00 |
Arvid Norberg
|
0c28a3e3ca
|
fixed bug in session::delete_files option to remove_torrent
|
2011-04-10 20:35:45 +00:00 |
Arvid Norberg
|
f3a7d567a4
|
fix bug in disk thread and torrent abort functions
|
2011-04-04 02:57:19 +00:00 |
Arvid Norberg
|
74ccff22be
|
use a deque instead of list for disk io jobs queue
|
2011-03-28 06:01:24 +00:00 |
Arvid Norberg
|
f6a42863e3
|
try to optimize disk write performance by raising the low watermark (for disk thread queue) to start reading from sockets and also post the start-reading event earlier. Also implement fair round-robin of which peers get to start downloading on this event
|
2011-03-27 20:35:38 +00:00 |
Arvid Norberg
|
346a6fb175
|
another read job starvation fix + some more logging
|
2011-03-27 08:21:26 +00:00 |
Arvid Norberg
|
41bc60c36a
|
fixed bug in avoid_readback disk cache algorithm
|
2011-03-26 19:06:58 +00:00 |
Arvid Norberg
|
aabb862400
|
fixed windows build
|
2011-03-21 06:31:48 +00:00 |
Arvid Norberg
|
2dfd1a972b
|
prevent read jobs from starving in the disk I/O thread
|
2011-03-20 19:17:59 +00:00 |
Arvid Norberg
|
836de5d338
|
fixed infinite loop when using avoid_readback cache eviction algorithm
|
2011-03-20 17:08:18 +00:00 |
Arvid Norberg
|
3d63cb98b7
|
log read job queue size
|
2011-03-20 09:04:03 +00:00 |
Arvid Norberg
|
5c26294c29
|
fixed typo
|
2011-03-20 08:29:18 +00:00 |
Arvid Norberg
|
2525b8b457
|
sorting counts as job time in disk I/O thread timing
|
2011-03-20 07:44:25 +00:00 |
Arvid Norberg
|
c1620de8d8
|
sorting needs to count as part of the disk job to get proper proportions of disk thread time metrics
|
2011-03-20 06:37:19 +00:00 |
Arvid Norberg
|
e4df633157
|
added another disk cache flush algorithm to minimize readback when hashing pieces
|
2011-03-20 05:47:27 +00:00 |
Arvid Norberg
|
1b6227ad31
|
report disk read-back when verifying piece hashes
|
2011-03-20 01:19:14 +00:00 |
Arvid Norberg
|
afc9806319
|
hash timing change
|
2011-03-19 22:52:29 +00:00 |
Arvid Norberg
|
c015e28792
|
more disk thread timing
|
2011-03-19 22:23:58 +00:00 |
Arvid Norberg
|
68c3faaad1
|
fixed bug in disk job timer
|
2011-03-18 03:52:25 +00:00 |
Arvid Norberg
|
782bc974a1
|
log average disk job time instead of cache time
|
2011-03-18 03:07:10 +00:00 |
Arvid Norberg
|
6db11079c8
|
add performance warning when disk write queue exceeds half of the write cache size
|
2011-03-16 07:45:51 +00:00 |
Arvid Norberg
|
7e3f69ecbf
|
optimized disk cache flushing a bit
|
2011-03-16 07:21:58 +00:00 |
Arvid Norberg
|
5e273aff34
|
fix bug in read cache expiration logic
|
2011-03-15 02:54:41 +00:00 |
Arvid Norberg
|
d6fbff13df
|
measure disk sort time (phys_offset)
|
2011-03-15 02:21:28 +00:00 |
Arvid Norberg
|
7dde47b98a
|
measure disk cache flush times
|
2011-03-15 01:44:32 +00:00 |
Arvid Norberg
|
a08bcf7459
|
change semantics of disk read time and add disk hash time
|
2011-03-14 05:21:46 +00:00 |
Arvid Norberg
|
a18f047311
|
minor storage fix
|
2011-03-13 21:07:46 +00:00 |
Arvid Norberg
|
03a7442532
|
add disk cache stats to session stats
|
2011-03-11 07:37:12 +00:00 |
Arvid Norberg
|
44fe8c160a
|
fix no-exceptions build
|
2011-03-10 05:01:36 +00:00 |
Arvid Norberg
|
56937edf56
|
cleaned up some exception handling and introduced macros like BOOST_TRY/BOOST_CATCH to make the optional exception handling nicer
|
2011-02-25 17:00:36 +00:00 |
Arvid Norberg
|
97a40a45cd
|
fully support unbuffered I/O
|
2011-02-22 02:53:26 +00:00 |
Arvid Norberg
|
141ada013f
|
fixed a whole bunch of build warnings on gcc and msvc, along with some fixes discovered along the way
|
2011-02-21 05:24:41 +00:00 |
Arvid Norberg
|
8bb71da401
|
disk write queue watermark fix
|
2011-02-13 22:27:02 +00:00 |
Arvid Norberg
|
aa116cd1d1
|
fix race condition when initializing the disk thread
|
2011-02-11 07:20:11 +00:00 |
Arvid Norberg
|
9efd739cf5
|
fixed typo
|
2011-02-10 06:06:56 +00:00 |
Arvid Norberg
|
19d6c53ad4
|
increase low watermark for disk write queue. log payload rates in session stats
|
2011-02-04 06:33:47 +00:00 |
Arvid Norberg
|
4ed6b1a067
|
introduce a low watermark for disk io blocking connections
|
2011-02-04 03:02:23 +00:00 |
Arvid Norberg
|
6663f527da
|
fixed error handling in torrent_info constructor
|
2011-01-19 10:07:51 +00:00 |
Arvid Norberg
|
00efc31bf6
|
various smaller fixes
|
2010-12-30 03:46:11 +00:00 |
Arvid Norberg
|
daea6d507e
|
fixed uninitialized variable in utp MTU logic. Fixed array overrun in disk cache
|
2010-12-24 22:53:00 +00:00 |
Arvid Norberg
|
27f84d1618
|
fixed minor error handling logging and assert issue in disk io thread
|
2010-11-26 20:38:31 +00:00 |
Arvid Norberg
|
6ba977aa9b
|
fixed bug in session_settings::disable_hash_checks
|
2010-11-07 21:41:03 +00:00 |
Arvid Norberg
|
4b6a73417d
|
fixed error reporting issue in disk I/O thread
|
2010-10-18 07:38:14 +00:00 |
Arvid Norberg
|
aa1da121bc
|
attempt to support disk IO priority on linux
|
2010-07-24 02:54:42 +00:00 |
Arvid Norberg
|
c6a6fe1c07
|
fixed typo
|
2010-07-23 19:11:00 +00:00 |
Arvid Norberg
|
9109af0ce1
|
fix for disk job queue size measurement
|
2010-07-23 16:15:14 +00:00 |
Arvid Norberg
|
4e576f93fd
|
removed the session mutex for improved performance
|
2010-07-14 04:16:38 +00:00 |
Arvid Norberg
|
996c68dfa7
|
timer fix
|
2010-06-21 05:45:45 +00:00 |
Arvid Norberg
|
f9ec9180ff
|
more disk cache cleanup optimizations
|
2010-05-16 23:14:47 +00:00 |
Arvid Norberg
|
e07bad0686
|
optimized disk I/O cache clearing
|
2010-05-13 15:01:20 +00:00 |
Arvid Norberg
|
85824b1924
|
fixed bug in the disk thread that could get triggered under heavy load
|
2010-05-05 05:44:45 +00:00 |
Arvid Norberg
|
24a3bbb985
|
optimize disk thread teardown for large read caches
|
2010-05-04 02:58:23 +00:00 |
Arvid Norberg
|
dce2edb6cc
|
fixed vs 2010 build
|
2010-04-30 19:08:16 +00:00 |
Arvid Norberg
|
fb28835452
|
slight performance fix in disk elevator algorithm
|
2010-04-24 21:53:45 +00:00 |
Arvid Norberg
|
225232906a
|
fixed disk I/O iterator bug
|
2010-04-14 22:02:49 +00:00 |
Arvid Norberg
|
1ee414f4b9
|
fixed iterator bug in disk I/O thread
|
2010-04-14 06:26:38 +00:00 |
Arvid Norberg
|
6975f4b350
|
fixed typo in asking for available amount of memory
|
2010-04-10 04:58:43 +00:00 |
Arvid Norberg
|
116c3f3c45
|
fix linux build
|
2010-03-12 03:17:25 +00:00 |
Arvid Norberg
|
79bd8fcd52
|
made the default cache size depend on the amount of physical RAM. and fixed disk thread settings update when loading through load_state
|
2010-03-10 07:14:10 +00:00 |
Arvid Norberg
|
9edb348093
|
read time is only cache misses
|
2010-03-04 03:49:06 +00:00 |
Arvid Norberg
|
a942890e8d
|
added more detailed instrumentation of the disk I/O thread
|
2010-03-03 07:09:04 +00:00 |
Arvid Norberg
|
fdb68ab784
|
attempt to not make m_buffer_queue_size to ever get negative
|
2010-03-03 04:32:06 +00:00 |
Arvid Norberg
|
053d11ea3e
|
fixed mutex lock typo
|
2010-02-24 00:04:28 +00:00 |
Arvid Norberg
|
278c1f91c0
|
fix typo in previous check-in
|
2010-02-21 09:03:56 +00:00 |
Arvid Norberg
|
59deff7a44
|
fixed issue with disk read cache not being cleared when removing torrents
|
2010-02-21 08:52:26 +00:00 |
Arvid Norberg
|
c263f8daf7
|
volatile cache improvement
|
2010-02-06 17:56:58 +00:00 |
Arvid Norberg
|
7b0555ae45
|
fixed disk cache bug
|
2010-02-05 04:30:57 +00:00 |
Arvid Norberg
|
c1b8124d20
|
volatile cache tuning
|
2010-02-01 01:11:10 +00:00 |
Arvid Norberg
|
238f7e38f5
|
improve disk stats logging to include cache hits
|
2010-01-31 21:13:52 +00:00 |
Arvid Norberg
|
ca20d2d600
|
fixed broken build
|
2010-01-31 20:22:35 +00:00 |
Arvid Norberg
|
5b747f58f7
|
add guided read cache and update tuning docs
|
2010-01-31 19:14:00 +00:00 |
Arvid Norberg
|
53144f6f14
|
fixes to the new disk cache and the volatile cache feature
|
2010-01-31 16:29:52 +00:00 |
Arvid Norberg
|
ccf8b0278a
|
added volatile read cache option
|
2010-01-30 03:50:17 +00:00 |
Arvid Norberg
|
f6c0d5af35
|
optimized disk cache to work with large caches
|
2010-01-27 04:25:45 +00:00 |
Arvid Norberg
|
a046850130
|
support disk I/O priority setting
|
2010-01-23 03:02:32 +00:00 |
Arvid Norberg
|
c9b594fde1
|
support sending suggest messages based on what's in the read cache. support 'explicit read cache'
|
2010-01-15 16:45:42 +00:00 |
Arvid Norberg
|
2948b3b375
|
fixed file checking bug introduced by fancy disk IO optimizations
|
2010-01-13 23:37:23 +00:00 |
Arvid Norberg
|
a1299c3a10
|
optimize disk I/O elevator algorithm to spend less time picking job
|
2010-01-12 01:56:48 +00:00 |
Arvid Norberg
|
d498c129ab
|
clear sparse flag on files that complete on windows
|
2010-01-09 18:40:05 +00:00 |
Arvid Norberg
|
ecb770eca7
|
always unlock while waiting for disk-IO
|
2009-12-25 16:13:35 +00:00 |
Arvid Norberg
|
6298322b1d
|
service disk-read requests that hit the cache immediately and circumvent the elevator ordering
|
2009-12-16 10:49:15 +00:00 |
Arvid Norberg
|
1f5859d31f
|
error_code fix. added is_error_code_enum template specialization and using the abbreviated syntax to build error_codes
|
2009-11-29 07:06:38 +00:00 |
Arvid Norberg
|
ab4b7f99ad
|
fixed error handling in read_into_piece
|
2009-11-28 03:14:08 +00:00 |
Arvid Norberg
|
a5586d154d
|
more header dependency optimizations
|
2009-11-25 06:55:34 +00:00 |
Arvid Norberg
|
6343fe6a6d
|
optimized header dependencies to lower build time
|
2009-11-23 08:38:50 +00:00 |
Arvid Norberg
|
562e2512b9
|
some vs2010 fixes
|
2009-11-22 23:55:54 +00:00 |
Arvid Norberg
|
c418165e07
|
replaced boost.filesystem with custom functions (improves efficiency and drops unnecessary dependencies and improves libtorrent portability)
|
2009-10-26 01:29:39 +00:00 |
Arvid Norberg
|
8a5b7d5d36
|
got rid of the last recursive mutexes. abstracted the threading primitives (and switched over to use asio's internal ones).
|
2009-10-20 02:49:56 +00:00 |
Arvid Norberg
|
6d01cb475c
|
msvc build fixes
|
2009-09-06 00:57:01 +00:00 |
Arvid Norberg
|
bec481acdf
|
improved disk read performance and fixed bug in storage_interface's backwards compatibility functions
|
2009-09-05 07:21:10 +00:00 |
Arvid Norberg
|
49f54a6f7f
|
file alignment and disk_io_thread bug fixes
|
2009-09-02 16:42:33 +00:00 |
Arvid Norberg
|
7933132cd9
|
fixed assert when built with disk stats
|
2009-08-05 19:02:51 +00:00 |
Arvid Norberg
|
63368c1383
|
added dummy storage class to disable disk I/O and an option to disable hash checking (for performance testing and simulation)
|
2009-08-02 06:40:45 +00:00 |
Arvid Norberg
|
838a246f6b
|
disk stats fix
|
2009-08-01 22:47:07 +00:00 |
Arvid Norberg
|
73a8673cfc
|
queued disk bytes fix
|
2009-07-26 19:54:16 +00:00 |
Arvid Norberg
|
ecdd7231b8
|
removed redundant code in disk_io_thread
|
2009-07-21 04:32:27 +00:00 |
Arvid Norberg
|
e9bd8f6e1f
|
turned fast-resume errors into error_codes. fixed typo in documentation
|
2009-06-28 00:36:41 +00:00 |
Arvid Norberg
|
306b75e6b1
|
boost 1.35 fixes
|
2009-06-19 16:42:33 +00:00 |
Arvid Norberg
|
3df15ad39e
|
fixed memory leak in disk io thread when not using the cache
|
2009-06-14 22:48:07 +00:00 |
Arvid Norberg
|
62a7946968
|
disk stats fix
|
2009-06-14 22:20:23 +00:00 |
Arvid Norberg
|
f0134c1b11
|
improved disk error handling and expanded use of error_code in error reporting
|
2009-06-10 08:30:55 +00:00 |
Arvid Norberg
|
e438a3ccfc
|
more boost-1.34.1 fixes
|
2009-06-03 07:46:50 +00:00 |
Arvid Norberg
|
a9a12a2391
|
fix build with boost-1.34.1
|
2009-06-03 07:22:43 +00:00 |
Arvid Norberg
|
bd33814376
|
improve disk error handling
|
2009-05-31 22:41:53 +00:00 |
Arvid Norberg
|
0283f07aed
|
more buffer categories to help debugging
|
2009-05-31 22:38:49 +00:00 |
Arvid Norberg
|
b2c5d8a563
|
include the piece index that failed in disk errors
|
2009-05-31 19:44:56 +00:00 |
Arvid Norberg
|
3e7bd46706
|
fixed handling of unaligned block requests
|
2009-05-31 19:33:54 +00:00 |
Arvid Norberg
|
d45e6cb118
|
fix bug in disk_io_thread
|
2009-05-31 10:15:45 +00:00 |
Arvid Norberg
|
bc83387583
|
fix uninitialized variable in disk_io_thread
|
2009-05-30 04:02:03 +00:00 |
Arvid Norberg
|
3ea52b240f
|
fixed memory leak in disk cache
|
2009-05-28 01:19:48 +00:00 |
Arvid Norberg
|
065bd283cf
|
timer fixes
|
2009-05-27 17:06:50 +00:00 |
Arvid Norberg
|
c66dda1c9f
|
fixed bug in disk cache flush, largest contiguous function
|
2009-05-27 16:50:46 +00:00 |
Arvid Norberg
|
2f627a4b00
|
attempt to mitigate read cache thrashing
|
2009-05-24 16:49:01 +00:00 |
Arvid Norberg
|
29d56f9a8b
|
improved read cache memory utilization
|
2009-05-24 15:32:14 +00:00 |
Arvid Norberg
|
a89d6cced1
|
clean up some disk cache duplication of logic and added another memory usage optimization for the write cache
|
2009-05-24 00:12:53 +00:00 |
Arvid Norberg
|
ae8488fb91
|
improved read cache memory efficiency
|
2009-05-23 19:27:27 +00:00 |
Arvid Norberg
|
e322b318ae
|
improved handling of out-of-memory conditions in disk I/O thread
|
2009-05-23 18:39:55 +00:00 |
Arvid Norberg
|
e197f5cb85
|
disk_io_thread assert fixes
|
2009-05-23 17:17:47 +00:00 |
Arvid Norberg
|
f9c12ef589
|
added more disk io asserts
|
2009-05-23 15:50:38 +00:00 |
Arvid Norberg
|
c1d9198dc3
|
added largest_contiguous cache flush algorithm
|
2009-05-23 07:35:45 +00:00 |
Arvid Norberg
|
1392b14fec
|
fixed disk_io error handling bugs
|
2009-05-23 03:05:21 +00:00 |
Arvid Norberg
|
e36ea4ba5d
|
added instrumentation for disk access. Useful to benchmark disk cache performance
|
2009-05-23 03:03:52 +00:00 |
Arvid Norberg
|
0127edac14
|
added disk-checking delay, to leave room for other disk operations while checking a torrent
|
2009-05-22 06:32:39 +00:00 |
Arvid Norberg
|
cb9c3cb37d
|
memory optimization for checking torrents
|
2009-05-21 16:15:05 +00:00 |
Arvid Norberg
|
c047f66454
|
improved disk buffer logging and added extra asserts when logging disk buffer stats
|
2009-05-19 07:00:05 +00:00 |
Arvid Norberg
|
062e1796c0
|
fixed crash when shutting down while checking a torrent
|
2009-05-13 17:17:33 +00:00 |
Arvid Norberg
|
85bf463e11
|
added session setting to control disk buffer pool allocation sizes
|
2009-05-12 18:52:05 +00:00 |
Arvid Norberg
|
039ee486af
|
use alloca for iovec arrays
|
2009-05-12 17:56:12 +00:00 |
Arvid Norberg
|
89e4c41ea2
|
fixed indentation
|
2009-05-11 21:19:03 +00:00 |
Arvid Norberg
|
1eb2799a03
|
added more allocation logging for statistics builds. Identified and fixed some memory waste
|
2009-05-07 20:30:20 +00:00 |
Arvid Norberg
|
838df44184
|
documented file_rename_failed_alert and file_renamed_alert. they were previously not documented. Fixed bug where the storage would be left in an error state (and eventually pause the torrent) when a rename_file() failed. The error is now only reported back through the alert
|
2009-05-07 06:41:41 +00:00 |
Arvid Norberg
|
ff3db926fb
|
allocates 10 disk buffers at a time instead of 32. Fixed bug where connection candidates would be too high
|
2009-05-06 07:06:26 +00:00 |
Arvid Norberg
|
cf6dc377c9
|
define fixes for disk stats build configurations
|
2009-05-04 06:42:24 +00:00 |
Arvid Norberg
|
641abc6c4a
|
slight memory optimization and some header cleanup
|
2009-05-03 20:21:24 +00:00 |
Arvid Norberg
|
807c1fc397
|
added validation check to disk_buffer_pool (and disk_io_thread in 0.14). This should catch any reference to the disk_io_thread after it has been destructed
|
2009-05-03 03:16:15 +00:00 |
Arvid Norberg
|
e4ddb13b6f
|
made the cache_size setting include send and receive buffers
|
2009-05-02 06:52:57 +00:00 |
Arvid Norberg
|
033fd5bd22
|
count send and receive buffers against the cache size limit
|
2009-05-01 08:00:58 +00:00 |
Arvid Norberg
|
509c8ed402
|
timed_wait does not seem to work as expected, revert to regular wait()
|
2009-04-15 16:32:05 +00:00 |
Arvid Norberg
|
91ba36a396
|
added compile time option for mlock support
|
2009-03-31 08:15:21 +00:00 |
Arvid Norberg
|
c6017f9366
|
reverted bug introduced a few check-ins ago. Fixed case when recursive_copy fails (don't remove the original files). Cleaned up callback dispatching in disk_io_thread in trunk. Improved unit tests for move_storage
|
2009-03-31 08:05:46 +00:00 |
Arvid Norberg
|
36eb9c4f51
|
move storage fix
|
2009-03-30 04:55:23 +00:00 |
Arvid Norberg
|
af10b55254
|
wakes up the disk io thread once a second to flush caches
|
2009-03-14 09:24:58 +00:00 |
Arvid Norberg
|
7ddffbac64
|
fixed windows build
|
2009-02-06 17:59:49 +00:00 |
Arvid Norberg
|
5c12db28d2
|
added option to lock disk cache in physical memory
|
2009-02-06 09:46:13 +00:00 |
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 |