#[repr(u8)]pub enum DmsgType {
Show 22 variants
Unknown = 0,
Debug = 1,
ParseError = 2,
Req = 3,
ReqForward = 4,
Res = 5,
CryptoHandshake = 6,
GossipSyn = 7,
GossipSynReply = 8,
GossipAck = 9,
GossipDigestSyn = 10,
GossipDigestAck = 11,
GossipDigestAck2 = 12,
GossipShutdown = 13,
HandoffChunk = 14,
FtSearchReq = 15,
FtSearchRep = 16,
XaPrepare = 17,
XaVote = 18,
XaCommit = 19,
XaRollback = 20,
XaAck = 21,
}Expand description
DNODE message type identifier.
The numeric values are stable wire discriminators because the type travels on the wire as a decimal.
Variants§
Unknown = 0
Unset / unknown type.
Debug = 1
Diagnostic frame (unused on the live wire; kept for parity).
ParseError = 2
Parse-error frame (unused on the live wire; kept for parity).
Req = 3
Datastore request bound for the local DC.
ReqForward = 4
Datastore request to be forwarded across DCs.
Res = 5
Datastore response.
CryptoHandshake = 6
AES key handshake.
GossipSyn = 7
Gossip SYN.
GossipSynReply = 8
Gossip SYN reply.
GossipAck = 9
Gossip ACK.
GossipDigestSyn = 10
Gossip digest SYN.
GossipDigestAck = 11
Gossip digest ACK.
GossipDigestAck2 = 12
Gossip digest ACK round 2.
GossipShutdown = 13
Gossip shutdown notice.
HandoffChunk = 14
Explicit handoff chunk frame.
Carries one chunk of a token-range handoff stream from the previous owner of the range to the new owner. Distinct from the AAE exchange variants so the receiver can route handoff frames to the dedicated handoff coordinator without parsing the payload first.
FtSearchReq = 15
Cluster-wide RediSearch FT.SEARCH request frame.
Sent by the FT.SEARCH coordinator on the node that
received the client request to every primary peer
covering the index’s key range. The payload encodes a
broadcast request (table name, serialised query body,
top-K) - see the dynomite-search crate’s
query_fsm::BroadcastRequest. Routed by the dispatcher
to the dedicated FT.SEARCH coordinator FSM instead of
the data-plane stack so the per-peer query runs against
the local registry rather than being re-forwarded.
FtSearchRep = 16
Cluster-wide RediSearch FT.SEARCH reply frame.
Returned by every peer that received a Self::FtSearchReq
once its local search completed (or the per-peer
deadline elapsed). The payload encodes the per-peer
top-K hit list plus a timed_out flag the coordinator
uses to mark partial results.
XaPrepare = 17
Cross-node XA prepare request.
Carries one transaction branch’s writes to the peer that
owns it. The receiver runs start + apply + end + prepare
against its local resource manager and replies with a
Self::XaVote. The payload layout is owned by the
dyniak transaction layer (dyniak::datastore::xa).
XaVote = 18
Cross-node XA prepare reply carrying a branch’s vote
(commit / read-only / abort) for a Self::XaPrepare.
XaCommit = 19
Cross-node XA commit request for a durably prepared branch.
The receiver commits idempotently and replies
Self::XaAck.
XaRollback = 20
Cross-node XA rollback request for a branch. The receiver
rolls back idempotently and replies Self::XaAck.
XaAck = 21
Cross-node XA acknowledgement for a Self::XaCommit or
Self::XaRollback.
Implementations§
Trait Implementations§
impl Copy for DmsgType
impl Eq for DmsgType
impl StructuralPartialEq for DmsgType
Auto Trait Implementations§
impl Freeze for DmsgType
impl RefUnwindSafe for DmsgType
impl Send for DmsgType
impl Sync for DmsgType
impl Unpin for DmsgType
impl UnsafeUnpin for DmsgType
impl UnwindSafe for DmsgType
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.