Skip to content

Commit

Permalink
hard copy existing mat
Browse files Browse the repository at this point in the history
  • Loading branch information
dataders committed Nov 6, 2021
1 parent 9b63581 commit cb9e4df
Showing 1 changed file with 28 additions and 27 deletions.
55 changes: 28 additions & 27 deletions dbt/include/sqlserver/macros/materializations/test.sql
Original file line number Diff line number Diff line change
Expand Up @@ -13,36 +13,37 @@

{%- materialization test, adapter='sqlserver' -%}

{% set relations = [] %}

{# make temp table unless user wants to store results #}
{% if not should_store_failures() %}
{% set rel_name = '#' ~ identifier %}
{% else %}
{% set rel_name = identifier %}
{% endif %}

{% set identifier = model['alias'] %}
{% set old_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) %}
{% set target_relation = api.Relation.create(
identifier= rel_name, schema=schema, database=database, type='table') -%} %}

{% if old_relation %}
{% do adapter.drop_relation(old_relation) %}
{% endif %}
{% set relations = [] %}

{% if should_store_failures() %}

{% set identifier = model['alias'] %}
{% set old_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) %}
{% set target_relation = api.Relation.create(
identifier=identifier, schema=schema, database=database, type='table') -%} %}

{% if old_relation %}
{% do adapter.drop_relation(old_relation) %}
{% endif %}

{% call statement(auto_begin=True) %}
{{ create_table_as(False, target_relation, sql) }}
{% endcall %}

{% do relations.append(target_relation) %}

{% call statement(auto_begin=True) %}
{{ create_table_as(False, target_relation, sql) }}
{% endcall %}
{% set main_sql %}
select *
from {{ target_relation }}
{% endset %}

{{ adapter.commit() }}

{% do relations.append(target_relation) %}
{% else %}

{% set main_sql %}
select *
from {{ target_relation }}
{% endset %}
{% set main_sql = sql %}

{{ adapter.commit() }}
{% endif %}

{% set limit = config.get('limit') %}
{% set fail_calc = config.get('fail_calc') %}
Expand All @@ -54,7 +55,7 @@
{{ get_test_sql(main_sql, fail_calc, warn_if, error_if, limit)}}

{%- endcall %}

{{ return({'relations': relations}) }}

{%- endmaterialization -%}

0 comments on commit cb9e4df

Please sign in to comment.