pub enum LineageError {
Parse(String),
MultiStatement,
UnresolvedColumn {
column: String,
reason: String,
},
UnknownTable {
table: String,
},
DepthLimitExceeded,
CircularReference {
cte: String,
},
ColumnCountMismatch {
target: String,
expected: usize,
found: usize,
},
}Expand description
Failure raised while extracting column lineage from SQL.
Resolution is fail-closed: any projected column that cannot be bound to a
concrete source aborts the whole extraction (see LineageError::UnresolvedColumn).
Variants§
Parse(String)
The SQL string could not be parsed by the selected dialect.
MultiStatement
More than one statement was supplied; only single statements are analyzed.
UnresolvedColumn
A projected column could not be resolved to a concrete source column.
Fields
UnknownTable
A referenced table is not present in the supplied schema catalog.
DepthLimitExceeded
Query nesting exceeded the recursion-depth guard.
CircularReference
A CTE references itself directly or transitively; lineage is undefined.
ColumnCountMismatch
A write target’s column list does not match its source projection.
Trait Implementations§
Source§impl Clone for LineageError
impl Clone for LineageError
Source§impl Debug for LineageError
impl Debug for LineageError
Source§impl Display for LineageError
impl Display for LineageError
impl Eq for LineageError
Source§impl Error for LineageError
impl Error for LineageError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl PartialEq for LineageError
impl PartialEq for LineageError
impl StructuralPartialEq for LineageError
Auto Trait Implementations§
impl Freeze for LineageError
impl RefUnwindSafe for LineageError
impl Send for LineageError
impl Sync for LineageError
impl Unpin for LineageError
impl UnsafeUnpin for LineageError
impl UnwindSafe for LineageError
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
Mutably borrows from an owned value. Read more