RedisError in redis - Rust
Description: Represents a redis error.

Skip to main content

## RedisError

# Struct RedisError

Source

    pub struct RedisError { /* private fields */ }

Expand description

Represents a redis error.

For the most part you should be using the Error trait to interact with this rather than the actual struct.

## Implementations§

Source§

### impl RedisError

Indicates a general failure in the library.

Source

#### pub fn kind(&self) -> ErrorKind

Returns the kind of the error.

Source

#### pub fn detail(&self) -> Option<&str>

Returns the error detail.

Source

#### pub fn code(&self) -> Option<&str>

Returns the raw error code if available.

Source

#### pub fn category(&self) -> &str

Returns the name of the error category for display purposes.

Source

#### pub fn is_io_error(&self) -> bool

Indicates that this failure is an IO failure.

Source

#### pub fn is_cluster_error(&self) -> bool

Indicates that this is a cluster error.

Source

#### pub fn is_connection_refusal(&self) -> bool

Returns true if this error indicates that the connection was refused. You should generally not rely much on this function unless you are writing unit tests that want to detect if a local server is available.

Source

#### pub fn is_timeout(&self) -> bool

Returns true if error was caused by I/O time out. Note that this may not be accurate depending on platform.

Source

#### pub fn is_connection_dropped(&self) -> bool

Returns true if error was caused by a dropped connection.

Source

#### pub fn is_unrecoverable_error(&self) -> bool

Returns true if the error is likely to not be recoverable, and the connection must be replaced.

Source

#### pub fn redirect_node(&self) -> Option<(&str, u16)>

Returns the node the error refers to.

This returns `(addr, slot_id)`.

Source

#### pub fn retry_method(&self) -> RetryMethod

Specifies what method (if any) should be used to retry this request.

If you are using the cluster api retrying of requests is already handled by the library.

This isn’t precise, and internally the library uses multiple other considerations rather than just the error kind on when to retry.

Source

#### pub fn into_server_errors(self) -> Option<Arc<[(usize, ServerError)]>>

Returns the internal server errors, if there are any, and the failing commands indices.

If this is called over over a pipeline or transaction error, the indices correspond to the positions of the failing commands in the pipeline or transaction. If the error is not a pipeline error, the index will be 0.

## Trait Implementations§

Source§

### impl Clone for RedisError

Source§

#### fn clone(&self) -> RedisError

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from `source`. Read more
Source§

### impl Debug for RedisError

Source§

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

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

### impl Display for RedisError

Source§

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

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

### impl Error for RedisError

Source§

#### 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

👎Deprecated since 1.42.0: use the Display impl or to_string()
Read more
1.0.0 · Source§

#### fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
Source§

#### fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (`error_generic_member_access`)
Provides type-based access to context intended for error reports. Read more
Source§

### impl From<(ErrorKind, &'static str)> for RedisError

Source§

#### fn from((kind, desc): (ErrorKind, &'static str)) -> RedisError

Converts to this type from the input type.
Source§

### impl From<(ErrorKind, &'static str, String)> for RedisError

Source§

#### fn from((kind, desc, detail): (ErrorKind, &'static str, String)) -> RedisError

Converts to this type from the input type.
Source§

### impl From<Error> for RedisError

Available on crate feature `json` only.
Source§

#### fn from(serde_err: Error) -> RedisError

Converts to this type from the input type.
Source§

### impl From<Error> for RedisError

Source§

#### fn from(err: Error) -> RedisError

Converts to this type from the input type.
Source§

### impl From<Error> for RedisError

Available on crate feature `tls-rustls` only.
Source§

#### fn from(err: Error) -> RedisError

Converts to this type from the input type.
Source§

### impl From<Error> for RedisError

Available on crate feature `tls-native-tls` only.
Source§

#### fn from(err: Error) -> RedisError

Converts to this type from the input type.
Source§

### impl From<Error> for RedisError

Available on crate feature `tls-rustls` only.
Source§

#### fn from(err: Error) -> RedisError

Converts to this type from the input type.
Source§

### impl From<InvalidDnsNameError> for RedisError

Available on crate feature `tls-rustls` only.
Source§

#### fn from(err: InvalidDnsNameError) -> RedisError

Converts to this type from the input type.
Source§

### impl From<ParsingError> for RedisError

Source§

#### fn from(err: ParsingError) -> Self

Converts to this type from the input type.
Source§

### impl From<ServerError> for RedisError

Source§

#### fn from(err: ServerError) -> Self

Converts to this type from the input type.
Source§

### impl PartialEq for RedisError

Source§

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

Tests for `self` and `other` values to be equal, and is used by `==`.
1.0.0 · Source§

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

Tests for `!=`. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

### impl TryFrom<RedisError> for ServerError

Source§

#### type Error = RedisError

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

#### fn try_from(err: RedisError) -> Result<ServerError, RedisError>

Performs the conversion.

## Auto Trait Implementations§

§

### impl Freeze for RedisError

§

### impl !RefUnwindSafe for RedisError

§

### impl Send for RedisError

§

### impl Sync for RedisError

§

### impl Unpin for RedisError

§

### impl !UnwindSafe for RedisError

## 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> DynClone for T
where T: Clone,

Source§

#### fn __clone_box(&self, _: Private) -> *mut ()

Source§

### impl<T> From<T> for T

Source§

#### fn from(t: T) -> T

Returns the argument unchanged.

§

### impl<T> Instrument for T

§

#### fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [`Span`], returning an `Instrumented` wrapper. Read more
§

#### fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current `Span`, returning an `Instrumented` wrapper. Read more
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.

§

### impl<T> PolicyExt for T
where T: ?Sized,

§

#### fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new `Policy` that returns [`Action::Follow`] only if `self` and `other` return `Action::Follow`. Read more
§

#### fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new `Policy` that returns [`Action::Follow`] if either `self` or `other` returns `Action::Follow`. Read more
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
§

### impl<T> ToStringFallible for T
where T: Display,

§

#### fn try_to_string(&self) -> Result<String, TryReserveError>

`ToString::to_string`, but without panic on OOM.

Source§

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

Source§

#### type Error = Infallible

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

#### fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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

### impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

#### fn vzip(self) -> V

§

### impl<T> WithSubscriber for T

§

#### fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided `Subscriber` to this type, returning a [`WithDispatch`] wrapper. Read more
§

#### fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default `Subscriber` to this type, returning a [`WithDispatch`] wrapper. Read more
§

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

§

### impl<T> MaybeSendSync for T