pub trait DiskANNQueryRead: DiskANNCanonicalRead {
// Required methods
fn document_origin(
&self,
document: DocId,
control: &StorageReadControl,
) -> StorageBackendResult<Option<DiskANNCanonicalOrigin>>;
fn next_change_after(
&self,
after: Option<DocId>,
control: &StorageReadControl,
) -> StorageBackendResult<Option<DiskANNChangeIdentity>>;
// Provided methods
fn unversioned_vectors(&self) -> Option<&VectorReadSnapshot> { ... }
fn vector_count(
&self,
control: &StorageReadControl,
) -> StorageBackendResult<usize> { ... }
fn contains_vectors(
&self,
document: DocId,
control: &StorageReadControl,
) -> StorageBackendResult<bool> { ... }
}Expand description
A retained canonical source with the actual versioned change journal on that same view. The lifecycle owner must establish complete coverage before opening a query; absence from this journal alone is not proof of build membership.
Required Methods§
Sourcefn document_origin(
&self,
document: DocId,
control: &StorageReadControl,
) -> StorageBackendResult<Option<DiskANNCanonicalOrigin>>
fn document_origin( &self, document: DocId, control: &StorageReadControl, ) -> StorageBackendResult<Option<DiskANNCanonicalOrigin>>
Return the selected mutation and complete tensor cardinality after validating its ordinal-key coverage. This metadata probe must not decode coordinate values or inspect graph pages; empty replacements return Some with count zero.
Sourcefn next_change_after(
&self,
after: Option<DocId>,
control: &StorageReadControl,
) -> StorageBackendResult<Option<DiskANNChangeIdentity>>
fn next_change_after( &self, after: Option<DocId>, control: &StorageReadControl, ) -> StorageBackendResult<Option<DiskANNChangeIdentity>>
Return current journaled documents in strictly increasing order, including empty replacements. Validate the immutable change envelope against its current canonical origin; skip obsolete versions without loading their values.
Provided Methods§
Sourcefn unversioned_vectors(&self) -> Option<&VectorReadSnapshot>
fn unversioned_vectors(&self) -> Option<&VectorReadSnapshot>
An independently retained complete value view used when an index definition changed. Origins exposed by this source cover only tensors verified equal to its actual versioned source; the remaining tensors join the ordinary uncovered-candidate stream without fabricated mutation versions.
Sourcefn vector_count(
&self,
control: &StorageReadControl,
) -> StorageBackendResult<usize>
fn vector_count( &self, control: &StorageReadControl, ) -> StorageBackendResult<usize>
Count visible ordinals from complete origin metadata without decoding coordinates or preparing a graph reader.
Sourcefn contains_vectors(
&self,
document: DocId,
control: &StorageReadControl,
) -> StorageBackendResult<bool>
fn contains_vectors( &self, document: DocId, control: &StorageReadControl, ) -> StorageBackendResult<bool>
Test nonempty membership using complete canonical metadata on this exact view.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".