#[non_exhaustive]pub enum CatalogError {
Show 27 variants
InvalidJobType {
job_type: String,
source: IdentifierValidationError,
},
InvalidHandlerJobType {
handler_job_type: String,
source: IdentifierValidationError,
},
HandlerJobTypeMismatch {
declared: String,
handler: String,
},
DuplicateJobType {
job_type: String,
},
InvalidDefinitionValue {
field: &'static str,
},
InvalidFailureCode,
InvalidRetryDelay,
InvalidExactSyncScope,
InvalidExactSyncScopeJobType {
job_type: String,
source: IdentifierValidationError,
},
EmptyExactSyncCatalog,
JobTypeOutsideExactSyncScope {
job_type: String,
},
ActiveScheduleForAbsentJobType {
schedule_name: String,
job_type: String,
},
ActiveScheduleForDisabledJobType {
schedule_name: String,
job_type: String,
},
UnknownJobType {
job_type: String,
},
DisabledJobType {
job_type: String,
},
WorkflowBuild(WorkflowBuildError),
SyncFailure(Error),
DefinitionCatalogSyncFailure(Box<dyn Error + Send + Sync>),
DefinitionSyncFailure {
job_type: String,
source: Error,
},
CommitFailure(Error),
CriticalSectionTimeoutFailure(Error),
DefinitionSyncValidationFailure(Error),
ScheduleLockFailure(Error),
DefinitionLockFailure(Error),
ScheduleCheckFailure(Error),
DefinitionInspectFailure(Error),
DisableAbsentFailure(Error),
}Expand description
Error returned by super::JobCatalog validation, sync, and helper methods.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
InvalidJobType
A caller supplied an invalid catalog job type.
Fields
source: IdentifierValidationErrorIdentifier validation failure reported by runledger-core.
InvalidHandlerJobType
A registered handler returned an invalid job type.
Fields
source: IdentifierValidationErrorIdentifier validation failure reported by runledger-core.
HandlerJobTypeMismatch
The declared catalog job type did not match the handler’s job type.
Fields
DuplicateJobType
The catalog already contains the requested job type.
InvalidDefinitionValue
A catalog definition default failed validation.
InvalidFailureCode
Retry-delay override failure codes must be non-empty.
InvalidRetryDelay
Retry-delay override values must be positive.
InvalidExactSyncScope
Exact sync requires a non-empty owned job-type scope.
InvalidExactSyncScopeJobType
Exact sync scope construction received an invalid job type.
Fields
source: IdentifierValidationErrorIdentifier validation failure reported by runledger-core.
EmptyExactSyncCatalog
Exact sync cannot run against an empty catalog.
JobTypeOutsideExactSyncScope
A catalog job was not included in the exact-sync scope.
ActiveScheduleForAbsentJobType
An active schedule still references an enabled definition absent from the catalog.
Fields
ActiveScheduleForDisabledJobType
An active schedule still references a catalog job that would be disabled.
Fields
UnknownJobType
The requested job type is not registered in the catalog.
DisabledJobType
The requested job type is disabled in catalog defaults.
WorkflowBuild(WorkflowBuildError)
Workflow enqueue construction failed.
SyncFailure(Error)
Starting a catalog sync transaction failed.
DefinitionCatalogSyncFailure(Box<dyn Error + Send + Sync>)
A persistence-layer catalog sync failure had no runtime-specific mapping.
DefinitionSyncFailure
Syncing a specific catalog job definition failed.
Fields
CommitFailure(Error)
Committing a catalog sync transaction failed.
CriticalSectionTimeoutFailure(Error)
Applying the transaction-local bounds for definition-disabling sync failed.
DefinitionSyncValidationFailure(Error)
Catalog definition sync input failed persistence-layer validation.
ScheduleLockFailure(Error)
Locking schedules before disabling definitions failed.
DefinitionLockFailure(Error)
Locking definitions before checking and disabling definitions failed.
ScheduleCheckFailure(Error)
Checking active schedules before disabling definitions failed.
DefinitionInspectFailure(Error)
Inspecting existing job definitions before sync failed.
DisableAbsentFailure(Error)
Disabling absent job definitions failed.
Trait Implementations§
Source§impl Debug for CatalogError
impl Debug for CatalogError
Source§impl Display for CatalogError
impl Display for CatalogError
Source§impl Error for CatalogError
impl Error for CatalogError
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 From<WorkflowBuildError> for CatalogError
impl From<WorkflowBuildError> for CatalogError
Source§fn from(source: WorkflowBuildError) -> Self
fn from(source: WorkflowBuildError) -> Self
Auto Trait Implementations§
impl Freeze for CatalogError
impl !RefUnwindSafe for CatalogError
impl Send for CatalogError
impl Sync for CatalogError
impl Unpin for CatalogError
impl UnsafeUnpin for CatalogError
impl !UnwindSafe for CatalogError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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