#[non_exhaustive]pub enum PlannerError {
Show 18 variants
AnalyzeError {
source: AnalyzeError,
},
DecimalError {
source: DecimalError,
},
SqlParserError {
source: ParserError,
},
DataFusionError {
source: DataFusionError,
},
ColumnNotFound,
TableNotFound {
table_name: String,
},
InvalidPlaceholderId {
id: String,
},
UntypedPlaceholder {
placeholder: Placeholder,
},
UnsupportedDataType {
data_type: DataType,
},
UnsupportedBinaryOperator {
op: Operator,
},
UnsupportedAggregateOperation {
op: AggregateFunction,
},
UnsupportedAggregateFunction {
function: AggregateFunction,
},
UnsupportedLogicalExpression {
expr: Box<Expr>,
},
UnsupportedAggregatePlan {
source: AggregatePlanError,
},
UnsupportedJoinPlan {
source: JoinPlanError,
},
UnsupportedLogicalPlan {
node: LogicalPlanNodeKind,
},
UnresolvedLogicalPlan,
CatalogNotSupported,
}Expand description
Proof of SQL Planner error
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
AnalyzeError
Returned when the internal analyze process fails
Fields
source: AnalyzeErrorUnderlying analyze error
DecimalError
Returned when a decimal error occurs
Fields
source: DecimalErrorUnderlying decimal error
SqlParserError
Returned when sqlparser fails to parse a query
Fields
source: ParserErrorUnderlying sqlparser error
DataFusionError
Returned when datafusion fails to plan a query
Fields
source: DataFusionErrorUnderlying datafusion error
ColumnNotFound
Returned if a column is not found
TableNotFound
Returned if a table is not found
InvalidPlaceholderId
Returned when a placeholder id is invalid
UntypedPlaceholder
Returned when a placeholder is untyped
Fields
placeholder: PlaceholderUntyped placeholder
UnsupportedDataType
Returned when a datatype is not supported
UnsupportedBinaryOperator
Returned when a binary operator is not supported
UnsupportedAggregateOperation
Returned when the aggregate opetation is not supported
Fields
op: AggregateFunctionUnsupported aggregate operation
UnsupportedAggregateFunction
Returned when the AggregateFunction is not supported
Fields
function: AggregateFunctionUnsupported AggregateFunction
UnsupportedLogicalExpression
Returned when a logical expression is not resolved
UnsupportedAggregatePlan
Returned when an aggregate logical plan cannot be converted.
Fields
source: AggregatePlanErrorSpecific aggregate conversion error.
UnsupportedJoinPlan
Returned when a join logical plan cannot be converted.
Fields
source: JoinPlanErrorSpecific join conversion error.
UnsupportedLogicalPlan
Returned when a LogicalPlan node or shape is not supported.
Fields
node: LogicalPlanNodeKindKind of node whose particular shape was unsupported.
UnresolvedLogicalPlan
Returned when the LogicalPlan is not resolved
CatalogNotSupported
Returned when catalog is provided since it is not supported
Trait Implementations§
Source§impl Debug for PlannerError
impl Debug for PlannerError
Source§impl Display for PlannerError
impl Display for PlannerError
Source§impl Error for PlannerError
impl Error for PlannerError
Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§fn cause(&self) -> Option<&dyn Error>
fn cause(&self) -> Option<&dyn Error>
replaced by Error::source, which can support downcasting
Source§impl ErrorCompat for PlannerError
impl ErrorCompat for PlannerError
Source§fn iter_chain(&self) -> ChainCompat<'_, '_>where
Self: AsErrorSource,
fn iter_chain(&self) -> ChainCompat<'_, '_>where
Self: AsErrorSource,
Error::source. Read moreSource§impl From<AggregatePlanError> for PlannerError
impl From<AggregatePlanError> for PlannerError
Source§fn from(error: AggregatePlanError) -> Self
fn from(error: AggregatePlanError) -> Self
Source§impl From<AnalyzeError> for PlannerError
impl From<AnalyzeError> for PlannerError
Source§fn from(error: AnalyzeError) -> Self
fn from(error: AnalyzeError) -> Self
Source§impl From<DataFusionError> for PlannerError
impl From<DataFusionError> for PlannerError
Source§fn from(error: DataFusionError) -> Self
fn from(error: DataFusionError) -> Self
Source§impl From<DecimalError> for PlannerError
impl From<DecimalError> for PlannerError
Source§fn from(error: DecimalError) -> Self
fn from(error: DecimalError) -> Self
Source§impl From<JoinPlanError> for PlannerError
impl From<JoinPlanError> for PlannerError
Source§fn from(error: JoinPlanError) -> Self
fn from(error: JoinPlanError) -> Self
Source§impl From<ParserError> for PlannerError
impl From<ParserError> for PlannerError
Source§fn from(error: ParserError) -> Self
fn from(error: ParserError) -> Self
Auto Trait Implementations§
impl !RefUnwindSafe for PlannerError
impl !UnwindSafe for PlannerError
impl Freeze for PlannerError
impl Send for PlannerError
impl Sync for PlannerError
impl Unpin for PlannerError
impl UnsafeUnpin for PlannerError
Blanket Implementations§
Source§impl<T> AsErrorSource for Twhere
T: Error + 'static,
impl<T> AsErrorSource for Twhere
T: Error + 'static,
Source§fn as_error_source(&self) -> &(dyn Error + 'static)
fn as_error_source(&self) -> &(dyn Error + 'static)
Source§impl<T> AsErrorSource for Twhere
T: Error + 'static,
impl<T> AsErrorSource for Twhere
T: Error + 'static,
Source§fn as_error_source(&self) -> &(dyn Error + 'static)
fn as_error_source(&self) -> &(dyn Error + 'static)
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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