vsr-rs
vsr-rs copied to clipboard
Viewstamped Replication for Rust
We need to notify the client when a primary has changed so that they won't keep sending messages to the old one.
We need to make `Replica` keep track of (logical) time so that it can detect timeouts based on the `tick()` event. This simplifies simulation as well because we can, for...
For example, let's assume a replica is attempting to catch up by sending `GetState` message. It will now wait to receive a `NewState` message, but there are many reasons why...