Enum mz_adapter::AdapterError
source · pub enum AdapterError {
Show 65 variants
AbsurdSubscribeBounds {
as_of: Timestamp,
up_to: Timestamp,
},
AmbiguousSystemColumnReference,
Catalog(Error),
ChangedPlan,
DuplicateCursor(String),
Eval(EvalError),
Explain(ExplainError),
IdExhaustionError,
Internal(String),
IntrospectionDisabled {
log_names: Vec<String>,
},
InvalidLogDependency {
object_type: String,
log_names: Vec<String>,
},
InvalidClusterReplicaAz {
az: String,
expected: Vec<String>,
},
InvalidClusterReplicaSize {
size: String,
expected: Vec<String>,
},
InvalidSetIsolationLevel,
InvalidSetCluster,
InvalidStorageClusterSize {
size: String,
expected: Vec<String>,
},
SourceOrSinkSizeRequired {
expected: Vec<String>,
},
InvalidTableMutationSelection,
BadItemInStorageCluster {
cluster_name: String,
},
ConstraintViolation(NotNullViolation),
ConcurrentClusterDrop,
NoClusterReplicasAvailable(String),
OperationProhibitsTransaction(String),
OperationRequiresTransaction(String),
PlanError(PlanError),
VarError(VarError),
PreparedStatementExists(String),
ParseError(ParserStatementError),
ReadOnlyTransaction,
ReadWriteUnavailable,
RecursionLimit(RecursionLimitError),
RelationOutsideTimeDomain {
relations: Vec<String>,
names: Vec<String>,
},
ResourceExhaustion {
resource_type: String,
limit_name: String,
desired: String,
limit: String,
current: String,
},
ResultSize(String),
SafeModeViolation(String),
StatementTimeout,
Canceled,
IdleInTransactionSessionTimeout,
SubscribeOnlyTransaction,
Transform(TransformError),
UnallowedOnCluster {
depends_on: SmallVec<[String; 2]>,
cluster: String,
},
Unauthorized(UnauthorizedError),
UncallableFunction {
func: UnmaterializableFunc,
context: &'static str,
},
UnknownCursor(String),
UnknownLoginRole(String),
UnknownPreparedStatement(String),
UnknownClusterReplica {
cluster_name: String,
replica_name: String,
},
UnknownWebhookSource {
database: String,
schema: String,
name: String,
},
UnrecognizedConfigurationParam(String),
Unstructured(Error),
Unsupported(&'static str),
UnmaterializableFunction(UnmaterializableFunc),
UnstableDependency {
object_type: String,
unstable_dependencies: Vec<String>,
},
UntargetedLogRead {
log_names: Vec<String>,
},
WriteOnlyTransaction,
MultiTableWriteTransaction,
SingleStatementTransaction,
DDLOnlyTransaction,
DDLTransactionRace,
DDLTransactionDryRun {
new_ops: Vec<Op>,
new_state: CatalogState,
},
Storage(StorageError),
Compute(Error),
Orchestrator(Error),
DependentObject(BTreeMap<String, Vec<String>>),
InvalidAlter(&'static str, PlanError),
}
Expand description
Errors that can occur in the coordinator.
Variants§
AbsurdSubscribeBounds
A SUBSCRIBE
was requested whose UP TO
bound precedes its as_of
timestamp
AmbiguousSystemColumnReference
Attempted to use a potentially ambiguous column reference expression with a system table.
Catalog(Error)
An error occurred in a catalog operation.
ChangedPlan
The cached plan or descriptor changed.
DuplicateCursor(String)
The cursor already exists.
Eval(EvalError)
An error while evaluating an expression.
Explain(ExplainError)
An error occurred while planning the statement.
IdExhaustionError
The ID allocator exhausted all valid IDs.
Internal(String)
Unexpected internal state was encountered.
IntrospectionDisabled
Attempted to read from log sources of a replica with disabled introspection.
InvalidLogDependency
Attempted to create an object dependent on log sources that doesn’t support log dependencies.
InvalidClusterReplicaAz
No such cluster replica size has been configured.
InvalidClusterReplicaSize
No such cluster replica size has been configured.
InvalidSetIsolationLevel
SET TRANSACTION ISOLATION LEVEL was called in the middle of a transaction.
InvalidSetCluster
SET cluster was called in the middle of a transaction.
InvalidStorageClusterSize
No such storage instance size has been configured.
SourceOrSinkSizeRequired
Creating a source or sink without specifying its size is forbidden.
InvalidTableMutationSelection
The selection value for a table mutation operation refers to an invalid object.
BadItemInStorageCluster
An operation attempted to create an illegal item in a storage-only cluster
ConstraintViolation(NotNullViolation)
Expression violated a column’s constraint
ConcurrentClusterDrop
Transaction cluster was dropped in the middle of a transaction.
NoClusterReplicasAvailable(String)
Target cluster has no replicas to service query.
OperationProhibitsTransaction(String)
The named operation cannot be run in a transaction.
OperationRequiresTransaction(String)
The named operation requires an active transaction.
PlanError(PlanError)
An error occurred while planning the statement.
VarError(VarError)
An error occurred with a session variable.
PreparedStatementExists(String)
The named prepared statement already exists.
ParseError(ParserStatementError)
Wrapper around parsing error
ReadOnlyTransaction
The transaction is in read-only mode.
The transaction in in read-only mode and a read already occurred.
RecursionLimit(RecursionLimitError)
The recursion limit of some operation was exceeded.
RelationOutsideTimeDomain
A query in a transaction referenced a relation outside the first query’s time domain.
ResourceExhaustion
A query tried to create more resources than is allowed in the system configuration.
ResultSize(String)
Result size of a query is too large.
SafeModeViolation(String)
The specified feature is not permitted in safe mode.
StatementTimeout
Waiting on a query timed out.
Note this differs slightly from PG’s implementation/semantics.
Canceled
The user canceled the query
IdleInTransactionSessionTimeout
An idle session in a transaction has timed out.
SubscribeOnlyTransaction
The transaction is in single-subscribe mode.
Transform(TransformError)
An error occurred in the MIR stage of the optimizer.
UnallowedOnCluster
A query depends on items which are not allowed to be referenced from the current cluster.
A user tried to perform an action that they were unauthorized to do.
UncallableFunction
The specified function cannot be called
UnknownCursor(String)
The named cursor does not exist.
UnknownLoginRole(String)
The named role does not exist.
UnknownPreparedStatement(String)
UnknownClusterReplica
The named cluster replica does not exist.
UnknownWebhookSource
The named webhook source does not exist.
UnrecognizedConfigurationParam(String)
The named setting does not exist.
Unstructured(Error)
A generic error occurred.
Unsupported(&'static str)
The named feature is not supported and will (probably) not be.
UnmaterializableFunction(UnmaterializableFunc)
The specified function cannot be materialized.
UnstableDependency
Attempted to create an object that has unstable dependencies.
UntargetedLogRead
Attempted to read from log sources without selecting a target replica.
WriteOnlyTransaction
The transaction is in write-only mode.
MultiTableWriteTransaction
The transaction only supports single table writes
SingleStatementTransaction
The transaction can only execute a single statement.
DDLOnlyTransaction
The transaction can only execute simple DDL.
DDLTransactionRace
Another session modified the Catalog while this transaction was open.
DDLTransactionDryRun
Fields
new_state: CatalogState
New resulting CatalogState
.
Used to prevent us from durably committing state while a DDL transaction is open, should never be returned to the user.
Storage(StorageError)
An error occurred in the storage layer
Compute(Error)
An error occurred in the compute layer
Orchestrator(Error)
An error in the orchestrator layer
DependentObject(BTreeMap<String, Vec<String>>)
A statement tried to drop a role that had dependent objects.
The map keys are role names and values are detailed error messages.
InvalidAlter(&'static str, PlanError)
When performing an ALTER
of some variety, re-planning the statement
errored.
Implementations§
source§impl AdapterError
impl AdapterError
pub fn into_response(self, severity: Severity) -> ErrorResponse
sourcepub fn detail(&self) -> Option<String>
pub fn detail(&self) -> Option<String>
Reports additional details about the error, if any are available.
sourcepub fn hint(&self) -> Option<String>
pub fn hint(&self) -> Option<String>
Reports a hint for the user about how the error could be fixed.
pub fn code(&self) -> SqlState
pub fn internal<E: Display>(context: &str, e: E) -> AdapterError
Trait Implementations§
source§impl Debug for AdapterError
impl Debug for AdapterError
source§impl Display for AdapterError
impl Display for AdapterError
source§impl Error for AdapterError
impl Error for AdapterError
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
source§impl From<AdapterError> for OptimizerError
impl From<AdapterError> for OptimizerError
source§fn from(source: AdapterError) -> Self
fn from(source: AdapterError) -> Self
source§impl From<CatalogError> for AdapterError
impl From<CatalogError> for AdapterError
source§fn from(e: CatalogError) -> Self
fn from(e: CatalogError) -> Self
source§impl From<CatalogError> for AdapterError
impl From<CatalogError> for AdapterError
source§fn from(e: CatalogError) -> AdapterError
fn from(e: CatalogError) -> AdapterError
source§impl From<ConnectionError> for AdapterError
impl From<ConnectionError> for AdapterError
source§fn from(value: ConnectionError) -> Self
fn from(value: ConnectionError) -> Self
source§impl From<Error> for AdapterError
impl From<Error> for AdapterError
source§fn from(e: Error) -> AdapterError
fn from(e: Error) -> AdapterError
source§impl From<Error> for AdapterError
impl From<Error> for AdapterError
source§fn from(e: Error) -> AdapterError
fn from(e: Error) -> AdapterError
source§impl From<EvalError> for AdapterError
impl From<EvalError> for AdapterError
source§fn from(e: EvalError) -> AdapterError
fn from(e: EvalError) -> AdapterError
source§impl From<ExplainError> for AdapterError
impl From<ExplainError> for AdapterError
source§fn from(e: ExplainError) -> AdapterError
fn from(e: ExplainError) -> AdapterError
source§impl From<IdentError> for AdapterError
impl From<IdentError> for AdapterError
source§fn from(value: IdentError) -> Self
fn from(value: IdentError) -> Self
source§impl From<InstanceExists> for AdapterError
impl From<InstanceExists> for AdapterError
source§fn from(e: InstanceExists) -> Self
fn from(e: InstanceExists) -> Self
source§impl From<NotNullViolation> for AdapterError
impl From<NotNullViolation> for AdapterError
source§fn from(e: NotNullViolation) -> AdapterError
fn from(e: NotNullViolation) -> AdapterError
source§impl From<OptimizerError> for AdapterError
impl From<OptimizerError> for AdapterError
source§fn from(value: OptimizerError) -> Self
fn from(value: OptimizerError) -> Self
source§impl From<ParserStatementError> for AdapterError
impl From<ParserStatementError> for AdapterError
source§fn from(e: ParserStatementError) -> Self
fn from(e: ParserStatementError) -> Self
source§impl From<PlanError> for AdapterError
impl From<PlanError> for AdapterError
source§fn from(e: PlanError) -> AdapterError
fn from(e: PlanError) -> AdapterError
source§impl From<RecursionLimitError> for AdapterError
impl From<RecursionLimitError> for AdapterError
source§fn from(e: RecursionLimitError) -> AdapterError
fn from(e: RecursionLimitError) -> AdapterError
source§impl From<RecvError> for AdapterError
impl From<RecvError> for AdapterError
source§fn from(e: RecvError) -> AdapterError
fn from(e: RecvError) -> AdapterError
source§impl From<StorageError> for AdapterError
impl From<StorageError> for AdapterError
source§fn from(e: StorageError) -> Self
fn from(e: StorageError) -> Self
source§impl From<TimeoutType> for AdapterError
impl From<TimeoutType> for AdapterError
source§fn from(timeout: TimeoutType) -> Self
fn from(timeout: TimeoutType) -> Self
source§impl From<TimestampError> for AdapterError
impl From<TimestampError> for AdapterError
source§fn from(e: TimestampError) -> Self
fn from(e: TimestampError) -> Self
source§impl From<TransformError> for AdapterError
impl From<TransformError> for AdapterError
source§fn from(e: TransformError) -> AdapterError
fn from(e: TransformError) -> AdapterError
source§impl From<TryFromDecimalError> for AdapterError
impl From<TryFromDecimalError> for AdapterError
source§fn from(e: TryFromDecimalError) -> AdapterError
fn from(e: TryFromDecimalError) -> AdapterError
source§impl From<TryFromIntError> for AdapterError
impl From<TryFromIntError> for AdapterError
source§fn from(e: TryFromIntError) -> AdapterError
fn from(e: TryFromIntError) -> AdapterError
source§fn from(e: UnauthorizedError) -> Self
fn from(e: UnauthorizedError) -> Self
source§impl From<VarError> for AdapterError
impl From<VarError> for AdapterError
source§impl ShouldHalt for AdapterError
impl ShouldHalt for AdapterError
source§fn should_halt(&self) -> bool
fn should_halt(&self) -> bool
Auto Trait Implementations§
impl !RefUnwindSafe for AdapterError
impl Send for AdapterError
impl Sync for AdapterError
impl Unpin for AdapterError
impl !UnwindSafe for AdapterError
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<E> ErrorExt for Ewhere
E: Error + ?Sized,
impl<E> ErrorExt for Ewhere E: Error + ?Sized,
source§fn display_with_causes(&self) -> ErrorChainFormatter<&Self>
fn display_with_causes(&self) -> ErrorChainFormatter<&Self>
source§fn to_string_with_causes(&self) -> String
fn to_string_with_causes(&self) -> String
self
to a string String
, along with the chain of source errors or
causes, if there are any. Read moresource§impl<T> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
RustType::into_proto
.