Skip to main content

linkrs_migration/
error.rs

1use linkrs_core::StorageError;
2
3use crate::converter::ConversionError;
4
5#[derive(Debug, thiserror::Error)]
6pub enum MigrationError {
7    #[error("storage error: {0}")]
8    Storage(#[from] Box<StorageError>),
9
10    #[error("plan error: {0}")]
11    Plan(String),
12
13    #[error("conversion error: {0}")]
14    Conversion(#[from] ConversionError),
15
16    #[error("lock error: {0}")]
17    Lock(String),
18
19    #[error("checkpoint error: {0}")]
20    Checkpoint(String),
21
22    #[error("preflight check failed: {0}")]
23    Preflight(String),
24}
25
26impl From<StorageError> for MigrationError {
27    fn from(e: StorageError) -> Self {
28        MigrationError::Storage(Box::new(e))
29    }
30}