c9c6b0dbd4
Reorganize code
2020-04-23 17:05:46 +00:00
82f4cd8719
Continue pinging nodes when they are down ; overall better handling of down nodes
2020-04-23 16:06:11 +00:00
2fe82be3bc
RPC to ourself do not pass through serialization + HTTPS
2020-04-23 14:40:59 +00:00
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
ec59e896c6
Make UUID & Hash Copy and remove some .clone() noise
2020-04-21 17:08:42 +00:00
be0a2bae81
Add node tags in configuration
2020-04-21 14:08:28 +00:00
cc4f2f1cfb
Pretty logging
2020-04-21 12:54:55 +00:00
53cf4d1baa
Log which workers are doing what
2020-04-19 21:33:38 +00:00
ea75564851
More aggressive sync timings & improve other stuff
2020-04-19 17:59:59 +00:00
e325c7f47a
Add hostname to node info
2020-04-19 19:08:48 +02:00
a6129d8626
Begin implement bucket management & admin commands
2020-04-19 17:15:48 +02:00
7131553c53
Refactor sharding logic; coming next: full replication with epidemic dissemination
2020-04-19 13:22:28 +02:00
bd1618e78e
Remove proto.rs & move some definitions out of data.rs
2020-04-18 19:30:05 +02:00
f41583e1b7
Massive RPC refactoring
2020-04-18 19:21:34 +02:00
ace07da7c1
Fix walk_ring_from
2020-04-17 21:08:43 +02:00
6ce14e2c9e
Make all requests continue in the background even after we got enough responses.
2020-04-16 23:13:15 +02:00
2f3b1a072f
WIP
2020-04-16 19:28:02 +02:00
f01c1e71b5
Begin work on sync...
2020-04-16 14:50:49 +02:00
d1e8f78b2c
Trying to do TLS
2020-04-12 15:51:19 +02:00
9c931f5eda
Keep network status & ring in a tokio::sync::watch
...
advantages
- reads don't prevent preparing writes
- can be followed from other parts of the system by cloning the receiver
2020-04-11 23:53:32 +02:00
53289b69e5
Background task runner that replaces tokio::spawn
2020-04-11 18:51:11 +02:00
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
d66c0d6833
Why is it not Sync??
2020-04-09 23:45:07 +02:00
1d786c2c66
Something works
2020-04-09 18:43:53 +02:00
bacc76a057
Some work in actually storing things
2020-04-08 22:00:41 +02:00
d50edcdb4f
Basic workflow for client PUT, next is do actual storage
2020-04-08 00:39:07 +02:00
90cdffb425
custom data type for hashes and identifiers
2020-04-07 18:10:20 +02:00
82b7fcd280
Config management & ring
2020-04-07 17:00:48 +02:00
061e676136
Refactor; ability to update network config
2020-04-07 16:26:22 +02:00
46d5b896e8
Fix pinging
2020-04-07 00:00:43 +02:00
a7b85146fe
Forgot to recalculate hash at strategic locations
2020-04-06 23:10:54 +02:00
a09f019cc5
Seems to be fixed
2020-04-06 22:54:03 +02:00
87f2b4d2fc
Ununderstandable error
2020-04-06 22:27:51 +02:00
3c36b449a3
Some work
2020-04-06 21:02:15 +02:00
1a5e6e39af
Some more basic work
2020-04-06 19:55:39 +02:00