Core API¶ raft — Algorithm state Data types raft_state raft Public members id API raft_init() raft_close() raft_step() raft_current_term() raft_voted_for() raft_commit_index() raft_timeout() raft_event — External events Data types raft_event_type raft_event Common fields time type capacity Start start Receive receive Persisted entries persisted_entries Persisted snapshot persisted_snapshot Configuration configuration Snapshot taken snapshot Submit submit Catch-up server catch_up Transfer leadership transfer raft_update — State updates Data types raft_update Public members flags Current Term RAFT_UPDATE_CURRENT_TERM Voted for RAFT_UPDATE_VOTED_FOR Entries RAFT_UPDATE_ENTRIES entries Snapshot RAFT_UPDATE_SNAPOSHOT snapshot Messages RAFT_UPDATE_MESSAGES messages State RAFT_UPDATE_STATE Commit index RAFT_UPDATE_COMMIT_INDEX Timeout RAFT_UPDATE_TIMEOUT raft_message — RPC messages Data types raft_message_type raft_message RequestVote raft_request_vote RequestVote result raft_request_vote_result AppendEntries raft_append_entries AppendEntries result raft_append_entries_result InstallSnapshot raft_install_snapshot TimeoutNow raft_timeout_now Basic types Data types raft_id raft_term raft_index raft_time raft_buffer raft_entry_type raft_entry