pub enum Error {
Show 45 variants
NotFound(Cid),
InvalidNode,
InvalidFormat(String),
FormatMismatch {
expected: Cid,
actual: Cid,
},
EntryTooLarge {
encoded_bytes: u64,
limit: u64,
},
Deserialize(String),
Serialize(String),
Store(Box<dyn Error + Send + Sync>),
CidMismatch {
expected: Cid,
actual: Cid,
},
Conflict(Conflict),
BufferFull,
InvalidSavepoint,
PatchBaseMismatch,
InvalidStructuralPatch(String),
UnsortedInput {
previous: Vec<u8>,
next: Vec<u8>,
},
DuplicateCanonicalMutation {
key: Vec<u8>,
},
CanonicalSpliceConfigMismatch,
MissingNamedRoots {
names: Vec<Vec<u8>>,
},
InvalidSnapshotBundle(String),
UnsupportedTransactions {
store: &'static str,
},
TransactionConflict(Box<TransactionConflict>),
InvalidVersionedMap(String),
InvalidIndexDefinition {
reason: String,
},
IndexRuntimeDefinitionMissing {
name: Vec<u8>,
generation: u64,
},
IndexDefinitionMismatch {
name: Vec<u8>,
persisted: Cid,
runtime: Cid,
},
IndexesRequireIndexedMap {
map_id: Vec<u8>,
active_indexes: Vec<Vec<u8>>,
},
IndexOperationUnsupported {
operation: &'static str,
},
IndexExtractionFailed {
name: Vec<u8>,
primary_key: Vec<u8>,
reason: String,
},
IndexProjectionMismatch {
name: Vec<u8>,
mode: IndexProjection,
primary_key: Vec<u8>,
},
ConflictingIndexProjection {
name: Vec<u8>,
primary_key: Vec<u8>,
term: Vec<u8>,
},
IndexBuildConflictLimitExceeded {
name: Vec<u8>,
attempts: usize,
},
IndexUnavailableAtVersion {
name: Vec<u8>,
source_version: MapVersionId,
},
IndexCheckpointMismatch {
name: Vec<u8>,
source_version: MapVersionId,
reason: String,
},
IndexCursorVersionMismatch {
expected: String,
actual: String,
},
IndexResourceLimitExceeded {
resource: &'static str,
limit: usize,
actual: usize,
},
InvalidIndexedSnapshotBundle {
reason: String,
},
InvalidProximityConfig {
reason: String,
},
UnsupportedProximityVersion {
found: u8,
required: u8,
},
InvalidProximityVector {
reason: String,
},
ZeroCosineVector,
DuplicateProximityKey {
key: Vec<u8>,
},
InvalidProximitySearch {
reason: String,
},
InvalidProximityObject {
kind: &'static str,
reason: String,
},
ProximityNodeTooLarge {
level: u8,
entries: usize,
encoded_bytes: usize,
limit: usize,
},
ContentGraphResourceLimitExceeded {
resource: &'static str,
limit: usize,
actual: usize,
},
}Expand description
Prolly tree errors
Variants§
NotFound(Cid)
Node not found in store
InvalidNode
Invalid node structure
InvalidFormat(String)
Persisted tree format parameters are invalid.
FormatMismatch
A node was decoded under a different persisted tree format.
EntryTooLarge
One entry cannot fit below the persisted hard byte limit.
Deserialize(String)
Deserialization failed
Serialize(String)
Serialization failed
Store(Box<dyn Error + Send + Sync>)
Storage error
CidMismatch
Stored bytes did not hash to the CID they were stored under.
Conflict(Conflict)
Merge conflict - occurs when both trees modify the same key differently
and no resolver is provided or the resolver returns Resolution::Unresolved
BufferFull
Mutation buffer is full - adding a mutation would exceed the buffer size limit
InvalidSavepoint
A savepoint belongs to another write-session generation.
PatchBaseMismatch
A patch does not describe the selected immutable base.
InvalidStructuralPatch(String)
A structural patch is malformed or cannot be safely applied.
UnsortedInput
Sorted bulk loading received keys out of order.
DuplicateCanonicalMutation
Canonical splice received more than one mutation for a logical key.
CanonicalSpliceConfigMismatch
Canonical splice manager and immutable tree use different shape settings.
MissingNamedRoots
A GC retention policy referenced named roots that were not present.
InvalidSnapshotBundle(String)
A portable snapshot bundle is malformed or not self-contained.
UnsupportedTransactions
The configured store does not support strict atomic transactions.
TransactionConflict(Box<TransactionConflict>)
A transaction could not commit because a validated named root changed.
InvalidVersionedMap(String)
A built-in versioned-map catalog is missing or internally inconsistent.
InvalidIndexDefinition
A runtime secondary-index definition is invalid.
IndexRuntimeDefinitionMissing
Persisted active index semantics have no matching runtime extractor.
IndexDefinitionMismatch
Runtime and persisted descriptor fingerprints disagree.
IndexesRequireIndexedMap
A managed source map must be mutated through IndexedMap.
IndexOperationUnsupported
The requested operation has no safe indexed implementation in v1.
IndexExtractionFailed
An application extractor rejected one source record.
IndexProjectionMismatch
An extractor emission is incompatible with its projection mode.
ConflictingIndexProjection
One source record emitted different projections for the same term.
IndexBuildConflictLimitExceeded
Repeated source movement prevented index activation.
No exact checkpoint exists for an index at the selected source version.
IndexCheckpointMismatch
A persisted checkpoint disagrees with the selected source or index root.
IndexCursorVersionMismatch
A cursor belongs to a different immutable indexed snapshot.
IndexResourceLimitExceeded
Index work exceeded a configured resource bound.
InvalidIndexedSnapshotBundle
A current indexed-snapshot bundle is malformed or inconsistent.
InvalidProximityConfig
A proximity-map shape configuration is invalid.
UnsupportedProximityVersion
Persisted proximity bytes use a format version this build does not read.
InvalidProximityVector
A vector is incompatible with the proximity-map configuration.
ZeroCosineVector
Cosine distance cannot prepare a vector with zero Euclidean norm.
DuplicateProximityKey
A proximity build or mutation contains the same logical key twice.
InvalidProximitySearch
Proximity search options are invalid.
InvalidProximityObject
A persisted proximity record, node, or descriptor is malformed.
ProximityNodeTooLarge
One canonical proximity node exceeds the configured hard byte limit.
ContentGraphResourceLimitExceeded
A typed content-graph traversal exceeded a configured resource limit.
Trait Implementations§
Source§impl Error for Error
impl Error for Error
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Auto Trait Implementations§
impl !RefUnwindSafe for Error
impl !UnwindSafe for Error
impl Freeze for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl UnsafeUnpin for Error
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more