openraft 0.10.0-alpha.22

Advanced Raft consensus
Documentation
//! Cluster membership configuration and management.
//!
//! This module defines types for managing Raft cluster membership, including voters and learners.
//!
//! ## Key Types
//!
//! - [`Membership`] - Cluster membership configuration (voters and learners)
//! - [`StoredMembership`] - Membership state stored in state machine
//! - [`IntoNodes`] - Trait for converting node sets with metadata
//!
//! ## Overview
//!
//! Membership configuration controls which nodes participate in the cluster:
//! - **Voters**: Participate in elections and voting, can become leader
//! - **Learners**: Receive log replication but don't vote
//!
//! Membership changes use joint consensus to ensure safety during configuration transitions.
//!
//! See also:
//! - [Dynamic membership guide](crate::docs::cluster_control::dynamic_membership)
//! - [Joint consensus guide](crate::docs::cluster_control::joint_consensus)

mod into_nodes;
#[allow(clippy::module_inception)]
mod membership;
mod membership_impl_quorum_set;
mod stored_membership;

#[cfg(feature = "bench")]
#[cfg(test)]
mod bench;

#[cfg(test)]
mod membership_test;
#[cfg(test)]
mod stored_membership_test;

pub use into_nodes::IntoNodes;
pub use membership::Membership;
pub use stored_membership::StoredMembership;