Commit Graph

52 Commits

Author SHA1 Message Date
James Wilson b842c7fc8b expose dropped message counts and fix some typos/wording 2021-08-13 11:33:53 +01:00
James Wilson 230987036a cargo fmt 2021-08-12 16:01:35 +01:00
James Wilson 4f7b2c8ec5 Confirm that densemap len wont panic if lots of retired items 2021-08-12 16:01:30 +01:00
James Wilson bd7a21ec39 Flumify everything 2021-08-12 16:01:17 +01:00
James Wilson 703a9ddc4e use flume throughout telemetry_core 2021-08-12 16:01:14 +01:00
James Wilson 98c9ccd278 fmt, clean warnings, tidy aggregator opts and add queue length limit 2021-08-12 16:01:11 +01:00
James Wilson 87c0ee7d0d monitor aggregator length (dont discard msgs yet) 2021-08-12 16:00:56 +01:00
James Wilson 80d6ad916e Address David's comments 2021-08-11 17:23:22 +01:00
James Wilson f26b39ac63 Address feedback from Niklas 2021-08-11 16:59:11 +01:00
James Wilson c469ef8dfe make AggregatorSet close to zero cost when only 1 aggregator asked for 2021-08-09 10:09:17 +01:00
James Wilson 88c3db3562 cargo fmt 2021-08-06 17:44:26 +01:00
James Wilson 74cf55174e Use rayon to speed up subscribe message serializing 2021-08-06 17:42:03 +01:00
James Wilson c2892286a6 Add a comment 2021-08-02 09:54:11 +01:00
James Wilson b79759a412 Tidy up close handling and allow either side to close 2021-08-02 09:50:31 +01:00
James Wilson 963ef576f3 add on_close to abstract and simplify ws_client socket closing 2021-08-02 09:30:29 +01:00
James Wilson 13afb96f93 Be more fussy with Soketto channel wrapper; Soketto might do otherwise, but we only explicitly close the connection when both ends of the channel handed out are closed (or we encounter a connection error) 2021-07-30 21:26:52 +01:00
James Wilson 18918e6d3e undo a previous change; close the connection if either side of the channel handed back is dropped/fails 2021-07-30 19:43:26 +01:00
James Wilson a5b04cb4f0 improve socket channel close handling, and test the node banning (roughly) 2021-07-30 18:58:10 +01:00
James Wilson b70ab9ed3d Add license to the top of each source file 2021-07-29 17:34:40 +01:00
James Wilson 8a23f342a4 add another test for the rolling total 2021-07-29 08:53:13 +01:00
James Wilson 5f022069db cargo fmt 2021-07-28 16:15:34 +01:00
James Wilson 83d31ef0b3 Add rolling total and allow control over bytes per second allowed from node connections 2021-07-28 16:08:02 +01:00
James Wilson 2ca5f6a1fb cargo fmt 2021-07-27 12:38:05 +01:00
James Wilson ecf5fccaab make possible to test, test, and fix feed cutoff 2021-07-26 16:38:24 +01:00
James Wilson 50935b29fc put a deadline on message sending to feeds 2021-07-26 11:52:46 +01:00
James Wilson e043de8ddb Expose raw Soketto interface via ws_client for more control where needed (eg in tests) 2021-07-26 11:31:40 +01:00
James Wilson cf0e424803 Adapt shard to use hyper+soketto instead 2021-07-23 17:07:29 +01:00
James Wilson 0eff32d10e Migrate telemetry_core to Hyper+Soketto 2021-07-23 15:57:50 +01:00
James Wilson 999d8ff0bd debounce feed polling a little to reduce CPU load when lots of messages are being sent out 2021-07-21 12:06:22 +01:00
James Wilson cca1df2e21 use ws_client in shard, too, and make it better at handling core disconnecting 2021-07-20 13:04:10 +01:00
James Wilson c1208b9e81 cargo fmt 2021-07-13 16:51:24 +01:00
James Wilson 9ac5ea7624 Various bits and pieces to address PR comments 2021-07-13 16:51:14 +01:00
James Wilson 28be68e65f Get a basic first test working, and lots of changes to supporting code to facilitate this 2021-07-09 19:41:53 +01:00
James Wilson ea98b15def No need for LogLevel 2021-07-01 15:59:41 +01:00
James Wilson 4bb1f19085 add some doc comments 2021-07-01 09:58:18 +01:00
James Wilson 5d00445324 Make syntax of id_type identical to normal tuple struct 2021-07-01 09:38:53 +01:00
James Wilson 509542e460 fmt 2021-07-01 09:38:26 +01:00
James Wilson f7ab3292c2 Move a bunch of things around and flatten common crate 2021-06-30 17:27:10 +01:00
James Wilson 4308359feb Give things unique ID types, not aliases, to prevent mixups 2021-06-30 16:59:03 +01:00
James Wilson c5ca84ee9a Add some State tests, and use genesis_hash, not label, where possible 2021-06-28 11:20:48 +01:00
James Wilson 8a0eb14aca test and fix most_seen 2021-06-28 10:29:40 +01:00
James Wilson 89dfad5bbe Handle removing a node, and a shard disconnecting (bulk remove) 2021-06-25 17:21:24 +01:00
James Wilson 47c12ce210 Lots more refactoring, finish add node (and almost the location updating) 2021-06-23 18:03:11 +01:00
James Wilson 2db2677217 bimap to store global ID mappings: we'll assign them in node state 2021-06-23 10:12:50 +01:00
James Wilson 63283195ad WIP filling in core aggregator match arms and various other tweaks 2021-06-23 09:34:56 +01:00
James Wilson 19ef458e5b Allow multiple SystemConnects to be handled from a single node in the shard 2021-06-21 16:27:42 +01:00
James Wilson 20524ac8ae wrap assigning local/global IDs into struct to avoid things getting out of sync 2021-06-21 14:18:44 +01:00
James Wilson dfe016597e Rework: Shard working, Telemetry Core needs logic filling in 2021-06-21 10:45:31 +01:00
James Wilson 3a527e69c8 Get chatter between shard and core working 2021-06-16 11:57:58 +01:00
James Wilson 588f1ea027 remove a few unnecessary structs 2021-06-16 11:24:00 +01:00