Commit Graph

111 Commits

Author SHA1 Message Date
arvidn 0b4339064f extend timeouts 2016-03-13 23:13:12 -04:00
arvidn 58e73c1469 fix typo 2016-03-13 20:47:50 -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
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
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
arvidn 57aa813135 fix auto-managed issue with torrents transitioning to 'slow' as they get paused, returning to life again later because of it 2016-02-23 01:28:58 -05:00
arvidn 88b7e3768f add sim test for optimistic unchoke round-robin distribution 2016-02-01 20:28:30 -05:00
arvidn f31d17c9c5 allow specifying which tracker to scrape in torrent_hadnle::scrape_tracker 2016-01-26 18:14:32 -05:00
arvidn 13f03ce38a print the actual stats in session_stats_alert::message() and make parse_session_stats.py parse the alert output. add stats_metric objects for all performance counters 2016-01-12 23:34:37 -05:00
arvidn f4d643bd2d instead of restarting the whole DHT when changing external IP, just rebuild the routing table and change the node IDs 2016-01-11 21:17:25 -05:00
Steven Siloti 7b5bdc3be9 DHT nodes can NOT share a receive buffer
While the simulation is single threaded, because async_receive_from_impl uses
post() to invoke the receive handler it is possible for multiple receive
handlers to be queued up in the io_service at the same time. If this happens
with a shared receive buffer the last packet received will overwrite all the
other packets before they are handled.

The use of post() is necessary to avoid unbounded recursion in the read handler
so each node must get its own buffer.
2016-01-10 18:30:16 -08:00
arvidn e06daa68a4 overhaul the dht simulator (setup_dht) to be more flexible and cheaper to run thousands of nodes 2016-01-09 01:08:52 -05:00
arvidn fb8d40a50c update libsimulator to fix msvc build 2015-12-31 21:31:15 -05:00
arvidn 448951af9c update libsimulator submodule 2015-12-28 19:48:58 -05:00
arvidn 1698dc75dc remove redundant boost::bind 2015-12-25 15:59:50 -05:00
arvidn fb9d788bf9 update libsimulator submodule 2015-12-23 23:04:09 -05:00
arvidn 9fd8b1d7c3 update libsimulator submodule 2015-12-23 21:52:11 -05:00
arvidn 63c3ff61e2 update submodule 2015-12-22 01:26:49 -05:00
arvidn 197ca4e06d transition http proxy test for http_connection to the sim 2015-12-22 00:45:16 -05:00
arvidn 99091a67d4 fix submodule 2015-12-19 00:11:04 -05:00
arvidn 1f3f06a836 forward port fix for deleting files of magnet link to master 2015-12-18 18:33:31 -05:00
arvidn 49b5a0d7d9 add support for codecov.io 2015-12-17 00:51:35 -05:00
arvidn 1712a8e4b4 polish the stop-when-ready flag and improve documentation 2015-12-13 20:31:28 -05:00
Arvid Norberg 550b0bb047 Merge pull request #313 from arvidn/setup-swarm-cleanup
clean up setup-swarm simulation utility to be more flexible
2015-12-12 14:07:26 -05:00
arvidn d505f93d7a port sim tests to use the new setup_swarm API 2015-12-12 00:41:47 -05:00
arvidn 1f453bf159 clean up setup-swarm simulation utility to be more flexible to make it easier to add new tests. remove swarm_suite layer as it's not necessary anymore 2015-12-12 00:41:40 -05:00
arvidn d80a129871 fix gcc warnings 2015-12-12 07:15:24 +02:00
arvidn 99eb440945 comment in test_swarm 2015-12-04 23:39:37 -05:00
arvidn 332799bff2 make alert types declared final and disable the log alert declarations when logging is disabled 2015-11-29 10:16:02 -05:00
arvidn 2c3d7ee0ef fix a bug where the torrent's invariant was not always maintained as well as a shutdown issue (now covered by test as well) 2015-11-28 14:14:49 -05:00
arvidn 7b84c8122e extend test_transfer to include IPv6-only networks 2015-11-28 01:00:06 -05:00
arvidn a8e31fd8ca add first coverage of test_transfer as a proper sim 2015-11-28 00:59:39 -05:00
arvidn 847cd340ee extend tracker sim test and fix some bugs in tracker error reporting 2015-11-24 23:38:49 -05:00
arvidn eed17f0bc1 remove the cases from non-sim test that are covered by the new http_connection sim test 2015-11-24 00:39:02 -05:00
arvidn 47cd496617 extend http_connection sim test to proxy hostnames 2015-11-24 00:39:02 -05:00
arvidn 710e510c4b fix format string to be msvc compatible and work-around issue with boost.asio beeing header-only and instantiating multiple error_category objects when linking shared 2015-11-24 00:39:02 -05:00
arvidn e3dad98fbe fix an old use of posix_category. make http_connection translate IPs into proper endpoints when connecting over socks (instead of passing the IP on as a hostname string). add test coverage 2015-11-24 00:39:02 -05:00
arvidn 92236a9923 clean up error_code use, and use error_condition to test for errors in test_http_connection 2015-11-24 00:39:01 -05:00
arvidn fa3215f8c7 don't capture buffer by value in lambda expression 2015-11-24 00:39:01 -05:00
arvidn 8db3fef969 update libsimulator 2015-11-24 00:39:01 -05:00
arvidn 174e0aeb46 fix semantics of socks5_stream and http_connection to make them not close themselves. Add socks5 and socks4 proxy coverage in test_http_connection 2015-11-24 00:39:01 -05:00
arvidn 91868f2086 add test for gzipped http responses 2015-11-24 00:39:01 -05:00
arvidn 9e971895dc test chunked encoding in new http_connection test 2015-11-24 00:39:01 -05:00
arvidn c6e46ae305 improve http_connection simulation test and extend it 2015-11-24 00:39:01 -05:00
arvidn f4a2b4d949 start of an http_connection test under the simulator 2015-11-24 00:39:01 -05:00
arvidn ed3dbaa78e also make sure trackers are subject to the IP filter 2015-11-21 09:30:02 -05:00
arvidn 73381d223b add integration test for IP filter 2015-11-21 02:31:53 -05:00
arvidn 4a30653084 improve coverage of stop-start-test 2015-11-20 22:27:33 -05:00
arvidn c0d6b20634 extend swarm simulation test to include stopping and starting and graceful pause 2015-11-20 22:27:12 -05:00