Skip to main content

Crate linkrs_sync

Crate linkrs_sync 

Source
Expand description

Synchronization coordination for derived secondary indexes.

Engine implementations live outside this crate: fulltext search in linkrs-fulltext and vector search in simvec plus vector-client. This crate owns only coordination: durable outbox staging, delivery, retry and rebuild orchestration, with thin per-engine coordinators on top. vector_type_conv is the single conversion point between transport-side filter types and index-side filter types.

Re-exports§

pub use batch::BatchConfig;
pub use batch::BatchError;
pub use batch::BatchProcessor;
pub use batch::TransactionBatchBuffer;
pub use checkpoint_manifest::CheckpointManifest;
pub use checkpoint_manifest::CheckpointManifestManager;
pub use checkpoint_manifest::IndexManifestRef;
pub use checkpoint_manifest::OutboxSnapshotRef;
pub use checkpoint_manifest::StorageFileRef;
pub use checkpoint_manifest::StorageSnapshotRef;
pub use circuit_breaker::with_circuit_breaker;
pub use circuit_breaker::CircuitBreaker;
pub use circuit_breaker::CircuitBreakerConfig;
pub use circuit_breaker::CircuitBreakerError;
pub use circuit_breaker::CircuitBreakerStats;
pub use circuit_breaker::CircuitState;
pub use dead_letter_queue::DeadLetterEntry;
pub use dead_letter_queue::DeadLetterQueue;
pub use dead_letter_queue::DeadLetterQueueConfig;
pub use manager::EdgeProps;
pub use manager::EdgeRef;
pub use manager::OutboxBackpressureConfig;
pub use manager::OutboxConsumerConfig;
pub use manager::SyncError;
pub use manager::SyncManager;
pub use outbox_recovery::find_latest_snapshot;
pub use outbox_recovery::find_latest_snapshot_at_or_before;
pub use outbox_recovery::live_database_exists;
pub use outbox_recovery::recover_outbox;
pub use outbox_recovery::restore_latest_snapshot;
pub use outbox_recovery::restore_snapshot_sync;
pub use outbox_recovery::verify_live_database;
pub use receiver::ApplyReceipt;
pub use receiver::LateArrivalResult;
pub use retry::with_retry;
pub use retry::RetryConfig;
pub use sqlite_outbox::ClaimedEvent;
pub use sqlite_outbox::DeadLetterRow;
pub use sqlite_outbox::DegradedRangeRow;
pub use sqlite_outbox::IndexSyncDiagnostics;
pub use sqlite_outbox::OutboxSnapshot;
pub use sqlite_outbox::RebuildEvent;
pub use sqlite_outbox::SqliteOutbox;
pub use sqlite_outbox::SyncDiagnostics;
pub use sqlite_outbox::TargetSyncDiagnostics;
pub use types::ChangeType;
pub use types::IndexData;
pub use types::IndexOpKey;
pub use types::IndexOperation;
pub use types::IndexType;
pub use vector_error::VectorCoordinatorError;
pub use vector_error::VectorError;
pub use vector_error::VectorErrorKind;

Modules§

batch
builder
checkpoint_manifest
Combined Checkpoint Manifest
circuit_breaker
Circuit Breaker for Remote Index Operations
dead_letter_queue
Dead Letter Queue for failed index operations
manager
Sync Manager
outbox_recovery
Outbox Recovery
receiver
retry
Retry utility for sync operations
runtime
Runtime-aware bridging from synchronous code to asynchronous operations.
sqlite_outbox
types
vector_error

Structs§

OutboxStats
SyncConfig

Enums§

OutboxPayload