| 27 | /// Errors related to state provider and infrastructure operations. |
| 28 | #[derive(Debug, Clone, Eq, PartialEq, Error)] |
| 29 | pub enum ProviderError { |
| 30 | /// Missing canonical header for a given block number. |
| 31 | #[error( |
| 32 | "missing canonical header for block {block_number}. This can be ignored if the node has recently restarted, restored from a snapshot or is still syncing." |
| 33 | )] |
| 34 | MissingCanonicalHeader { |
| 35 | /// The block number for which the header is missing. |
| 36 | block_number: u64, |
| 37 | }, |
| 38 | |
| 39 | /// State provider error with context. |
| 40 | #[error("state provider error: {0}")] |
| 41 | StateProvider(String), |
| 42 | } |
| 43 | |
| 44 | /// Errors related to transaction execution and processing. |
| 45 | #[derive(Debug, Clone, Eq, PartialEq, Error)] |