Skip to main content

Module dcp

Module dcp 

Source
Expand description

Datum Control Protocol (DCP) server and client.

DCP is a small prost protocol over length-prefixed TCP or QUIC streams. It is intentionally local to datum-agent: the registry remains the control-plane owner, while DCP is the management transport used by the CLI/TUI and cluster work. Unknown major versions are rejected during Hello; minor version bumps are additive request/payload extensions within the same major.

Re-exports§

pub use client::DcpClient;
pub use client::EventSubscription;
pub use client::MetricSubscription;
pub use client::ShardPipeClient;
pub use proto::Auth;
pub use proto::ClientKind;
pub use proto::ClusterJobList;
pub use proto::ClusterJobNode;
pub use proto::ClusterJobStart;
pub use proto::ClusterNodeError;
pub use proto::ClusterNodeInfo;
pub use proto::ClusterNodeList;
pub use proto::ClusterNodeStatus;
pub use proto::ClusterPlacementHistory;
pub use proto::CompleteShardingAsk;
pub use proto::DCP_PROTOCOL_MAJOR;
pub use proto::DCP_PROTOCOL_VERSION;
pub use proto::DrainJob;
pub use proto::ForwardShardEnvelopes;
pub use proto::GetConfig;
pub use proto::GetShardAllocations;
pub use proto::Hello;
pub use proto::JobStatusRequest;
pub use proto::ListClusterJobs;
pub use proto::ListJobs;
pub use proto::OpenShardPipe;
pub use proto::PlacementSpec;
pub use proto::PlacementStrategy;
pub use proto::PutConfig;
pub use proto::RememberClusterAssignment;
pub use proto::RememberShardAllocations;
pub use proto::Request;
pub use proto::Response;
pub use proto::ResponseStatus;
pub use proto::RestartJob;
pub use proto::ShardAllocation;
pub use proto::ShardAllocationEntry;
pub use proto::ShardAllocationRequest;
pub use proto::ShardAllocationTable;
pub use proto::ShardEnvelopeAck;
pub use proto::ShardEnvelopeBatchResult;
pub use proto::ShardEnvelopeWire;
pub use proto::ShardPipeFrame;
pub use proto::StartJob;
pub use proto::StopJob;
pub use proto::SubmitClusterJob;
pub use proto::SubscribeEvents;
pub use proto::SubscribeMetrics;
pub use server::ClusterViewProvider;
pub use server::DcpJobFactories;
pub use server::DcpQuicServerConfig;
pub use server::DcpServer;
pub use server::DcpServerConfig;
pub use server::DcpServerHandle;
pub use server::DcpTcpServerConfig;
pub use server::ShardingViewProvider;

Modules§

client
proto
server

Enums§

DcpError
Errors returned by DCP clients, servers, and frame codecs.

Type Aliases§

DcpResult
Result type used by DCP APIs.