issues
search
vmware-archive
/
haret
A strongly consistent distributed coordination system, built using proven protocols & implemented in Rust.
461
stars
18
forks
source link
Refactor VR protocol FSM and fix a bunch of it
#126
Closed
andrewjstone
closed
7 years ago
andrewjstone
commented
7 years ago
Reconfiguration is now properly committed in the old epoch
Recovery uses a u64 nonce stored on disk
NamespaceMgr no longer determines how replicas start up
Replica determines if it needs to be in recovery or initial state based on whether the nonce exists when it starts up
Replicas start up in primary or backup state on initial startup instead of doing a view change immediately
Each state now has its own state specific data
Shared data lives in VrCtx
funfsm is no longer used
Also:
Remove unused debugger files
Remove build dependencies from stop-dev in Makefile
Add a unit test for primary state
Add doc explaining the VR code
https://github.com/vmware/haret/blob/5e33345761b83771088ae9728ce4ca82f54cb124/src/vr/README.md
Add a disk manager
First use case of disk manager is reading and writing nonces for recovery purposes
andrewjstone
commented
7 years ago
Merging, as it certainly doesn't make anything worse :)
Also: