pub struct KeyValueDiskANNCanonical { /* private fields */ }Expand description
Canonical tensor mutation owner for the Key/Value layout. Public DiskANN catalog routing remains unavailable until publication and recovery are integrated.
Implementations§
Source§impl KeyValueDiskANNCanonical
impl KeyValueDiskANNCanonical
Sourcepub fn retire_index(
&self,
index: &RelationIdentity,
resolver: &dyn DiskANNIndexResolver,
control: &StorageReadControl,
) -> StorageBackendResult<()>
pub fn retire_index( &self, index: &RelationIdentity, resolver: &dyn DiskANNIndexResolver, control: &StorageReadControl, ) -> StorageBackendResult<()>
Retire the selected generation before removing its SQL catalog definition. Raw vectors remain available to the replacement exact index, while stale writers and the old live handle can no longer mutate this field through its retired selection.
Sourcepub fn create_index(
&self,
index: &RelationIdentity,
resolver: &dyn DiskANNIndexResolver,
options: DiskANNIndexOptions,
temporary: &DiskANNTemporaryBudget,
control: &StorageReadControl,
) -> StorageBackendResult<()>
pub fn create_index( &self, index: &RelationIdentity, resolver: &dyn DiskANNIndexResolver, options: DiskANNIndexOptions, temporary: &DiskANNTemporaryBudget, control: &StorageReadControl, ) -> StorageBackendResult<()>
Adopt the complete existing raw field and publish its first generation. The actual private catalog definition must already exist, and the caller must retain the enclosing definition transaction.
Sourcepub fn rebuild_index(
&self,
index: &RelationIdentity,
resolver: &dyn DiskANNIndexResolver,
options: DiskANNIndexOptions,
temporary: &DiskANNTemporaryBudget,
control: &StorageReadControl,
) -> StorageBackendResult<()>
pub fn rebuild_index( &self, index: &RelationIdentity, resolver: &dyn DiskANNIndexResolver, options: DiskANNIndexOptions, temporary: &DiskANNTemporaryBudget, control: &StorageReadControl, ) -> StorageBackendResult<()>
Rebuild from one actual retained source. Publication keeps the original head expectation and never completes the caller’s transaction.
Source§impl KeyValueDiskANNCanonical
impl KeyValueDiskANNCanonical
Sourcepub fn bind(
self,
index: RelationIdentity,
resolver: Arc<dyn DiskANNIndexResolver + Send + Sync>,
limits: DiskANNReadLimits,
control: &StorageReadControl,
) -> StorageBackendResult<KeyValueDiskANNHandle>
pub fn bind( self, index: RelationIdentity, resolver: Arc<dyn DiskANNIndexResolver + Send + Sync>, limits: DiskANNReadLimits, control: &StorageReadControl, ) -> StorageBackendResult<KeyValueDiskANNHandle>
Open a live handle through the actual catalog and published head. Missing or invalid publication is an error; this never creates or adopts an index implicitly.
Source§impl KeyValueDiskANNCanonical
impl KeyValueDiskANNCanonical
pub fn journal_pruner( self, index: &RelationIdentity, resolver: Arc<dyn DiskANNIndexResolver + Send + Sync>, max_record_bytes: usize, control: &StorageReadControl, ) -> StorageBackendResult<Box<dyn DiskANNJournalPruner>>
pub fn maintenance_source( self, index: &RelationIdentity, resolver: Arc<dyn DiskANNIndexResolver + Send + Sync>, max_record_bytes: usize, control: &StorageReadControl, ) -> StorageBackendResult<Box<dyn DiskANNMaintenanceSource>>
Source§impl KeyValueDiskANNCanonical
impl KeyValueDiskANNCanonical
pub fn new( store: Arc<dyn KeyValueStore>, table: impl Into<String>, field: impl Into<String>, dimensions: u32, ) -> StorageBackendResult<Self>
Sourcepub fn replace(
&self,
document: DocId,
vectors: &[Vec<f32>],
control: &StorageReadControl,
) -> StorageBackendResult<DiskANNVectorVersion>
pub fn replace( &self, document: DocId, vectors: &[Vec<f32>], control: &StorageReadControl, ) -> StorageBackendResult<DiskANNVectorVersion>
Atomically replace every ordinal and its origin; an empty tensor persists an explicit zero-count replacement. The publishing transaction is also used for private origins, without assigning commit order.
Sourcepub fn retain(
&self,
control: &StorageReadControl,
) -> StorageBackendResult<RetainedDiskANNCanonical>
pub fn retain( &self, control: &StorageReadControl, ) -> StorageBackendResult<RetainedDiskANNCanonical>
Retain the exact private/committed boundary without enumerating canonical values.
Sourcepub fn retain_for_index(
&self,
index: &RelationIdentity,
control: &StorageReadControl,
) -> StorageBackendResult<RetainedDiskANNCanonical>
pub fn retain_for_index( &self, index: &RelationIdentity, control: &StorageReadControl, ) -> StorageBackendResult<RetainedDiskANNCanonical>
Capture the real table/index definitions with canonical input on one fixed view. Ordinary unbound sources cannot authorize a later catalog publication.