use std::string::FromUtf8Error;
use thiserror::Error;
#[derive(Error, Debug)]
pub enum Error {
#[error("problem opening RocksDB at {0}: {1}")]
Open(std::path::PathBuf, #[source] rocksdb::Error),
#[error("problem accessing RocksDB property: {0}")]
PropertyAccess(#[source] rocksdb::Error),
#[error("RocksDB property {0} was not set")]
PropertyNotSet(String),
#[error("problem accessing RocksDB column family: {0}")]
ColumnFamily(String),
#[error("problem reading data from RocksdBB: {0}")]
ReadData(#[source] rocksdb::Error),
#[error("problem with directory access/manipulation in WAL removal: {0}")]
WalRemoval(#[source] std::io::Error),
#[error("column family not found")]
UnknownColumnFamily,
#[error("problem with UTF-8 conversion: {0}")]
InvalidUtf8(#[source] FromUtf8Error),
}