Commit graph

606 commits

Author SHA1 Message Date
Joakim Frostegård
c6052571c4 github workflow test-transfer-udp-http: fix syntax error 2020-08-17 19:28:33 +02:00
Joakim Frostegård
de2b7cb187 Add GitHub Docker action for testing UDP and HTTP file transfers
The Dockerfile works when run locally. The GitHub action
plumbing may or not work in this state.
2020-08-17 00:49:12 +02:00
Joakim Frostegård
a2eff88bcb Update TODO 2020-08-16 23:25:06 +02:00
Joakim Frostegård
4e0fc68548 aquatic http and ws: when cleaning torrents, update statistics 2020-08-16 23:24:44 +02:00
Joakim Frostegård
3d35bd9bd4 aquatic http and ws: raise default max peer and connection age
There was a problem with aquatic_http with clients announcing
less often than requested interval and getting purged, making
file transfers less reliable
2020-08-16 23:24:29 +02:00
Joakim Frostegård
a9f9b59086 Update TODO 2020-08-16 23:11:53 +02:00
Joakim Frostegård
6ee8ed4895 aquatic_common: extract response peers: don't return sender
Seems to fix or at least help with some issues with
real clients being slow to initiate transfers
2020-08-16 23:07:39 +02:00
Joakim Frostegård
b5452c2954 aquatic_http: debug-log responses in full 2020-08-16 21:15:05 +02:00
Joakim Frostegård
25abadb39f
Update cargo-build-and-test.yml 2020-08-13 05:18:55 +02:00
Joakim Frostegård
1d8ee05b19
Create GitHub CI file cargo-build-and-test.yml 2020-08-13 05:16:43 +02:00
Joakim Frostegård
7c8729f256 aquatic_udp: replace some expect calls with anyhow error returns 2020-08-13 04:58:12 +02:00
Joakim Frostegård
f4187f4368 aquatic_udp: use log crate instead of eprintln, add LogLevel to Config 2020-08-13 04:52:50 +02:00
Joakim Frostegård
dd19f32a2a aquatic help output: print short protocol descriptions 2020-08-13 04:34:10 +02:00
Joakim Frostegård
67234744e9 Remove plot_pareto crate 2020-08-13 04:19:00 +02:00
Joakim Frostegård
4e5750346d Update TODO 2020-08-13 04:04:15 +02:00
Joakim Frostegård
88423976c4 aquatic_http, aquatic_ws: add option for printing statistics
statistics are on number of peers per torrent
2020-08-13 03:58:28 +02:00
Joakim Frostegård
23a562c1e5 README: make load test section more concise 2020-08-13 02:24:56 +02:00
Joakim Frostegård
ed6179cc63 Update TODO 2020-08-13 02:09:01 +02:00
Joakim Frostegård
6b3d9e00d8 aquatic_udp: drop unused channel senders & receivers 2020-08-13 02:08:19 +02:00
Joakim Frostegård
b9ab650138 README: don't say http and ws only support single request worker 2020-08-13 01:52:01 +02:00
Joakim Frostegård
2b4cd2dea1 aquatic_http: support multiple request workers 2020-08-13 01:50:18 +02:00
Joakim Frostegård
875eb122c7 aquatic_ws: support multiple request workers 2020-08-13 01:50:01 +02:00
Joakim Frostegård
cf0623e302 aquatic_ws_protocol: fix warning about JsonValue Arbitrary impl
Now it is clearer that only a single value is ever generated
2020-08-13 01:05:20 +02:00
Joakim Frostegård
77ac17dec4 Run cargo update 2020-08-13 01:00:54 +02:00
Joakim Frostegård
0aa781a79c aquatic_ws_load_test: fix unused variable compiler warnings 2020-08-13 00:54:14 +02:00
Joakim Frostegård
67c346f88e aquatic_http_load_test: fix compiler unused variable warnings 2020-08-13 00:53:26 +02:00
Joakim Frostegård
74e1ecf384 aquatic_http_protocol: remove unused utility function "urldecode" 2020-08-13 00:51:56 +02:00
Joakim Frostegård
639b8db072 README: refer to aquatic master executable in instructions 2020-08-13 00:45:19 +02:00
Joakim Frostegård
17844d05e3 Update TODO 2020-08-13 00:18:42 +02:00
Joakim Frostegård
beea0e7d97 add scripts/build-aquatic.sh 2020-08-13 00:15:43 +02:00
Joakim Frostegård
9efc1fc66a add aquatic crate with master executable, refactor cli_helpers 2020-08-13 00:13:01 +02:00
Joakim Frostegård
c69b09ab9c aquatic ws protocol: improve Arbitrary impl for JsonValue 2020-08-12 05:22:37 +02:00
Joakim Frostegård
acc1a0fd74 aquatic_ws: update tests to use simd-json 2020-08-12 05:14:27 +02:00
Joakim Frostegård
8c4d3e5cb9 Update TODO 2020-08-12 04:45:54 +02:00
Joakim Frostegård
6f955235ea aquatic http: log at debug level for unrecognized keys in request parse
"downloaded" and "uploaded" occur all the time since they are
part of the specification
2020-08-12 04:38:47 +02:00
Joakim Frostegård
bc5cd90371 aquatic http: use serde_bencode for deserialization
bendy seems not to manage lack of trailing newline
2020-08-12 04:26:09 +02:00
Joakim Frostegård
7a96313173 aquatic_http_protocol: send host header for scrape requests too 2020-08-12 04:23:26 +02:00
Joakim Frostegård
e6a74c5bfe aquatic http load test: send Host header, downloaded&uploaded keys 2020-08-12 04:08:43 +02:00
Joakim Frostegård
01a3e7795a aquatic ws load test: set default num_connections to 16 2020-08-12 01:38:29 +02:00
Joakim Frostegård
884a2aa67d aquatic ws: deserialize OutMessage properly
Performance seems to be about the same
2020-08-12 01:24:28 +02:00
Joakim Frostegård
dea88020a5 aquatic ws load test: use longer json value when sending answer 2020-08-12 00:52:07 +02:00
Joakim Frostegård
0c168404db aquatic ws load test: add offers_per_request config var, default 10 2020-08-12 00:42:21 +02:00
Joakim Frostegård
cff9b44a7f move RUSTFLAGS gen to own file instead of setting in each script 2020-08-12 00:28:03 +02:00
Joakim Frostegård
b3caa7ab7b Update TODO 2020-08-12 00:20:00 +02:00
Joakim Frostegård
29e3d695a0 Update TODO 2020-08-12 00:13:36 +02:00
Joakim Frostegård
9af4e4663d aquatic_ws: send responses for every event, wake mio for responses 2020-08-11 23:58:00 +02:00
Joakim Frostegård
de1a299f1e aquatic_ws: InMessage::to_ws_message: don't take ownership 2020-08-11 23:24:46 +02:00
Joakim Frostegård
63e5fe11c9 aquatic http protocol: delete obsoleted bench_request_from_path 2020-08-11 23:06:05 +02:00
Joakim Frostegård
f2d697011b Don't use target-cpu native etc in scripts/test.sh 2020-08-11 23:04:28 +02:00
Joakim Frostegård
56bc028a44 aquatic_ws: OutMessage and InMessage simd-json fixes
* use simd-json in OutMessage deserialization
* take ownership in InMessage deserialization to avoid bugs
* Update benchmark results, benchmark was broken
* Compile simd-json even if simd is not on, so that rust-analyzer
  works
2020-08-11 23:02:19 +02:00