#[non_exhaustive]pub enum StoreError {
Invalid(Cow<'static, str>),
PartSubtreeMismatch,
RangeNotSatisfiable {
len: u64,
},
Unsupported(Cow<'static, str>),
SessionGone,
Corrupt(Cow<'static, str>),
Full,
Unavailable(BoxError),
}Expand description
Why a storage call failed. A failed precondition is not an error: it is
crate::BatchOutcome::PreconditionFailed.
The pipeline maps these to a crate::ServerError; storage text never
reaches a client.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Invalid(Cow<'static, str>)
The request breaks the contract: an oversize key, value or batch, a
scan limit of 0, a malformed byte range, or a blob whose bytes do
not match its key or declared length. Nothing was written.
PartSubtreeMismatch
A staged part’s subtree hash differs from its authenticated commitment.
RangeNotSatisfiable
A byte range starts at or past the end of a blob of len bytes
(HTTP 416 on the serving path).
Unsupported(Cow<'static, str>)
The store’s crate::StoreCapabilities exclude the request, e.g. a
non-ref key on a RefsOnly store or a multi-write batch on a store
without atomic_multi_key. Nothing was written.
SessionGone
The multipart storage session was aborted, completed or reclaimed.
Corrupt(Cow<'static, str>)
A stored value failed to decode (unknown codec version, wrong length).
Full
The partition is at its storage cap and rejects writes that add
data. Reads and delete-only batches keep working, so pruning still
runs (Durable Objects and SQLite report SQLITE_FULL; see
https://developers.cloudflare.com/durable-objects/platform/limits/).
The pipeline answers a retryable unavailable (“storage partition
full”), never resource_exhausted.
The backend failed or could not be reached. The outcome of an
apply that fails this way is unknown: the pipeline re-reads.
Implementations§
Source§impl StoreError
impl StoreError
StoreError::Unavailable wrapping source.
Trait Implementations§
Source§impl Debug for StoreError
impl Debug for StoreError
Source§impl Display for StoreError
impl Display for StoreError
Source§impl Error for StoreError
impl Error for StoreError
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()