pub enum SegmentMetaError {
TooShort {
path: String,
},
ParquetRead {
path: String,
source: ParquetError,
backtrace: Backtrace,
},
ArrowRead {
path: String,
source: ArrowError,
backtrace: Backtrace,
},
TimeColumn {
path: String,
source: TimeColumnError,
},
ParquetStatsShape {
path: String,
column: String,
detail: String,
},
ParquetStatsMissing {
path: String,
column: String,
},
LogicalSchemaInvalid {
path: String,
source: LogicalSchemaError,
},
}Expand description
Errors that can occur while validating or decoding segment metadata.
This enum intentionally contains no storage backend errors. IO-related
errors should be wrapped at the IO boundary (for example, in
transaction_log::segments::SegmentError).
Variants§
TooShort
The file is too short to be a valid Parquet file.
ParquetRead
Parquet reader / metadata failure.
Fields
source: ParquetErrorUnderlying parquet error that caused this failure.
ArrowRead
Arrow decode failure while reading Parquet data.
Fields
source: ArrowErrorUnderlying Arrow error that caused this failure.
TimeColumn
Time column validation or metadata error.
Fields
source: TimeColumnErrorThe underlying time column error.
ParquetStatsShape
Statistics exist but are not well-shaped (wrong length / unexpected type).
Fields
ParquetStatsMissing
No usable statistics for the time column; v0.1 may fall back to a scan.
Fields
LogicalSchemaInvalid
Failed to derive a valid LogicalSchema from the Parquet file.
Fields
source: LogicalSchemaErrorUnderlying logical schema error that triggered this failure.
Trait Implementations§
Source§impl Debug for SegmentMetaError
impl Debug for SegmentMetaError
Source§impl Display for SegmentMetaError
impl Display for SegmentMetaError
Source§impl Error for SegmentMetaError
impl Error for SegmentMetaError
Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§fn cause(&self) -> Option<&dyn Error>
fn cause(&self) -> Option<&dyn Error>
replaced by Error::source, which can support downcasting
Source§impl ErrorCompat for SegmentMetaError
impl ErrorCompat for SegmentMetaError
Source§fn iter_chain(&self) -> ChainCompat<'_, '_> ⓘwhere
Self: AsErrorSource,
fn iter_chain(&self) -> ChainCompat<'_, '_> ⓘwhere
Self: AsErrorSource,
Error::source. Read moreSource§impl From<SegmentMetaError> for SegmentError
impl From<SegmentMetaError> for SegmentError
Source§fn from(error: SegmentMetaError) -> Self
fn from(error: SegmentMetaError) -> Self
Auto Trait Implementations§
impl !Freeze for SegmentMetaError
impl !RefUnwindSafe for SegmentMetaError
impl !UnwindSafe for SegmentMetaError
impl Send for SegmentMetaError
impl Sync for SegmentMetaError
impl Unpin for SegmentMetaError
impl UnsafeUnpin for SegmentMetaError
Blanket Implementations§
Source§impl<T> AsErrorSource for Twhere
T: Error + 'static,
impl<T> AsErrorSource for Twhere
T: Error + 'static,
Source§fn as_error_source(&self) -> &(dyn Error + 'static)
fn as_error_source(&self) -> &(dyn Error + 'static)
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more