Skip to main content

Crate actordb_protocol

Crate actordb_protocol 

Source
Expand description

Committed Prost bindings and stable limits for peer and application protocols.

Regenerate with cargo run -p actordb-protocol --features codegen --bin generate. Append -- --check to verify schema/binding agreement without writing files.

Modules§

client
meta
write_concern
Per-write acknowledgement policy and progress receipts. Acknowledgement thresholds do not establish a global mutation order.

Structs§

ClientDecodeReport
Work admitted before Prost or SDK receipt/result conversion allocates. Header charges include Vec geometric growth/minimum capacity and conservative map/portable-conversion storage. Payloads are charged twice for decoded and temporary validation copies. Caller-retained returned results, allocator slack, transport buffers and outgoing request storage are outside this scope.
ClientResponseShape
Expectations derived from the actual pending application request, never from data echoed by the server. Use optional query shape from a trusted locally parsed plan; the protocol preflight does not parse SQL.
RecordVersion
A totally ordered hybrid-clock timestamp.

Enums§

ClientFrameKind
Exact message expected by the current application handshake/exchange phase.

Constants§

CLIENT_PROTOCOL_VERSION
DEFAULT_MAX_DECODED_RESPONSE_BYTES
Default accounted response allowance, including raw framing, decoded collections/payloads and portable conversion work. Not an allocator/RSS cap.
MAX_BATCH_ITEMS
MAX_FRAME_BYTES
MAX_HANDSHAKE_BYTES
PORTABLE_CELL_HEADER_CHARGE
Conservative portable QueryValue header allowance. SDK tests check that their actual layout fits this charge without coupling the wire crate to SQL.

Functions§

client_auth_proof
Canonical challenge proof. Client credentials use their own domain and never authenticate a peer. Both identities, offers, and fresh challenges are bound.
preflight_client_frame
Validate before message/collection materialization using the default budget. The accounting/shape pass allocates no owned data. Malformed typed receipt validation can allocate a bounded error string before returning rejection.
preflight_client_frame_kind
preflight_client_frame_with_budget
As preflight_client_frame, with an explicit accounted allowance and report. Successful preflight does not materialize messages, collections or payloads.
preflight_client_response
Additionally validate the actual pending request before materialization. The same bounded malformed-receipt error-metadata caveat applies.
valid_client_hello
verify_client_auth