Engine(EngineError) | A typed engine error carrying DuckDB’s own classification + message. The main runtime failure. |
DuckDBFailure(ffi::Error, Option<String>) | A raw C-API failure (status code + optional message) from APIs with no typed classification (prepare, extract, table description). |
ConversionError(DuckDBConversionError) | A value conversion failed — see below. |
NulError(..) | A &str / path contained an interior NUL byte (caught before the FFI call). |
Utf8Error(..) | A DuckDB string was not valid UTF-8. |
InvalidParameterName(String) | A $name passed to execute_with_named is not in the SQL. |
InvalidParameterCount(got, needed) | Wrong number of bound parameters. |
InvalidColumnIndex(usize) | Column index out of range. |
InvalidColumnName(String) | Unknown column name. |
IntegralValueOutOfRange(col, i128) | A value does not fit the requested integer type. |
MixedIterationMode | Row-by-row and chunk (fetch_chunk) consumption mixed on one DuckResult. |
MultipleStatement | A single-statement API was given multiple statements. |
InvalidQuery | The query was rejected as invalid. |
InvalidPath(PathBuf) | A database path could not be used. |
StatementChangedRows(usize) | A statement changed an unexpected number of rows. |
ExecuteReturnedResults | An execute-only path unexpectedly produced rows. |
QueryReturnedNoRows | A query expected to return a row returned none. |
AppendError | A generic appender failure. |
ToSqlConversionFailure(Box<dyn Error + Send + Sync>) | A to-SQL conversion failed. |
BackgroundTaskFailed(String) | A spawn_blocking task (async facade) panicked or was cancelled. |
Pool(String) | A pool checkout timed out or the manager failed. |
UNKNOWN(Box<dyn Error + Send + Sync>) | An otherwise-unclassified error. |