Expand description
Shared cluster identity and membership model.
Re-exports§
pub use bootstrap_authority::is_cluster_shaped;pub use bootstrap_authority::plan_vault_bootstrap;pub use bootstrap_authority::AuthBootstrapInput;pub use bootstrap_authority::BootstrapDisposition;pub use bootstrap_authority::VaultBootstrapPlan;pub use commit_resolution::is_local_ack;pub use commit_resolution::resolve_commit_policy;pub use commit_resolution::CollectionDataModel;pub use commit_resolution::CommitPolicyResolution;pub use commit_resolution::CommitPolicyViolation;pub use commit_resolution::FailoverEligibility;pub use commit_resolution::GuardrailDisposition;pub use commit_resolution::HaIntent;pub use commit_resolution::ResolutionSource;pub use control_plane::ControlPlaneConsensus;pub use control_plane::ControlPlaneEntry;pub use control_plane::ControlPlaneError;pub use control_plane::ControlPlaneIndex;pub use control_plane::ControlPlaneTerm;pub use control_plane::DurableVoteState;pub use control_plane::MembershipChange;pub use control_plane::OwnershipTransition;pub use control_plane::SingleNodeControlPlane;pub use cross_range::ConsistentReadLeg;pub use cross_range::ConsistentReadPlan;pub use cross_range::ConsistentReadReject;pub use cross_range::GlobalReadWatermark;pub use cross_range::KeyTarget;pub use cross_range::PinnedTarget;pub use cross_range::RangeParticipant;pub use cross_range::ReadFanout;pub use cross_range::ReadFanoutReject;pub use cross_range::ReadLeg;pub use cross_range::ResolvedTarget;pub use cross_range::WriteTransactionPlan;pub use cross_range::WriteTransactionReject;pub use cross_range::WriterParticipation;pub use drain::drain_status;pub use drain::plan_drain;pub use drain::plan_force_remove;pub use drain::run_drain;pub use drain::run_force_remove;pub use drain::DrainBlock;pub use drain::DrainBlockReason;pub use drain::DrainOutcome;pub use drain::DrainPlan;pub use drain::DrainStatus;pub use drain::DrainStep;pub use drain::ForceCapability;pub use drain::ForceRemoveAudit;pub use drain::ForceRemoveOrder;pub use drain::ForceRemoveOrderError;pub use drain::ForceRemovePlan;pub use drain::ForceRemoveResult;pub use drain::ForcedBlock;pub use drain::ForcedPromotion;pub use drain::OwnedHandoff;pub use drain::RemovalRejection;pub use drain::ReplicaEvacuation;pub use identity::ClusterVoterIdentity;pub use identity::NodeIdentity;pub use identity::NodeIdentityError;pub use identity::ReplicationPeerIdentity;pub use join::ControlPlaneSnapshot;pub use join::JoinGrant;pub use join::JoinRejection;pub use join::JoinRequest;pub use join::SeedAuthority;pub use membership::AdmissionOutcome;pub use membership::BaselineAssessment;pub use membership::ClusterId;pub use membership::ClusterIdError;pub use membership::ClusterMember;pub use membership::MemberKind;pub use membership::MemberState;pub use membership::MembershipCatalog;pub use membership::RESILIENT_DATA_MEMBER_BASELINE;pub use move_range::classify_move;pub use move_range::recover_interrupted_move;pub use move_range::split_range;pub use move_range::MoveError;pub use move_range::MoveKind;pub use move_range::MovePhase;pub use move_range::MoveRange;pub use move_range::MoveRecovery;pub use move_range::RangeSplit;pub use move_range::SplitError;pub use move_range::SplitPolicy;pub use move_range::SplitSide;pub use ownership::CatalogError;pub use ownership::CatalogVersion;pub use ownership::CollectionId;pub use ownership::CollectionIdError;pub use ownership::OwnershipEpoch;pub use ownership::PlacementMetadata;pub use ownership::RangeBound;pub use ownership::RangeBounds;pub use ownership::RangeBoundsError;pub use ownership::RangeId;pub use ownership::RangeOwnership;pub use ownership::RangeRole;pub use ownership::RangeWriteReject;pub use ownership::ShardKeyMode;pub use ownership::ShardOwnershipCatalog;pub use ownership::UpdateOutcome;pub use ownership_force::force_transition;pub use ownership_force::EmptyOperatorReason;pub use ownership_force::ForceDenial;pub use ownership_force::ForceFailure;pub use ownership_force::ForceTransitionCapability;pub use ownership_force::ForcedTransitionAudit;pub use ownership_force::ForcedTransitionDisposition;pub use ownership_force::ForcedTransitionRequest;pub use ownership_force::OperatorReason;pub use ownership_lease::admit_durable_write;pub use ownership_lease::DurableWriteReject;pub use ownership_lease::FenceReason;pub use ownership_lease::LeaseFenceRejection;pub use ownership_lease::LeasedOwner;pub use ownership_lease::OwnerWriteMode;pub use ownership_lease::OwnershipLease;pub use ownership_lease::RangeRequest;pub use ownership_lease::SupervisorTerm;pub use ownership_transition::prepare;pub use ownership_transition::run_transition;pub use ownership_transition::CatchUpEvidence;pub use ownership_transition::CommitWatermark;pub use ownership_transition::InvalidCandidateReason;pub use ownership_transition::PreparedTransition;pub use ownership_transition::TransitionError;pub use ownership_transition::TransitionKind;pub use ownership_transition::TransitionOutcome;pub use ownership_transition::TransitionRejection;pub use ownership_transition::TransitionRequest;pub use placement::HotspotRange;pub use placement::MemberCapacity;pub use placement::MoveReason;pub use placement::PlacementPolicy;pub use placement::PlacementSignals;pub use placement::PlannedMove;pub use placement::RangeLoad;pub use placement::RebalancePlan;pub use placement::WeightedPlacementPlanner;pub use placement::NEUTRAL_OPERATOR_WEIGHT;pub use routing::RedirectReason;pub use routing::RequestOperation;pub use routing::RouteDecision;pub use routing::RoutedRequest;pub use routing::RoutingHint;pub use routing::RoutingPolicy;pub use routing::DEFAULT_MAX_FORWARD_PAYLOAD;pub use slot::hash_shard_key_to_range_key;pub use slot::hash_shard_key_to_slot;pub use slot::HashSlot;pub use slot::HashSlotError;pub use slot::PRODUCTION_HASH_SLOT_COUNT;pub use supervisor::BlockedFailover;pub use supervisor::BlockedReason;pub use supervisor::ClusterSignals;pub use supervisor::ClusterSupervisor;pub use supervisor::FailoverPlan;pub use supervisor::HealthClass;pub use supervisor::HealthPolicy;pub use supervisor::HealthScore;pub use supervisor::MemberSignals;pub use supervisor::PlannedPromotion;pub use topology::ClientTopology;pub use topology::HintOutcome;pub use topology::RefreshOutcome;pub use topology::TopologyRange;pub use topology::TopologySnapshot;pub use topology::TopologyUpdate;
Modules§
- bootstrap_
authority - Cluster bootstrap authority — fail-closed seam (ADR 0058).
- commit_
resolution - Commit policy resolution for multi-writer clusters (issue #1001, PRD #987).
- control_
plane - The Cluster Supervisor control-plane consensus boundary (issue #996, PRD #987, ADR 0052).
- cross_
range - First-cut cross-range transaction and read behaviour (issue #1002, PRD #987).
- drain
- Cluster drain and force-remove flows (issue #1000, PRD #987, ADR 0037).
- identity
- Per-node cluster identities shared by replication and voting.
- join
- Authenticated cluster join through seed members (issue #988, ADR 0030).
- membership
- Cluster member identity, the authorized-member catalog, and the resilient three-data-member baseline (issue #988, PRD #987, ADR 0030).
- move_
range - Split-and-move planning and the move-range cutover state machine (issue #1004, PRD #987, ADR 0037).
- ownership
- The global shard ownership catalog (issue #989, PRD #987, ADR 0037).
- ownership_
force - Forced ownership transitions for disaster recovery (issue #999, PRD #987, ADR 0037).
- ownership_
lease - Ownership leases and owner self-fence behavior (issue #997, PRD #987, ADR 0037).
- ownership_
transition - Ownership transition state machine for promote and fenced handoff (issue #995, PRD #987, ADR 0037).
- placement
- Weighted placement and the multi-signal rebalancer planner (issue #1003, PRD #987, ADR 0037).
- routing
- Any-node routing and stale-ownership responses (issue #993, PRD #987, ADR 0037).
- slot
- Hash-slot routing primitives for cluster shard keys.
- supervisor
- Member health scoring and automatic range failover (issue #998, PRD #987, ADR 0037).
- topology
- Topology refresh and routing-hint client contract (issue #994, PRD #987, ADR 0037).