pub struct MemoryEnumerationRequest {
pub limit: usize,
pub offset: usize,
pub source_overlap: Option<MessageRange>,
pub indexed_after: Option<SystemTime>,
}Expand description
Typed request for one page of scoped memory enumeration.
offset (and the resulting page’s next_offset) count RAW scope rows in
durable-id order, not post-filter records: paging stays deterministic and
iteration stays complete even when source_overlap / indexed_after
filter rows out of a page, so a page may carry fewer than limit records.
Fields§
§limit: usizeMaximum number of raw scope rows scanned for this page.
offset: usizeRaw scope-row offset (durable-id order) to start scanning from.
source_overlap: Option<MessageRange>Admit only records whose typed source message range overlaps this half-open range.
indexed_after: Option<SystemTime>Admit only records indexed strictly after this instant. Source-range
offsets restart per compaction generation; scopes are append-only, so
the previous generation’s indexed_at high-water disambiguates them.
Implementations§
Source§impl MemoryEnumerationRequest
impl MemoryEnumerationRequest
Sourcepub fn admits(&self, metadata: &MemoryMetadata) -> bool
pub fn admits(&self, metadata: &MemoryMetadata) -> bool
Whether metadata survives this request’s post-deserialize filters.
The filter semantics have exactly one owner (this method) so every
store applies them identically: source_overlap admits records whose
typed source range overlaps the requested half-open range (a source
without a range never overlaps); indexed_after admits records
indexed strictly after the given instant.
Trait Implementations§
Source§impl Clone for MemoryEnumerationRequest
impl Clone for MemoryEnumerationRequest
Source§fn clone(&self) -> MemoryEnumerationRequest
fn clone(&self) -> MemoryEnumerationRequest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more