From ab6d4d7de50b2665ca87dc7d5b67798bf776b15b Mon Sep 17 00:00:00 2001 From: Drew Banin Date: Mon, 11 Feb 2019 13:04:58 -0500 Subject: [PATCH] use frozenset for adapter specific configs, add bq configs --- core/dbt/adapters/base/impl.py | 4 +++- plugins/bigquery/dbt/adapters/bigquery/impl.py | 2 ++ plugins/redshift/dbt/adapters/redshift/impl.py | 2 +- plugins/snowflake/dbt/adapters/snowflake/impl.py | 2 +- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/core/dbt/adapters/base/impl.py b/core/dbt/adapters/base/impl.py index 08b0127cc40..8f2c177175b 100644 --- a/core/dbt/adapters/base/impl.py +++ b/core/dbt/adapters/base/impl.py @@ -110,7 +110,9 @@ class BaseAdapter(object): # This should be an implementation of BaseConnectionManager ConnectionManager = None - AdapterSpecificConfigs = set() + # A set of clobber config fields accepted by this adapter + # for use in materializations + AdapterSpecificConfigs = frozenset() def __init__(self, config): self.config = config diff --git a/plugins/bigquery/dbt/adapters/bigquery/impl.py b/plugins/bigquery/dbt/adapters/bigquery/impl.py index dab04bff37a..e4e7778a9cb 100644 --- a/plugins/bigquery/dbt/adapters/bigquery/impl.py +++ b/plugins/bigquery/dbt/adapters/bigquery/impl.py @@ -51,6 +51,8 @@ class BigQueryAdapter(BaseAdapter): Column = dbt.schema.BigQueryColumn ConnectionManager = BigQueryConnectionManager + AdapterSpecificConfigs = frozenset({"cluster_by", "partition_by"}) + ### # Implementations of abstract methods ### diff --git a/plugins/redshift/dbt/adapters/redshift/impl.py b/plugins/redshift/dbt/adapters/redshift/impl.py index 867deb17165..08f0dcff0e4 100644 --- a/plugins/redshift/dbt/adapters/redshift/impl.py +++ b/plugins/redshift/dbt/adapters/redshift/impl.py @@ -7,7 +7,7 @@ class RedshiftAdapter(PostgresAdapter): ConnectionManager = RedshiftConnectionManager - AdapterSpecificConfigs = {"sort_type", "dist", "sort", "bind"} + AdapterSpecificConfigs = frozenset({"sort_type", "dist", "sort", "bind"}) @classmethod def date_function(cls): diff --git a/plugins/snowflake/dbt/adapters/snowflake/impl.py b/plugins/snowflake/dbt/adapters/snowflake/impl.py index 5a51107af67..00da5026482 100644 --- a/plugins/snowflake/dbt/adapters/snowflake/impl.py +++ b/plugins/snowflake/dbt/adapters/snowflake/impl.py @@ -14,7 +14,7 @@ class SnowflakeAdapter(SQLAdapter): Relation = SnowflakeRelation ConnectionManager = SnowflakeConnectionManager - AdapterSpecificConfigs = {"transient"} + AdapterSpecificConfigs = frozenset({"transient"}) @classmethod def date_function(cls):