The problem I’m having
We are wanting to switch some of our longer running dbt queries to dynamic tables, when we try to run any model we are getting this error.
Compilation Error in model {model_name}
SnowflakeDynamicTableConfig.init() missing 6 required positional arguments: ‘name’, ‘schema_name’, ‘database_name’, ‘query’, ‘target_lag’, and ‘snowflake_warehouse’
in macro dynamic_table_get_build_sql (macros\materializations\dynamic_table\materialization.sql)
called by macro materialization_dynamic_table_snowflake (macros\materializations\dynamic_table\materialization.sql)
The context of why I’m trying to do this
To leverage the power of dynamic tables.
What I’ve already tried
- Updating both dbt-core and dbt-snowflake from 1.6.1 to 1.6.3
- Defining configuration on dbt_project.yml and on the model itself
- Updating python from 3.10 to 3.11.5
- Running dbt in virtual env and without virtual env
Some example code or error messages
Here is how i have my configuration set on the model itself.
{{ config(
materialized='dynamic_table'
, snowflake_warehouse = 'DBT_WH'
, database='my_database'
, target_lag = 'DOWNSTREAM'
, schema='sandbox'
)}}
Envrionment
Windows 10
Python 3.11.5
dbt-core 1.6.3
dbt-snowflake 1.6.3