Skip to main content

kinetic_core/
error.rs

1use arrow_schema::ArrowError;
2use snafu::Snafu;
3
4#[derive(Debug, Snafu)]
5#[snafu(visibility(pub))]
6pub enum Error {
7    #[snafu(display("Arrow operation failed: {}", source))]
8    Arrow {
9        #[snafu(source(false))]
10        source: ArrowError,
11    },
12
13    #[snafu(display("Failed to append _xid column: {}", source))]
14    XidAppend {
15        #[snafu(source(false))]
16        source: ArrowError,
17    },
18
19    #[snafu(display(
20        "Length mismatch in error payload creation: expected {}, got {}",
21        expected,
22        actual
23    ))]
24    LengthMismatch { expected: usize, actual: usize },
25}
26
27pub type Result<T> = std::result::Result<T, Error>;