[][src]Enum async_raft::error::ChangeConfigError

#[non_exhaustive]pub enum ChangeConfigError {
    RaftError(RaftError),
    ConfigChangeInProgress,
    InoperableConfig,
    NodeNotLeader(Option<NodeId>),
    Noop,
}

The set of errors which may take place when requesting to propose a config change.

Variants (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.
RaftError(RaftError)

An error related to the processing of the config change request.

Errors of this type will only come about from the internals of applying the config change to the Raft log and the process related to that workflow.

ConfigChangeInProgress

The cluster is already undergoing a configuration change.

InoperableConfig

The given config would leave the cluster in an inoperable state.

This error will be returned if the full set of changes, once fully applied, would leave the cluster in an inoperable state.

NodeNotLeader(Option<NodeId>)

The node the config change proposal was sent to was not the leader of the cluster. The ID of the current leader is returned if known.

Noop

The proposed config changes would make no difference to the current config.

This takes into account a current joint consensus and the end result of the config.

Trait Implementations

impl Debug for ChangeConfigError[src]

impl Display for ChangeConfigError[src]

impl Error for ChangeConfigError[src]

impl<D: AppData> From<ClientWriteError<D>> for ChangeConfigError[src]

impl From<RaftError> for ChangeConfigError[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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

impl<T> WithSubscriber for T[src]