pub struct ReserveReadRequest {
pub lock_key_bytes: Vec<u8>,
pub vshard: u32,
pub owner_bytes: Option<Vec<u8>>,
pub deadline_remaining_ms: u64,
pub trace_id: [u8; 16],
}Expand description
Coordinator → sequencer-leader routed reserve-read request.
Carries the LockKey as opaque msgpack bytes (lock_key_bytes); the
leader decodes it and assign-only reserves the read lock, minting an owner
if owner_bytes is None. The deadline_remaining_ms / trace_id fields
mirror SubmitCalvinInboxRequest
so the leader-side handler shares the same deadline / tracing prologue as
the other one-shot RPCs; the leader bounds the reserve by
deadline_remaining_ms.
Cross-version safety: new optional fields should be added as Option<T>.
Fields§
§lock_key_bytes: Vec<u8>The LockKey to reserve, encoded with zerompk::to_msgpack_vec.
vshard: u32§owner_bytes: Option<Vec<u8>>Pre-assigned owner (TxnIdWire, msgpack-encoded), when the reservation
is being made on behalf of an already-known owner. None means the
leader mints a new owner.
deadline_remaining_ms: u64Deadline budget remaining for the reserve on the leader (ms).
trace_id: [u8; 16]Trait Implementations§
Source§impl Archive for ReserveReadRequest
impl Archive for ReserveReadRequest
Source§const COPY_OPTIMIZATION: CopyOptimization<Self>
const COPY_OPTIMIZATION: CopyOptimization<Self>
serialize. Read moreSource§type Archived = ArchivedReserveReadRequest
type Archived = ArchivedReserveReadRequest
Source§type Resolver = ReserveReadRequestResolver
type Resolver = ReserveReadRequestResolver
Source§impl Clone for ReserveReadRequest
impl Clone for ReserveReadRequest
Source§fn clone(&self) -> ReserveReadRequest
fn clone(&self) -> ReserveReadRequest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ReserveReadRequest
impl Debug for ReserveReadRequest
Source§impl<__D: Fallible + ?Sized> Deserialize<ReserveReadRequest, __D> for Archived<ReserveReadRequest>where
Vec<u8>: Archive,
<Vec<u8> as Archive>::Archived: Deserialize<Vec<u8>, __D>,
u32: Archive,
<u32 as Archive>::Archived: Deserialize<u32, __D>,
Option<Vec<u8>>: Archive,
<Option<Vec<u8>> as Archive>::Archived: Deserialize<Option<Vec<u8>>, __D>,
u64: Archive,
<u64 as Archive>::Archived: Deserialize<u64, __D>,
[u8; 16]: Archive,
<[u8; 16] as Archive>::Archived: Deserialize<[u8; 16], __D>,
impl<__D: Fallible + ?Sized> Deserialize<ReserveReadRequest, __D> for Archived<ReserveReadRequest>where
Vec<u8>: Archive,
<Vec<u8> as Archive>::Archived: Deserialize<Vec<u8>, __D>,
u32: Archive,
<u32 as Archive>::Archived: Deserialize<u32, __D>,
Option<Vec<u8>>: Archive,
<Option<Vec<u8>> as Archive>::Archived: Deserialize<Option<Vec<u8>>, __D>,
u64: Archive,
<u64 as Archive>::Archived: Deserialize<u64, __D>,
[u8; 16]: Archive,
<[u8; 16] as Archive>::Archived: Deserialize<[u8; 16], __D>,
Source§fn deserialize(
&self,
deserializer: &mut __D,
) -> Result<ReserveReadRequest, <__D as Fallible>::Error>
fn deserialize( &self, deserializer: &mut __D, ) -> Result<ReserveReadRequest, <__D as Fallible>::Error>
Auto Trait Implementations§
impl Freeze for ReserveReadRequest
impl RefUnwindSafe for ReserveReadRequest
impl Send for ReserveReadRequest
impl Sync for ReserveReadRequest
impl Unpin for ReserveReadRequest
impl UnsafeUnpin for ReserveReadRequest
impl UnwindSafe for ReserveReadRequest
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<T> ArchiveUnsized for Twhere
T: Archive,
impl<T> ArchiveUnsized for Twhere
T: Archive,
Source§type Archived = <T as Archive>::Archived
type Archived = <T as Archive>::Archived
Archive, it may be
unsized. Read moreSource§fn archived_metadata(
&self,
) -> <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
fn archived_metadata( &self, ) -> <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T, S> SerializeUnsized<S> for T
impl<T, S> SerializeUnsized<S> for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.