pub struct RetainedVectorIndex { /* private fields */ }Expand description
An immutable exact index whose vector buffers and read workspace share the original retention allowance.
Trait Implementations§
Source§impl Clone for RetainedVectorIndex
impl Clone for RetainedVectorIndex
Source§impl VectorIndex for RetainedVectorIndex
impl VectorIndex for RetainedVectorIndex
Source§fn contains_document(&self, doc_id: DocId) -> StorageBackendResult<bool>
fn contains_document(&self, doc_id: DocId) -> StorageBackendResult<bool>
Test canonical membership at this handle’s visibility boundary without searching or materializing the corpus. Empty tensor replacements have no membership. This is a maintenance probe, not a logical query observation.
fn dimensions(&self) -> u32
fn index_kind(&self) -> &'static str
fn add(&mut self, _: DocId, _: Vec<f32>) -> StorageBackendResult<()>
fn add_many(&mut self, _: DocId, _: Vec<Vec<f32>>) -> StorageBackendResult<()>
fn delete(&mut self, _: DocId) -> StorageBackendResult<()>
fn clear(&mut self) -> StorageBackendResult<()>
Source§fn initialize(&mut self) -> StorageBackendResult<()>
fn initialize(&mut self) -> StorageBackendResult<()>
Build any auxiliary physical metadata required by this index from its
current vector contents. Brute-force indexes need no extra work;
persistent IVF and HNSW implementations use this during explicit
index creation, while restore paths deliberately skip it.
fn search_knn( &self, query: &[f32], k: usize, ) -> StorageBackendResult<PostingList>
fn search_threshold( &self, query: &[f32], threshold: f32, ) -> StorageBackendResult<PostingList>
fn count(&self) -> StorageBackendResult<usize>
Source§fn snapshot(&self) -> StorageBackendResult<Arc<dyn VectorIndex>>
fn snapshot(&self) -> StorageBackendResult<Arc<dyn VectorIndex>>
Read-only handle suitable for an
ExecutionContext.Source§fn search_knn_with_control(
&self,
query: &[f32],
k: usize,
control: &StorageReadControl,
) -> StorageBackendResult<PostingList>
fn search_knn_with_control( &self, query: &[f32], k: usize, control: &StorageReadControl, ) -> StorageBackendResult<PostingList>
Request a controlled search. The default checks cancellation and delegates to the provider’s existing read boundary; in-memory physical algorithms override it to charge query workspace to the supplied allowance.
Source§fn search_threshold_with_control(
&self,
query: &[f32],
threshold: f32,
control: &StorageReadControl,
) -> StorageBackendResult<PostingList>
fn search_threshold_with_control( &self, query: &[f32], threshold: f32, control: &StorageReadControl, ) -> StorageBackendResult<PostingList>
Controlled threshold search keeps the same result and caller-owned posting boundary as ordinary search.
Source§fn snapshot_with_control(
&self,
control: &StorageReadControl,
) -> StorageBackendResult<Arc<dyn VectorIndex>>
fn snapshot_with_control( &self, control: &StorageReadControl, ) -> StorageBackendResult<Arc<dyn VectorIndex>>
Capture using the caller’s retention allowance and cancellation. Owners that copy index data override this method to reserve construction before allocation. The default preserves the provider’s existing snapshot and its independently retained control.
Source§fn writable_snapshot(&self) -> StorageBackendResult<Box<dyn VectorIndex>>
fn writable_snapshot(&self) -> StorageBackendResult<Box<dyn VectorIndex>>
Independent writable copy used by in-memory engine rollback. The
default keeps third-party and persistent implementations source
compatible; only indexes hosted by a memory engine need to support it.
Auto Trait Implementations§
impl Freeze for RetainedVectorIndex
impl RefUnwindSafe for RetainedVectorIndex
impl Send for RetainedVectorIndex
impl Sync for RetainedVectorIndex
impl Unpin for RetainedVectorIndex
impl UnsafeUnpin for RetainedVectorIndex
impl UnwindSafe for RetainedVectorIndex
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