Is this a new bug in dbt v2.x compared to the latest version of dbt 1.x?
Current Behavior
When using --jinja-render-mode symbolic (introduced in 2.0.0-preview.209), macros that call warehouse-dependent adapter methods (e.g. adapter.get_columns_in_relation(), adapter.get_relation()) and then pass the result to quote() fail with:
JinjaError (dbt1501): argument 'identifier' to quote() has incompatible type IntrospectiveValue; value is not a string
The IntrospectiveValue hole-punch type is not being propagated transparently through quote() — it raises an error instead of returning another hole.
Expected Behavior
quote() should propagate IntrospectiveValue transparently (returning another hole/IntrospectiveValue), consistent with how symbolic mode handles other tainted values downstream.
Steps To Reproduce
- Use a macro that calls an adapter method and passes the result to
quote(), e.g. dbt_utils.union_relations() or any macro calling adapter.get_columns_in_relation()
- Run
dbt lint --jinja-render-mode symbolic
Relevant log output
Environment
- OS: dbt Studio
- CPU: (x86 or ARM)
- dbt distribution and version: dbt-fusion 2.0.0-preview.209
Which database adapter are you using?
snowflake
Is this a discrepancy vs. dbt 1.x?
Additional Context

Is this a new bug in dbt v2.x compared to the latest version of dbt 1.x?
Current Behavior
When using
--jinja-render-mode symbolic(introduced in 2.0.0-preview.209), macros that call warehouse-dependent adapter methods (e.g.adapter.get_columns_in_relation(),adapter.get_relation()) and then pass the result toquote()fail with:JinjaError (dbt1501): argument 'identifier' to quote() has incompatible type IntrospectiveValue; value is not a stringThe
IntrospectiveValuehole-punch type is not being propagated transparently throughquote()— it raises an error instead of returning another hole.Expected Behavior
quote()should propagateIntrospectiveValuetransparently (returning another hole/IntrospectiveValue), consistent with how symbolic mode handles other tainted values downstream.Steps To Reproduce
quote(), e.g.dbt_utils.union_relations()or any macro callingadapter.get_columns_in_relation()dbt lint --jinja-render-mode symbolicRelevant log output
Environment
Which database adapter are you using?
snowflake
Is this a discrepancy vs. dbt 1.x?
Additional Context