#[non_exhaustive]pub enum MigrationError {
UnknownPartition,
AlreadyMigrating,
NotMigrating,
NotDraining,
NotCutover,
Backend {
reason: &'static str,
},
}Expand description
Why a migration state transition was refused: the transition does not apply to the partition’s current state. Transitions are total and side-effect-free on failure, so a refused transition leaves the table unchanged.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
UnknownPartition
The partition has no placement to transition.
AlreadyMigrating
begin_migration requires a settled (Active) partition.
NotMigrating
enter_cutover/complete/abort require an in-flight migration.
NotDraining
enter_cutover requires the Draining phase.
NotCutover
complete_migration requires the Cutover phase.
Backend
The distributed MigrationStore backend was unreachable or
rejected the operation (network/store failure, not a logical phase error).
Retryable by the controller; never inferred for the in-process table, which
has no backend to fail. The value-free reason is for the operator/LLM.
Trait Implementations§
Source§impl Clone for MigrationError
impl Clone for MigrationError
Source§fn clone(&self) -> MigrationError
fn clone(&self) -> MigrationError
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for MigrationError
impl Debug for MigrationError
Source§impl Display for MigrationError
impl Display for MigrationError
impl Eq for MigrationError
Source§impl Error for MigrationError
impl Error for MigrationError
1.30.0 · 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()
Source§impl PartialEq for MigrationError
impl PartialEq for MigrationError
Source§fn eq(&self, other: &MigrationError) -> bool
fn eq(&self, other: &MigrationError) -> bool
self and other values to be equal, and is used by ==.