pub enum Error {
Show 36 variants
InvalidInput {
source: Box<dyn Error + Send + Sync>,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
DatasetAlreadyExists {
uri: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
SchemaMismatch {
difference: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
DatasetNotFound {
path: String,
source: Box<dyn Error + Send + Sync>,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
CorruptFile {
path: Path,
source: Box<dyn Error + Send + Sync>,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
NotSupported {
source: Box<dyn Error + Send + Sync>,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
CommitConflict {
version: u64,
source: Box<dyn Error + Send + Sync>,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
IncompatibleTransaction {
source: Box<dyn Error + Send + Sync>,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
RetryableCommitConflict {
version: u64,
source: Box<dyn Error + Send + Sync>,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
TooMuchWriteContention {
message: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
Timeout {
message: String,
location: &'static Location<'static>,
},
Internal {
message: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
PrerequisiteFailed {
message: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
Unprocessable {
message: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
Arrow {
message: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
Schema {
message: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
NotFound {
uri: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
IO {
source: Box<dyn Error + Send + Sync>,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
Index {
message: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
IndexNotFound {
identity: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
InvalidTableLocation {
message: String,
},
Stop,
Wrapped {
error: Box<dyn Error + Send + Sync>,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
Cloned {
message: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
Execution {
message: String,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
InvalidRef {
message: String,
},
RefConflict {
message: String,
},
RefNotFound {
message: String,
},
Cleanup {
message: String,
},
VersionNotFound {
message: String,
},
VersionConflict {
message: String,
major_version: u16,
minor_version: u16,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
Namespace {
source: Box<dyn Error + Send + Sync>,
location: &'static Location<'static>,
backtrace: MaybeBacktrace,
},
External {
source: Box<dyn Error + Send + Sync>,
},
FieldNotFound {
source: FieldNotFoundError,
},
DiskCapExceeded {
cap_bytes: u64,
used_bytes: u64,
location: &'static Location<'static>,
},
Fenced {
reason: FenceReason,
message: String,
location: &'static Location<'static>,
},
}Variants§
InvalidInput
Fields
backtrace: MaybeBacktraceDatasetAlreadyExists
SchemaMismatch
DatasetNotFound
Fields
backtrace: MaybeBacktraceCorruptFile
Fields
backtrace: MaybeBacktraceNotSupported
Fields
backtrace: MaybeBacktraceCommitConflict
Fields
backtrace: MaybeBacktraceIncompatibleTransaction
Fields
backtrace: MaybeBacktraceRetryableCommitConflict
Fields
backtrace: MaybeBacktraceTooMuchWriteContention
Timeout
Internal
PrerequisiteFailed
Unprocessable
Arrow
Schema
NotFound
IO
Fields
backtrace: MaybeBacktraceIndex
IndexNotFound
InvalidTableLocation
Stop
Stream early stop
Wrapped
Fields
backtrace: MaybeBacktraceCloned
Execution
InvalidRef
RefConflict
RefNotFound
Cleanup
VersionNotFound
VersionConflict
Fields
backtrace: MaybeBacktraceNamespace
Fields
backtrace: MaybeBacktraceExternal
External error passed through from user code.
This variant preserves errors that users pass into Lance APIs (e.g., via streams
with custom error types). The original error can be recovered using Error::into_external
or inspected using Error::external_source.
FieldNotFound
A requested field was not found in a schema.
Fields
source: FieldNotFoundErrorDiskCapExceeded
Fenced
A writer has been fenced and must stop (see FenceReason). The message
keeps the Writer fenced prefix for legacy string consumers; new code
should match on Error::fence_reason.
Implementations§
Source§impl Error
impl Error
Sourcepub fn backtrace(&self) -> Option<&Backtrace>
pub fn backtrace(&self) -> Option<&Backtrace>
Returns the captured Rust backtrace, if available.
Always returns None when the backtrace feature is not enabled.
pub fn corrupt_file(path: Path, message: impl Into<String>) -> Error
Sourcepub fn corrupt_file_named(name: &str, message: impl Into<String>) -> Error
pub fn corrupt_file_named(name: &str, message: impl Into<String>) -> Error
Reports a corrupt file when the caller only has a logical/section name rather than the real file path (for example, a decoder that validates an in-memory buffer and does not know where it came from).
name is carried in the path field of the resulting Error::CorruptFile
variant and is NOT a filesystem path; callers that have the real path should
use Self::corrupt_file instead.
pub fn invalid_input(message: impl Into<String>) -> Error
pub fn invalid_input_source(source: Box<dyn Error + Send + Sync>) -> Error
pub fn io(message: impl Into<String>) -> Error
Sourcepub fn fenced_by_peer(message: impl Into<String>) -> Error
pub fn fenced_by_peer(message: impl Into<String>) -> Error
A successor writer claimed a higher epoch; this writer lost ownership.
Sourcepub fn writer_poisoned(message: impl Into<String>) -> Error
pub fn writer_poisoned(message: impl Into<String>) -> Error
Our WAL persistence failed; in-memory state may have diverged from the durable WAL, so the writer must be reopened to replay.
Sourcepub fn fence_reason(&self) -> Option<FenceReason>
pub fn fence_reason(&self) -> Option<FenceReason>
The FenceReason if this is Error::Fenced, else None. Prefer this
over matching the error message to decide how to react to a fence.
pub fn io_source(source: Box<dyn Error + Send + Sync>) -> Error
pub fn dataset_already_exists(uri: impl Into<String>) -> Error
pub fn dataset_not_found( path: impl Into<String>, source: Box<dyn Error + Send + Sync>, ) -> Error
pub fn version_conflict( message: impl Into<String>, major_version: u16, minor_version: u16, ) -> Error
pub fn not_found(uri: impl Into<String>) -> Error
Sourcepub fn is_not_found(&self) -> bool
pub fn is_not_found(&self) -> bool
Return whether this error or one of its typed sources is a missing object.
pub fn wrapped(error: Box<dyn Error + Send + Sync>) -> Error
pub fn schema(message: impl Into<String>) -> Error
pub fn not_supported(message: impl Into<String>) -> Error
pub fn not_supported_source(source: Box<dyn Error + Send + Sync>) -> Error
pub fn internal(message: impl Into<String>) -> Error
pub fn timeout(message: impl Into<String>) -> Error
pub fn namespace(message: impl Into<String>) -> Error
pub fn namespace_source(source: Box<dyn Error + Send + Sync>) -> Error
pub fn arrow(message: impl Into<String>) -> Error
pub fn execution(message: impl Into<String>) -> Error
pub fn cloned(message: impl Into<String>) -> Error
pub fn schema_mismatch(difference: impl Into<String>) -> Error
pub fn unprocessable(message: impl Into<String>) -> Error
pub fn too_much_write_contention(message: impl Into<String>) -> Error
pub fn prerequisite_failed(message: impl Into<String>) -> Error
pub fn index(message: impl Into<String>) -> Error
pub fn index_not_found(identity: impl Into<String>) -> Error
pub fn commit_conflict_source( version: u64, source: Box<dyn Error + Send + Sync>, ) -> Error
pub fn retryable_commit_conflict_source( version: u64, source: Box<dyn Error + Send + Sync>, ) -> Error
pub fn incompatible_transaction_source( source: Box<dyn Error + Send + Sync>, ) -> Error
pub fn disk_cap_exceeded(cap_bytes: u64, used_bytes: u64) -> Error
Sourcepub fn external(source: Box<dyn Error + Send + Sync>) -> Error
pub fn external(source: Box<dyn Error + Send + Sync>) -> Error
Create an External error from a boxed error source.
Sourcepub fn field_not_found(
field_name: impl Into<String>,
candidates: Vec<String>,
) -> Error
pub fn field_not_found( field_name: impl Into<String>, candidates: Vec<String>, ) -> Error
Create a FieldNotFound error with the given field name and available candidates.
Trait Implementations§
Source§impl Error for Error
impl Error for Error
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl ErrorCompat for Error
impl ErrorCompat for Error
Source§fn iter_chain(&self) -> ChainCompat<'_, '_> ⓘwhere
Self: AsErrorSource,
fn iter_chain(&self) -> ChainCompat<'_, '_> ⓘwhere
Self: AsErrorSource,
Error::source. Read moreSource§impl From<&ArrowError> for Error
impl From<&ArrowError> for Error
Source§fn from(e: &ArrowError) -> Error
fn from(e: &ArrowError) -> Error
Source§impl From<ArrowError> for Error
impl From<ArrowError> for Error
Source§fn from(e: ArrowError) -> Error
fn from(e: ArrowError) -> Error
Source§impl From<CommitError> for Error
impl From<CommitError> for Error
Source§fn from(e: CommitError) -> Error
fn from(e: CommitError) -> Error
Source§impl From<DataFusionError> for Error
Available on crate feature datafusion only.
impl From<DataFusionError> for Error
datafusion only.Source§fn from(e: DataFusionError) -> Error
fn from(e: DataFusionError) -> Error
Source§impl From<DecodeError> for Error
impl From<DecodeError> for Error
Source§fn from(e: DecodeError) -> Error
fn from(e: DecodeError) -> Error
Source§impl From<EncodeError> for Error
impl From<EncodeError> for Error
Source§fn from(e: EncodeError) -> Error
fn from(e: EncodeError) -> Error
Source§impl From<FieldNotFoundError> for Error
impl From<FieldNotFoundError> for Error
Source§fn from(error: FieldNotFoundError) -> Error
fn from(error: FieldNotFoundError) -> Error
Source§impl From<NamespaceError> for Error
Converts a NamespaceError into a lance_core::Error.
impl From<NamespaceError> for Error
Converts a NamespaceError into a lance_core::Error.
The original NamespaceError is preserved in the source field and can be
extracted via downcasting for programmatic error handling.
Source§fn from(err: NamespaceError) -> Error
fn from(err: NamespaceError) -> Error
Source§impl From<ParseError> for Error
impl From<ParseError> for Error
Source§fn from(e: ParseError) -> Error
fn from(e: ParseError) -> Error
Source§impl From<ParserError> for Error
Available on crate feature datafusion only.
impl From<ParserError> for Error
datafusion only.Source§fn from(e: ParserError) -> Error
fn from(e: ParserError) -> Error
Source§impl From<TokenizerError> for Error
Available on crate feature datafusion only.
impl From<TokenizerError> for Error
datafusion only.Source§fn from(e: TokenizerError) -> Error
fn from(e: TokenizerError) -> Error
Source§impl From<UnknownEnumValue> for Error
impl From<UnknownEnumValue> for Error
Source§fn from(e: UnknownEnumValue) -> Error
fn from(e: UnknownEnumValue) -> Error
Auto Trait Implementations§
impl !RefUnwindSafe for Error
impl !UnwindSafe for Error
impl Freeze for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl UnsafeUnpin for Error
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
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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 moreSource§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.