Skip to main content

Crate dora_message

Crate dora_message 

Source
Expand description

Message types and wire protocol shared by all dora components.

Binary encoding is postcard: a compact, non-self-describing serde format with a stable, documented wire spec. The encoding is positional, so field order and enum variant order are part of the protocol — see metadata::Metadata::CURRENT_VERSION for how an incompatible peer is detected.

Re-exports§

pub use uhlc;
pub use aligned_vec;
pub use arrow_data;
pub use arrow_schema;

Modules§

auth
Shared-token authentication for coordinator connections.
bulk_bytes
Bulk-payload serde helpers. Public so an out-of-tree extension can give its own opaque payloads the same treatment dora gives its own, rather than duplicating the visitor — see docs/extensions.md. Bulk-payload serde for AVec<u8, ConstAlign<128>>.
cli_to_coordinator
common
config
coordinator_to_cli
coordinator_to_daemon
daemon_to_coordinator
daemon_to_daemon
daemon_to_node
descriptor
Dataflow descriptor types for YAML-based dataflow specifications.
id
integration_testing_format
Use these types for integration testing nodes.
metadata
node_to_daemon
ws_protocol
WebSocket message protocol for the control plane.

Structs§

BuildId
Unique identifier for one dora build of a dataflow.
SessionId
Unique identifier for a CLI/coordinator session.

Constants§

MAX_MESSAGE_BYTES
Maximum allowed message size over TCP (64 MiB).
TCP_READ_TIMEOUT
Read timeout for TCP/socket connections (30 seconds).
TOPIC_DATA_PROTOCOL_VERSION
Encoding version of the WebSocket topic data channel’s binary frames (see docs/websocket-topic-data-channel.md).
VERSION
The version of the dora-message crate

Functions§

current_crate_version
decode
Decode bytes in dora’s binary wire format, requiring the value to consume the entire slice.
encode
Encode value in dora’s binary wire format.
encode_presized
encode, for a message carrying bulk_bytes bytes of bulk payload.
topic_protocol_mismatch_message
Rejection message for a topic-data peer whose binary-frame encoding is not TOPIC_DATA_PROTOCOL_VERSION.

Type Aliases§

DataflowId
Unique identifier for a dataflow instance.