Skip to main content

nodedb_cluster/
lib.rs

1pub mod bootstrap;
2pub mod catalog;
3pub mod circuit_breaker;
4pub mod conf_change;
5pub mod cross_shard_txn;
6pub mod distributed_document;
7pub mod distributed_graph;
8pub mod distributed_join;
9pub mod distributed_spatial;
10pub mod distributed_timeseries;
11pub mod distributed_vector;
12pub mod error;
13pub mod forward;
14pub mod ghost;
15pub mod ghost_sweeper;
16pub mod health;
17pub mod lifecycle;
18pub mod metadata_group;
19pub mod migration;
20pub mod migration_executor;
21pub mod multi_raft;
22pub mod quic_transport;
23pub mod raft_loop;
24pub mod raft_storage;
25pub mod rdma_transport;
26pub mod rebalance;
27pub mod rebalance_scheduler;
28pub mod routing;
29pub mod rpc_codec;
30pub mod shard_split;
31pub mod topology;
32pub mod transport;
33pub mod vshard_handler;
34pub mod wire;
35
36pub use bootstrap::{ClusterConfig, ClusterState, start_cluster};
37pub use catalog::ClusterCatalog;
38pub use conf_change::{ConfChange, ConfChangeType};
39pub use error::{ClusterError, Result};
40pub use forward::{NoopForwarder, RequestForwarder};
41pub use ghost::{GhostStub, GhostTable};
42pub use health::{HealthConfig, HealthMonitor};
43pub use migration::{MigrationPhase, MigrationState};
44pub use migration_executor::{
45    MigrationExecutor, MigrationRequest, MigrationResult, MigrationSnapshot, MigrationTracker,
46};
47pub use multi_raft::{GroupStatus, MultiRaft};
48pub use raft_loop::{CommitApplier, RaftLoop, VShardEnvelopeHandler};
49pub use rebalance::{RebalancePlan, compute_plan, plan_to_requests};
50pub use routing::RoutingTable;
51pub use rpc_codec::RaftRpc;
52pub use topology::{ClusterTopology, NodeInfo, NodeState};
53pub use transport::{NexarTransport, RaftRpcHandler};
54pub use wire::VShardEnvelope;
55
56pub use cross_shard_txn::{
57    CrossShardTransaction, ForwardEntry, GsiForwardEntry, TransactionCoordinator,
58};
59pub use metadata_group::{METADATA_GROUP_ID, MetadataCache, MetadataEntry};
60pub use quic_transport::{QuicTransport, QuicTransportConfig};
61
62pub use distributed_join::{BroadcastJoinRequest, JoinStrategy, ShufflePartition, select_strategy};
63pub use lifecycle::{
64    DecommissionResult, handle_learner_promotion, handle_node_join, plan_decommission,
65};
66pub use rdma_transport::{RdmaConfig, RdmaTransport};
67pub use rebalance_scheduler::{NodeMetrics, RebalanceScheduler, RebalanceTrigger, SchedulerConfig};
68pub use shard_split::{SplitPlan, SplitStrategy, plan_graph_split, plan_vector_split};