1use std::fmt::Debug;
2use std::io;
3
4use thiserror::Error;
5
6use crate::nodes_selector::ConsistencyError;
7
8#[derive(Debug, Error)]
9pub enum NodeError {
10 #[error("{0}")]
11 ChitChat(String),
13
14 #[error("{0}")]
15 IO(#[from] io::Error),
17
18 #[error("{0}")]
19 Rpc(#[from] datacake_rpc::Error),
21
22 #[error("Failed to complete operation due to consistency level failure: {0}")]
23 Consistency(ConsistencyError),
26
27 #[error("Failed to initialised cluster extension: {0}")]
28 Extension(anyhow::Error),
29}