Struct fred::types::ConnectionConfig

source ·
pub struct ConnectionConfig {
Show 15 fields pub connection_timeout: Duration, pub internal_command_timeout: Duration, pub cluster_cache_update_delay: Duration, pub max_command_attempts: u32, pub max_redirections: u32, pub unresponsive: UnresponsiveConfig, pub reconnect_on_auth_error: bool, pub auto_client_setname: bool, pub max_command_buffer_len: usize, pub disable_cluster_health_check: bool, pub replica: ReplicaConfig, pub tcp: TcpConfig, pub reconnect_errors: Vec<ReconnectError>, pub router_task_queue: Option<TaskQueueHandle>, pub connection_task_queue: Option<TaskQueueHandle>,
}
Expand description

Configuration options related to the creation or management of TCP connection.

Fields§

§connection_timeout: Duration

The timeout to apply when attempting to create a new TCP connection.

This also includes the TLS handshake if using any of the TLS features.

Default: 10 sec

§internal_command_timeout: Duration

The timeout to apply when sending internal commands such as AUTH, SELECT, CLUSTER SLOTS, READONLY, etc.

Default: 10 sec

§cluster_cache_update_delay: Duration

The amount of time to wait after a MOVED error is received before the client will update the cached cluster state.

Default: 0

§max_command_attempts: u32

The maximum number of times the client will attempt to send a command.

This value be incremented whenever the connection closes while the command is in-flight.

Default: 3

§max_redirections: u32

The maximum number of times the client will attempt to follow a MOVED or ASK redirection per command.

Default: 5

§unresponsive: UnresponsiveConfig

Unresponsive connection configuration options.

§reconnect_on_auth_error: bool

An unexpected NOAUTH error is treated the same as a general connection failure, causing the client to reconnect based on the ReconnectPolicy. This is recommended if callers are using ElastiCache.

Default: false

§auto_client_setname: bool

Automatically send CLIENT SETNAME on each connection associated with a client instance.

Default: false

§max_command_buffer_len: usize

Limit the size of the internal in-memory command queue.

Commands that exceed this limit will receive a RedisErrorKind::Backpressure error.

See command_queue_len for more information.

Default: 0 (unlimited)

§disable_cluster_health_check: bool

Disable the CLUSTER INFO health check when initializing cluster connections.

Default: false

§replica: ReplicaConfig
Available on crate feature replicas only.

Configuration options for replica nodes.

Default: None

§tcp: TcpConfig

TCP connection options.

§reconnect_errors: Vec<ReconnectError>
Available on crate feature custom-reconnect-errors only.

Errors that should trigger reconnection logic.

§router_task_queue: Option<TaskQueueHandle>
Available on crate feature glommio only.

The task queue onto which routing tasks will be spawned.

May cause a panic if spawn_local_into fails.

§connection_task_queue: Option<TaskQueueHandle>
Available on crate feature glommio only.

The task queue onto which connection reader tasks will be spawned.

May cause a panic if spawn_local_into fails.

Trait Implementations§

source§

impl Clone for ConnectionConfig

source§

fn clone(&self) -> ConnectionConfig

Returns a copy 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 ConnectionConfig

source§

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

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

impl Default for ConnectionConfig

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl PartialEq for ConnectionConfig

source§

fn eq(&self, other: &ConnectionConfig) -> 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 Eq for ConnectionConfig

source§

impl StructuralPartialEq for ConnectionConfig

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, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
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> Instrument for T

source§

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

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

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.

source§

impl<T> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
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, 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
source§

impl<T> WithSubscriber for T

source§

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

fn with_current_subscriber(self) -> WithDispatch<Self>

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