#![deny(unsafe_op_in_unsafe_fn)]
#![warn(missing_docs)]
mod bio;
mod block_xshard;
mod block_xshard_confirm;
#[cfg(debug_assertions)]
pub use block_xshard_confirm::counters as serve_counters;
mod block_xshard_registry;
mod block_xshard_target;
mod blocked;
mod cache_padded;
mod client_ops;
mod cluster;
mod conn;
mod exec;
mod exec_build;
mod exec_client_intercept;
mod exec_crossslot;
mod exec_dispatch;
mod exec_feed;
mod exec_bitop;
mod exec_copy;
mod exec_fold;
mod exec_geostore;
mod exec_listmove;
mod exec_mutated;
mod exec_notify;
mod exec_op;
mod exec_pubsub;
mod exec_pubsub_pattern;
mod exec_rename;
mod exec_replwait;
mod exec_scan;
mod exec_slowlog;
mod exec_txn;
mod exec_watch;
mod exec_zalgebra;
mod inbox;
mod lua_wake_bridge;
mod message;
mod message_agg;
mod message_part;
mod message_kinds;
mod persist_jobs;
mod persist_rewrite;
mod persist_worker;
pub mod propagation;
mod reduce;
mod replica_inbox;
mod repl_trace;
mod replication;
mod replication_apply;
mod replication_gate;
mod replication_io;
mod replication_pump;
mod replication_trace;
mod reshard;
mod route;
mod runtime;
mod runtime_builders;
mod runtime_run;
mod shard;
mod shard_flush;
mod shard_lifecycle;
mod shard_run;
mod shard_tick;
mod slow_iter;
mod types;
mod aof_writer;
#[cfg(target_os = "linux")]
mod uring_aof;
#[cfg(target_os = "linux")]
mod uring_arm;
#[cfg(target_os = "linux")]
mod uring_bigbulk;
#[cfg(target_os = "linux")]
mod uring_bigbulk_b2alt;
#[cfg(target_os = "linux")]
mod uring_bigbulk_probe;
#[cfg(target_os = "linux")]
mod uring_conn;
#[cfg(target_os = "linux")]
mod uring_inbox;
#[cfg(target_os = "linux")]
mod uring_io;
#[cfg(target_os = "linux")]
mod uring_io_write;
#[cfg(target_os = "linux")]
mod uring_ops;
#[cfg(target_os = "linux")]
mod uring_park;
#[cfg(target_os = "linux")]
mod uring_reactor;
#[cfg(target_os = "linux")]
mod uring_setup;
#[cfg(target_os = "linux")]
mod uring_stalldump;
#[cfg(any(target_os = "linux", test))] mod uring_write_linearize;
pub(crate) const CLIENT_OUTPUT_HARD_LIMIT: usize = 512 * 1024 * 1024;
pub(crate) const CLIENT_INPUT_HARD_LIMIT: usize = 1024 * 1024 * 1024;
pub use blocked::{BlockHint, BlockKind};
pub use client_ops::ClientKillFilter;
pub use cluster::shard_slot_range;
pub use exec_geostore::GeoHits;
pub use exec_slowlog::{SlowlogSub, parse_slowlog_sub};
pub use kevy_config::NotificationFlags;
pub use kevy_persist::Fsync;
pub use kevy_resp::{Argv, ArgvBorrowed, ArgvView, RespVersion};
pub use kevy_store::Store;
pub use lua_wake_bridge::push_lua_wake_key;
pub use repl_trace::{repl_trace, repl_trace_line};
pub use message::{MultiOp, ZCombine};
pub use reduce::shard_of as shard_of_key;
pub use replica_inbox::{
ReplicaApply, ReplicaInboxReceiver, ReplicaInboxSender, SnapshotGate, replica_inbox_pair,
};
pub use replication_gate::ReplicatedApplyGuard;
pub use route::{Route, ScanArgs, XGroupCtx};
pub use runtime::Runtime;
pub use types::{
ExtensionReduced, LiveRuntimeConfig, NotifyClass, ReplicaAck, ReplicaViewRow, ResolvedCmd,
TxnKind,
};
pub use crate::commands_trait::Commands;
mod commands_trait;
#[cfg(test)]
mod commands_trait_tests;