#[non_exhaustive]pub enum Error {
Show 19 variants
DatabaseAlreadyOpen,
InvalidSavepoint,
RepairAborted,
PersistentSavepointExists,
EphemeralSavepointExists,
TransactionInProgress,
Corrupted(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),
TableAlreadyOpen(String, &'static Location<'static>),
Io(Error),
PreviousIo,
LockPoisoned(&'static Location<'static>),
ReadTransactionStillInUse(ReadTransaction),
}
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.
PersistentSavepointExists
A persistent savepoint exists
EphemeralSavepointExists
An Ephemeral savepoint exists
TransactionInProgress
A transaction is still in-progress
Corrupted(String)
The Database is corrupted
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
TableAlreadyOpen(String, &'static Location<'static>)
Io(Error)
PreviousIo
A previous IO error occurred. The database must be closed and re-opened
LockPoisoned(&'static Location<'static>)
ReadTransactionStillInUse(ReadTransaction)
The transaction is still referenced by a table or other object