#[non_exhaustive]pub enum Error {
Show 46 variants
DatabaseAlreadyOpen,
InvalidSavepoint,
RepairAborted,
PersistentSavepointModified,
PersistentSavepointExists,
EphemeralSavepointExists,
TransactionInProgress,
Corrupted(String),
Internal(String),
UpgradeRequired(u8),
ValueTooLarge(usize),
TableTypeMismatch {
table: String,
key: TypeName,
value: TypeName,
},
TableIsMultimap(String),
TableIsNotMultimap(String),
TypeDefinitionChanged {
name: TypeName,
alignment: usize,
width: Option<usize>,
},
TableDoesNotExist(String),
TableExists(String),
TableAlreadyOpen(String, &'static Location<'static>),
BlobNotFound(u64),
BlobChecksumMismatch {
sequence: u64,
expected: u128,
actual: u128,
},
BlobWriterActive,
BlobWriterFinished,
BlobRangeOutOfBounds {
blob_length: u64,
requested_offset: u64,
requested_length: u64,
},
MemoryBudgetExceeded {
budget: usize,
used: usize,
},
HistorySnapshotNotFound(u64),
InvalidPageType {
page_region: u32,
page_index: u32,
page_order: u8,
found: u8,
},
InvalidChildRef {
page_region: u32,
page_index: u32,
page_order: u8,
child_index: usize,
is_checksum: bool,
},
InvalidEntryIndex {
page_region: u32,
page_index: u32,
page_order: u8,
entry_index: usize,
},
PageCorrupted {
page_region: u32,
page_index: u32,
page_order: u8,
detail: &'static str,
},
CdcCursorBehindRetention {
cursor_txn_id: u64,
oldest_retained_txn_id: u64,
},
InvalidConfiguration {
message: String,
},
IndexNotTrained {
index_name: String,
},
DimensionMismatch {
index_name: String,
expected: usize,
actual: usize,
},
InvalidIndexConfig {
detail: String,
},
FormatError {
detail: String,
},
RecoveryRequired,
OutOfSpace,
LockTimeout(String),
Io(BackendError),
DatabaseClosed,
PreviousIo,
LockPoisoned(&'static Location<'static>),
ReadTransactionStillInUse(Box<ReadTransaction>),
GroupCommitPeerFailed,
GroupCommitShutdown,
CompactionCancelled,
}Expand description
Superset of all other errors that can occur. Convenience enum so that users can convert all errors into a single type
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
DatabaseAlreadyOpen
The Database is already open. Cannot acquire lock.
InvalidSavepoint
This savepoint is invalid or cannot be created.
Savepoints become invalid when an older savepoint is restored after it was created, and savepoints cannot be created if the transaction is “dirty” (any tables have been opened)
RepairAborted
crate::RepairSession::abort was called.
PersistentSavepointModified
A persistent savepoint was modified
PersistentSavepointExists
A persistent savepoint exists
EphemeralSavepointExists
An Ephemeral savepoint exists
TransactionInProgress
A transaction is still in-progress
Corrupted(String)
The Database is corrupted
Internal(String)
An internal invariant was violated, indicating a bug in the database engine. This is NOT caused by on-disk corruption – it means the code has a logic error. If you encounter this error, please file a bug report.
UpgradeRequired(u8)
The database file is in an old file format and must be manually upgraded
ValueTooLarge(usize)
The value being inserted exceeds the maximum of 3GiB
TableTypeMismatch
Table types didn’t match.
TableIsMultimap(String)
The table is a multimap table
TableIsNotMultimap(String)
The table is not a multimap table
TypeDefinitionChanged
TableDoesNotExist(String)
Table name does not match any table in database
TableExists(String)
Table name already exists in the database
TableAlreadyOpen(String, &'static Location<'static>)
BlobNotFound(u64)
A blob with the given sequence ID was not found in the blob store
BlobChecksumMismatch
Blob data checksum does not match the stored checksum
Fields
BlobWriterActive
A streaming blob writer is already active on this transaction
BlobWriterFinished
The streaming blob writer has already been finished
BlobRangeOutOfBounds
The requested byte range exceeds the blob’s length
Fields
MemoryBudgetExceeded
The configured memory budget has been exceeded and the operation cannot proceed
HistorySnapshotNotFound(u64)
The requested history snapshot was not found for the given transaction ID
InvalidPageType
A B-tree page has an unexpected type byte
InvalidChildRef
A child pointer or checksum on a B-tree branch page is invalid
InvalidEntryIndex
An entry index on a B-tree page is invalid or out of range
PageCorrupted
A B-tree page has structural corruption
CdcCursorBehindRetention
A CDC cursor position falls behind the retention window
Fields
InvalidConfiguration
A configuration parameter is invalid (e.g. page size, region size)
IndexNotTrained
The IVF-PQ index has not been trained yet
DimensionMismatch
Vector dimensionality does not match the index configuration
Fields
InvalidIndexConfig
IVF-PQ index configuration is invalid
FormatError
On-disk format validation failed (magic number, version, layout, record structure)
RecoveryRequired
Database requires recovery before this operation can proceed
OutOfSpace
Storage space exhausted; the allocator cannot grow further
LockTimeout(String)
Timed out waiting for a write transaction lock (no_std spin-lock).
Io(BackendError)
DatabaseClosed
PreviousIo
A previous IO error occurred. The database must be closed and re-opened
LockPoisoned(&'static Location<'static>)
ReadTransactionStillInUse(Box<ReadTransaction>)
The transaction is still referenced by a table or other object
GroupCommitPeerFailed
A group commit batch was rolled back because a peer batch failed
GroupCommitShutdown
The database group committer is shutting down
CompactionCancelled
Blob compaction was cancelled by the progress callback.
Trait Implementations§
Source§impl Error for Error
Available on crate feature std only.
impl Error for Error
std only.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()
Source§impl From<BackendError> for Error
impl From<BackendError> for Error
Source§fn from(err: BackendError) -> Error
fn from(err: BackendError) -> Error
Source§impl From<CommitError> for Error
impl From<CommitError> for Error
Source§fn from(err: CommitError) -> Error
fn from(err: CommitError) -> Error
Source§impl From<CompactionError> for Error
impl From<CompactionError> for Error
Source§fn from(err: CompactionError) -> Error
fn from(err: CompactionError) -> Error
Source§impl From<DatabaseError> for Error
impl From<DatabaseError> for Error
Source§fn from(err: DatabaseError) -> Error
fn from(err: DatabaseError) -> Error
Source§impl From<GroupCommitError> for Error
Available on crate feature std only.
impl From<GroupCommitError> for Error
std only.Source§fn from(err: GroupCommitError) -> Error
fn from(err: GroupCommitError) -> Error
Source§impl<T> From<PoisonError<T>> for Error
Available on crate feature std only.
impl<T> From<PoisonError<T>> for Error
std only.