This adds manual snapshot capabilities to the system. The user may turn on auto snapshots and set a maximum snapshot size, and the Raft implementation will take snapshots for them. Alternatively, the use may take a snapshot at any point using the TakeSnapshot function.
Additionally, this removed the pkg directory, refactored many components of the system, and added additional tests.
This adds manual snapshot capabilities to the system. The user may turn on auto snapshots and set a maximum snapshot size, and the Raft implementation will take snapshots for them. Alternatively, the use may take a snapshot at any point using the
TakeSnapshot
function.Additionally, this removed the
pkg
directory, refactored many components of the system, and added additional tests.