pub struct ForwardedPut {
pub key: String,
pub value: Vec<u8>,
pub timestamp_ms: u64,
pub node_id: String,
pub seq: u64,
pub boot_id: u64,
pub expires_at_ms: u64,
pub is_tombstone: bool,
pub priority: i32,
pub hops: u32,
pub req_id: u64,
}Expand description
A client-routed write: “you own this key’s fragment — apply it as coordinator and replicate to the other holders.” One network hop.
Fields§
§key: String§value: Vec<u8>§timestamp_ms: u64§node_id: String§seq: u64§boot_id: u64§expires_at_ms: u64Optional key expiry (wall-clock ms). 0/absent = no expiry.
is_tombstone: boolTrue if this is a deletion tombstone.
priority: i32Phase 7: priority the receiving node should apply this op with.
hops: u32Phase 8: re-forward count. A node that receives a ForwardedPut for a fragment it no longer serves (stale placement maps during migration) re-forwards it to the current owner instead of dropping it; hops bounds the chain.
req_id: u64Correlates the exact apply outcome back to the originating node.
Implementations§
Source§impl ForwardedPut
impl ForwardedPut
Trait Implementations§
Source§impl Clone for ForwardedPut
impl Clone for ForwardedPut
Source§impl Debug for ForwardedPut
impl Debug for ForwardedPut
Source§impl Default for ForwardedPut
impl Default for ForwardedPut
impl Eq for ForwardedPut
Source§impl Hash for ForwardedPut
impl Hash for ForwardedPut
Source§impl Message for ForwardedPut
impl Message for ForwardedPut
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer. Read more
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message with a length-delimiter to a buffer. Read more
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self.Source§impl PartialEq for ForwardedPut
impl PartialEq for ForwardedPut
impl StructuralPartialEq for ForwardedPut
Auto Trait Implementations§
impl Freeze for ForwardedPut
impl RefUnwindSafe for ForwardedPut
impl Send for ForwardedPut
impl Sync for ForwardedPut
impl Unpin for ForwardedPut
impl UnsafeUnpin for ForwardedPut
impl UnwindSafe for ForwardedPut
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
Mutably borrows from an owned value. Read more