1 unstable release

0.1.0 Jun 15, 2023

#331 in Database implementations

Apache-2.0

400KB
7.5K SLoC

SuRaft

SuRaft implements the Raft protocol where an extended version of the Raft paper is available. The paper introduces Raft and states its motivations in following words:

Raft is a consensus algorithm for managing a replicated log. It produces a result equivalent to (multi-)Paxos, and it is as efficient as Paxos, but its structure is different from Paxos; this makes Raft more understandable than Paxos and also provides a better foundation for building practical systems.

License

This project is released under Apache License, Version 2.0.

Original sources are distributed under the same license with different copyright owner:

  • The authors of etcd-io/raft are noted as The etcd Authors.
  • The authors of tikv/raft-rs are noted as TiKV Project Authors.

To simplify conveying licenses, all sources before b2c6f6c9 (inclusive) can be regarded as copied identically. All the following commits are made independently unless explict noted.

Acknowledgement

This project is derived from tikv/raft-rs, as a fork to satisfy requirements from Kalpas. raft-rs is, recursively, derived from etcd-io/raft.

Dependencies

~4–18MB
~246K SLoC