Skip to main content

ErrorCode

Enum ErrorCode 

Source
#[non_exhaustive]
pub enum ErrorCode {
Show 50 variants InvalidRequest, Unauthorized, Forbidden, StoragePermissionDenied, ContentTooLarge, NotSupported, RouteNotFound, MethodNotAllowed, NamespaceNotFound, NamespaceDeleted, NamespaceExists, CheckpointNotFound, SnapshotNotFound, SnapshotGone, SnapshotQuotaExceeded, ContentNotPrepared, PathNotFound, InodeNotFound, RevisionNotFound, PathConflict, DirectoryNotEmpty, StaleHead, StaleRevision, StaleAttributes, StaleAccess, NamespaceUnrestricted, BindingGenerationMismatch, NotDeleted, WriterFenced, WouldCycle, CommitIdReuseConflict, CommitOutcomeUnknown, CommitQueueFull, WriterSessionClosed, WriterCapacityExceeded, ServerBusy, ShuttingDown, DeadlineExceeded, CheckpointUnavailable, ContentNotMaterialized, MaintenanceRequired, UploadNotFound, UploadAlreadyCompleted, UploadContentConflict, RebootstrapRequired, QueryUnindexable, IndexLagging, IndexCorrupt, NamespaceCorrupt, ServerError,
}
Expand description

A stable machine-readable error reason.

Clients must tolerate unrecognized codes.

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.
§

InvalidRequest

Carries the stable wire code invalid_request.

§

Unauthorized

Carries the stable wire code unauthorized.

§

Forbidden

Carries the stable wire code forbidden.

§

StoragePermissionDenied

Carries the stable wire code storage_permission_denied.

§

ContentTooLarge

Carries the stable wire code content_too_large.

§

NotSupported

Carries the stable wire code not_supported.

§

RouteNotFound

Carries the stable wire code route_not_found.

§

MethodNotAllowed

Carries the stable wire code method_not_allowed.

§

NamespaceNotFound

Carries the stable wire code namespace_not_found.

§

NamespaceDeleted

Carries the stable wire code namespace_deleted.

§

NamespaceExists

Carries the stable wire code namespace_exists.

§

CheckpointNotFound

Carries the stable wire code checkpoint_not_found.

§

SnapshotNotFound

Carries the stable wire code snapshot_not_found.

§

SnapshotGone

Carries the stable wire code snapshot_gone.

§

SnapshotQuotaExceeded

Carries the stable wire code snapshot_quota_exceeded.

§

ContentNotPrepared

Carries the stable wire code content_not_prepared.

§

PathNotFound

Carries the stable wire code path_not_found.

§

InodeNotFound

Carries the stable wire code inode_not_found.

§

RevisionNotFound

Carries the stable wire code revision_not_found.

§

PathConflict

Carries the stable wire code path_conflict.

§

DirectoryNotEmpty

Carries the stable wire code directory_not_empty.

§

StaleHead

Carries the stable wire code stale_head.

§

StaleRevision

Carries the stable wire code stale_revision.

§

StaleAttributes

Carries the stable wire code stale_attributes.

§

StaleAccess

Carries the stable wire code stale_access.

§

NamespaceUnrestricted

Carries the stable wire code namespace_unrestricted.

§

BindingGenerationMismatch

Carries the stable wire code binding_generation_mismatch.

§

NotDeleted

Carries the stable wire code not_deleted.

§

WriterFenced

Carries the stable wire code writer_fenced.

§

WouldCycle

Carries the stable wire code would_cycle.

§

CommitIdReuseConflict

Carries the stable wire code commit_id_reuse_conflict.

§

CommitOutcomeUnknown

Carries the stable wire code commit_outcome_unknown.

§

CommitQueueFull

Carries the stable wire code commit_queue_full.

§

WriterSessionClosed

Carries the stable wire code writer_session_closed.

§

WriterCapacityExceeded

Carries the stable wire code writer_capacity_exceeded.

§

ServerBusy

Carries the stable wire code server_busy.

§

ShuttingDown

Carries the stable wire code shutting_down.

§

DeadlineExceeded

Carries the stable wire code deadline_exceeded.

§

CheckpointUnavailable

Carries the stable wire code checkpoint_unavailable.

§

ContentNotMaterialized

Carries the stable wire code content_not_materialized.

§

MaintenanceRequired

Carries the stable wire code maintenance_required.

§

UploadNotFound

Carries the stable wire code upload_not_found.

§

UploadAlreadyCompleted

Carries the stable wire code upload_already_completed.

§

UploadContentConflict

Carries the stable wire code upload_content_conflict.

§

RebootstrapRequired

Carries the stable wire code rebootstrap_required.

§

QueryUnindexable

Carries the stable wire code query_unindexable.

§

IndexLagging

Carries the stable wire code index_lagging.

§

IndexCorrupt

Carries the stable wire code index_corrupt.

§

NamespaceCorrupt

Carries the stable wire code namespace_corrupt.

§

ServerError

Carries the stable wire code server_error.

Implementations§

Source§

impl ErrorCode

Source

pub const ALL: [ErrorCode; 50]

Every registered code, in registry order.

Source

pub fn as_str(self) -> &'static str

Returns the stable wire string for this code.

Source

pub fn parse(value: &str) -> Option<ErrorCode>

Parses a registered code string, returning None for codes this build does not know (clients must tolerate those).

Source§

impl ErrorCode

Source

pub fn kind(self) -> ErrorKind

Returns the caller-action category for this code.

The kind agrees with the HTTP status the api.md error table documents for the code; the server derives the served status from it.

Source

pub fn retryable_without_operator_action(self) -> bool

Returns whether this condition can clear without caller or operator action.

This predicate is deliberately narrower than ErrorKind::Unavailable: it includes only admission pressure and shutdown handoff that settle on their own. Transport failures are classified separately by clients. Reconciliation, request changes, and maintenance are caller or operator actions and therefore return false here.

Trait Implementations§

Source§

impl Clone for ErrorCode

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for ErrorCode

Source§

impl Debug for ErrorCode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for ErrorCode

Source§

fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Display for ErrorCode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for ErrorCode

Source§

impl PartialEq for ErrorCode

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl Serialize for ErrorCode

Source§

fn serialize<S: Serializer>(&self, serializer: S) -> Result<S::Ok, S::Error>

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for ErrorCode

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.