#[non_exhaustive]pub enum SinkError {
Upstream {
status: u16,
retryable: bool,
},
Transport {
kind: &'static str,
},
StaleEpoch {
stamped: Epoch,
current: Epoch,
},
}Expand description
A failure applying a write at the sink.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Upstream
The upstream cluster returned an error status for the whole request (not a per-item failure, which is carried in the ack).
Transport
The write could not be delivered (connection reset, timeout, TLS). The message is a shape/category description, never tenant data.
StaleEpoch
The write was resolved against an epoch that is stale for a migrating
partition; the caller must re-resolve and retry (docs/06 §2). Wired in
M5; defined here so the sink contract is stable.
Implementations§
Trait Implementations§
Source§impl Error for SinkError
impl Error for SinkError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for SinkError
impl RefUnwindSafe for SinkError
impl Send for SinkError
impl Sync for SinkError
impl Unpin for SinkError
impl UnsafeUnpin for SinkError
impl UnwindSafe for SinkError
Blanket Implementations§
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
Mutably borrows from an owned value. Read more