pub struct SpatialInsertMsg {
pub lite_id: String,
pub collection: String,
pub field: String,
pub doc_id: String,
pub geometry_bytes: Vec<u8>,
pub batch_id: u64,
pub producer_id: u64,
pub epoch: u64,
pub seq: u64,
}Expand description
Spatial insert request (Lite → Origin, 0xAA).
Requests that Origin index the geometry for (collection, field, doc_id) in
its per-field R-tree. Origin assigns a surrogate for doc_id, computes the
bounding box from the geometry, and inserts the entry into
CoreLoop::spatial_indexes.
geometry_bytes is a MessagePack-serialised nodedb_types::geometry::Geometry
value produced via zerompk::to_msgpack_vec(&geometry).
Fields§
§lite_id: StringLite instance ID (for routing and dedup).
collection: StringTarget collection name.
field: StringGeometry field name within the collection.
doc_id: StringExternal document identifier.
geometry_bytes: Vec<u8>MessagePack-serialised Geometry value.
batch_id: u64Monotonic batch ID (Lite-assigned, per-operation). Used for ACK correlation.
producer_id: u64Stable identity of the originating producer. 0 for legacy clients.
epoch: u64Monotonic epoch counter incremented on every producer restart.
seq: u64Per-stream monotonic sequence number within the epoch.
Trait Implementations§
Source§impl Clone for SpatialInsertMsg
impl Clone for SpatialInsertMsg
Source§fn clone(&self) -> SpatialInsertMsg
fn clone(&self) -> SpatialInsertMsg
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 SpatialInsertMsg
impl Debug for SpatialInsertMsg
Source§impl<'de> Deserialize<'de> for SpatialInsertMsg
impl<'de> Deserialize<'de> for SpatialInsertMsg
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl<'__msgpack_de> FromMessagePack<'__msgpack_de> for SpatialInsertMsg
impl<'__msgpack_de> FromMessagePack<'__msgpack_de> for SpatialInsertMsg
Source§impl Serialize for SpatialInsertMsg
impl Serialize for SpatialInsertMsg
Auto Trait Implementations§
impl Freeze for SpatialInsertMsg
impl RefUnwindSafe for SpatialInsertMsg
impl Send for SpatialInsertMsg
impl Sync for SpatialInsertMsg
impl Unpin for SpatialInsertMsg
impl UnsafeUnpin for SpatialInsertMsg
impl UnwindSafe for SpatialInsertMsg
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> 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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<T> FromMessagePackOwned for Twhere
T: for<'a> FromMessagePack<'a>,
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<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.