pub enum TransactionError {
VersionAlreadyExists(i64),
SerializeLogJson {
json_err: Error,
},
ObjectStore {
source: Error,
},
CommitConflict(CommitConflictError),
MaxCommitAttempts(i32),
DeltaTableAppendOnly,
UnsupportedReaderFeatures(Vec<ReaderFeature>),
UnsupportedWriterFeatures(Vec<WriterFeature>),
WriterFeaturesRequired(WriterFeature),
ReaderFeaturesRequired(ReaderFeature),
LogStoreError {
msg: String,
source: Box<dyn Error + Send + Sync + 'static>,
},
}Expand description
Error raised while commititng transaction
Variants§
VersionAlreadyExists(i64)
Version already exists
SerializeLogJson
Error returned when reading the delta log object failed.
ObjectStore
Error returned when reading the delta log object failed.
CommitConflict(CommitConflictError)
Error returned when a commit conflict occurred
MaxCommitAttempts(i32)
Error returned when maximum number of commit trioals is exceeded
DeltaTableAppendOnly
The transaction includes Remove action with data change but Delta table is append-only
UnsupportedReaderFeatures(Vec<ReaderFeature>)
Error returned when unsupported reader features are required
UnsupportedWriterFeatures(Vec<WriterFeature>)
Error returned when unsupported writer features are required
WriterFeaturesRequired(WriterFeature)
Error returned when writer features are required but not specified
ReaderFeaturesRequired(ReaderFeature)
Error returned when reader features are required but not specified
LogStoreError
The transaction failed to commit due to an error in an implementation-specific layer. Currently used by DynamoDb-backed S3 log store when database operations fail.
Trait Implementations§
Source§impl Debug for TransactionError
impl Debug for TransactionError
Source§impl Display for TransactionError
impl Display for TransactionError
Source§impl Error for TransactionError
impl Error for TransactionError
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
Source§impl From<CommitConflictError> for TransactionError
impl From<CommitConflictError> for TransactionError
Source§fn from(source: CommitConflictError) -> Self
fn from(source: CommitConflictError) -> Self
Source§impl From<Error> for TransactionError
impl From<Error> for TransactionError
Source§fn from(source: ObjectStoreError) -> Self
fn from(source: ObjectStoreError) -> Self
Source§impl From<TransactionError> for DeltaTableError
impl From<TransactionError> for DeltaTableError
Source§fn from(err: TransactionError) -> Self
fn from(err: TransactionError) -> Self
Auto Trait Implementations§
impl Freeze for TransactionError
impl !RefUnwindSafe for TransactionError
impl Send for TransactionError
impl Sync for TransactionError
impl Unpin for TransactionError
impl !UnwindSafe for TransactionError
Blanket Implementations§
Source§impl<T> AsAny for T
impl<T> AsAny for T
Source§fn any_ref(&self) -> &(dyn Any + Send + Sync + 'static)
fn any_ref(&self) -> &(dyn Any + Send + Sync + 'static)
dyn Any reference to the object: Read moreSource§fn as_any(self: Arc<T>) -> Arc<dyn Any + Send + Sync>
fn as_any(self: Arc<T>) -> Arc<dyn Any + Send + Sync>
Arc<dyn Any> reference to the object: Read moreSource§fn into_any(self: Box<T>) -> Box<dyn Any + Send + Sync>
fn into_any(self: Box<T>) -> Box<dyn Any + Send + Sync>
Box<dyn Any>: Read moreSource§fn type_name(&self) -> &'static str
fn type_name(&self) -> &'static str
std::any::type_name, since Any does not provide it and
Any::type_id is useless as a debugging aid (its Debug is just a mess of hex digits).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
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 more