{"record":{"id":"58e77642387831a6","repo":"dbt-labs/dbt-core","slug":"dremio-58e776","errorCode":null,"errorMessage":"Dremio","messagePattern":"Dremio","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/dbt-adapter/src/column/column_builder.rs","lineNumber":39,"sourceCode":"    }\n\n    pub fn build(&self, field: &FieldRef, type_ops: &dyn TypeOps) -> AdapterResult<Column> {\n        use AdapterType::*;\n        match self.adapter_type {\n            Snowflake => Ok(Self::build_snowflake(field, type_ops)),\n            Bigquery => Ok(Self::build_bigquery(field, type_ops)),\n            Databricks | Spark => Ok(Self::build_databricks(field, type_ops)),\n            Redshift => Ok(Self::build_redshift(field, type_ops)),\n            Postgres | Salesforce | DuckDB | LakeCompute => {\n                Ok(Self::build_postgres_like(field, type_ops))\n            }\n            Fabric => Ok(Self::build_fabric(field, type_ops)),\n            ClickHouse => Self::build_clickhouse(field, type_ops),\n            Exasol => Ok(Self::build_exasol(field, type_ops)),\n            Starburst => todo!(\"Starburst\"),\n            Athena => todo!(\"Athena\"),\n            Trino => todo!(\"Trino\"),\n            Dremio => todo!(\"Dremio\"),\n            Oracle => todo!(\"Oracle\"),\n            Datafusion => todo!(\"Datafusion\"),\n        }\n    }\n\n    pub fn build_from_parts(\n        &self,\n        name: String,\n        dtype: String,\n        char_size: Option<u32>,\n        numeric_precision: Option<u64>,\n        numeric_scale: Option<u64>,\n        mode: Option<BigqueryColumnMode>,\n    ) -> Column {\n        use AdapterType::*;\n        match self.adapter_type {\n            Postgres => Column::new(\n                Postgres,","sourceCodeStart":21,"sourceCodeEnd":57,"githubUrl":"https://github.com/dbt-labs/dbt-core/blob/0267ce9170576975b76b64ce856b2e5848e96617/crates/dbt-adapter/src/column/column_builder.rs#L21-L57","documentation":"A `todo!()` panic in `ColumnBuilder::build` (column_builder.rs:39) for the Dremio adapter. The dispatch table lacks a Dremio column-builder implementation, so converting query/Arrow schema into Column metadata with a Dremio adapter panics with the message 'Dremio'.","triggerScenarios":"Calling ColumnBuilder::build via schema_to_columns, get_column_schema_from_query, or update_node_columns while the adapter is Dremio — e.g. catalog generation or result introspection on a Dremio connection.","commonSituations":"First run of docs generate or column-aware features against a Dremio adapter profile; also in adapter-coverage tests iterating over all AdapterType variants.","solutions":["Use a supported adapter until Dremio column building lands.","Implement the Dremio arm in column_builder.rs:39 (Dremio types are largely ANSI/Postgres-like; `build_postgres_like` is a starting point).","Map the arm to a clean error instead of a panic so pipelines can fail gracefully."],"exampleFix":"// before\nDremio => todo!(\"Dremio\"),\n// after\nDremio => Ok(Self::build_postgres_like(field, type_ops)),","handlingStrategy":"type-guard","validationCode":"if adapter == AdapterType::Dremio {\n    return Err(anyhow!(\"Dremio column building is not implemented yet\"));\n}","typeGuard":"fn build_supported(t: AdapterType) -> bool {\n    matches!(t, Postgres | Salesforce | DuckDB | LakeCompute | Fabric | ClickHouse | Exasol)\n}","tryCatchPattern":"let res = std::panic::catch_unwind(AssertUnwindSafe(|| builder.build(field, type_ops)));\nif let Err(_) = res { return Err(anyhow!(\"unsupported adapter for column building\")); }","preventionTips":["Gate Dremio features on adapter support before running schema introspection","Contribute a Dremio arm (ANSI types map well to build_postgres_like)","Run a variant-sweep test for ColumnBuilder::build when adding adapters","Replace todo!() arms with typed errors as first hardening step"],"tags":["rust","adapter","todo-panic","dremio","column-builder"],"backgroundTag":"method-not-implemented","analyzedSha":"0267ce9170576975b76b64ce856b2e5848e96617","analyzedAt":"2026-09-07T21:53:39.732Z","contentChangedAt":"2026-09-07T21:53:39.732Z","schemaVersion":2},"datasetVersion":"2026-09-14T16:17:12.679Z"}