Commit Graph

37 Commits

Author SHA1 Message Date
Alex d8f5e643bc Split code for modular compilation 2020-04-24 10:10:01 +00:00
Alex 51fb3799a1 Key management admin commands 2020-04-23 20:25:45 +00:00
Alex 4ef84a0558 Move repair to separate file 2020-04-23 18:36:12 +00:00
Alex c9c6b0dbd4 Reorganize code 2020-04-23 17:05:46 +00:00
Alex 01a8acdeec Better error reporting 2020-04-23 16:23:06 +00:00
Alex 82f4cd8719 Continue pinging nodes when they are down ; overall better handling of down nodes 2020-04-23 16:06:11 +00:00
Alex e8214cb180 Better concurrency:
Use Notify instead of stupid sleep in background worker
Use Semaphore to limit concurrent requests in rpc_client
Make more background tasks cancellable
2020-04-22 16:51:52 +00:00
Alex ec59e896c6 Make UUID & Hash Copy and remove some .clone() noise 2020-04-21 17:08:42 +00:00
Alex b1ddb933b0 Make the repair command accept subcommands to not do everything all the time 2020-04-21 16:40:17 +00:00
Alex be0a2bae81 Add node tags in configuration 2020-04-21 14:08:28 +00:00
Alex cc4f2f1cfb Pretty logging 2020-04-21 12:54:55 +00:00
Alex 5ae32972ef Implement repair command 2020-04-19 20:36:36 +00:00
Alex ea75564851 More aggressive sync timings & improve other stuff 2020-04-19 17:59:59 +00:00
Alex e325c7f47a Add hostname to node info 2020-04-19 19:08:48 +02:00
Alex a6129d8626 Begin implement bucket management & admin commands 2020-04-19 17:15:48 +02:00
Alex 302502f4c1 Add support for fully replicated tables with epidemic dissemination of updates 2020-04-19 15:14:23 +02:00
Alex 7131553c53 Refactor sharding logic; coming next: full replication with epidemic dissemination 2020-04-19 13:22:28 +02:00
Alex bd1618e78e Remove proto.rs & move some definitions out of data.rs 2020-04-18 19:30:05 +02:00
Alex f41583e1b7 Massive RPC refactoring 2020-04-18 19:21:34 +02:00
Alex e8d750175d Implement ring comparison algorithm 2020-04-16 17:04:28 +02:00
Alex f01c1e71b5 Begin work on sync... 2020-04-16 14:50:49 +02:00
Alex 9f8b3b5a18 TLS for command line client 2020-04-12 19:41:19 +02:00
Alex d1e8f78b2c Trying to do TLS 2020-04-12 15:51:19 +02:00
Alex 53289b69e5 Background task runner that replaces tokio::spawn 2020-04-11 18:51:11 +02:00
Alex cf8fd948fc Add block ref table 2020-04-10 23:11:52 +02:00
Alex a50f07dfdc Refactor 2020-04-10 22:26:48 +02:00
Alex 3477864142 Fix the Sync issue. Details:
So the HTTP client future of Hyper is not Sync, thus the stream
that read blocks wasn't either. However Hyper's default Body type
requires a stream to be Sync for wrap_stream. Solution: reimplement
a custom HTTP body type.
2020-04-10 22:01:48 +02:00
Alex d66c0d6833 Why is it not Sync?? 2020-04-09 23:45:07 +02:00
Alex 101444abb3 Some progress 2020-04-09 17:32:28 +02:00
Alex bacc76a057 Some work in actually storing things 2020-04-08 22:00:41 +02:00
Alex 90cdffb425 custom data type for hashes and identifiers 2020-04-07 18:10:20 +02:00
Alex 82b7fcd280 Config management & ring 2020-04-07 17:00:48 +02:00
Alex 061e676136 Refactor; ability to update network config 2020-04-07 16:26:22 +02:00
Alex 46d5b896e8 Fix pinging 2020-04-07 00:00:43 +02:00
Alex 3c36b449a3 Some work 2020-04-06 21:02:15 +02:00
Alex 1a5e6e39af Some more basic work 2020-04-06 19:55:39 +02:00
Alex 7102db1d54 First commit: skeleton for something great 2020-04-05 23:33:42 +02:00