Skip to content

Commit 744f714

Browse files
authored
Merge pull request #420 from sp-tkerlavage/fix/fix-upload-test-executions-timing-and-snowflake
Fix get_test_executions_dml_sql timing
2 parents 507a779 + a0b0417 commit 744f714

File tree

1 file changed

+57
-4
lines changed

1 file changed

+57
-4
lines changed

macros/upload_individual_datasets/upload_test_executions.sql

Lines changed: 57 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@
3535
'{{ test.thread_id }}', {# thread_id #}
3636
'{{ test.status }}', {# status #}
3737

38-
{% set compile_started_at = (model.timing | selectattr("name", "eq", "compile") | first | default({}))["started_at"] %}
38+
{% set compile_started_at = (test.timing | selectattr("name", "eq", "compile") | first | default({}))["started_at"] %}
3939
{% if compile_started_at %}'{{ compile_started_at }}'{% else %}null{% endif %}, {# compile_started_at #}
40-
{% set query_completed_at = (model.timing | selectattr("name", "eq", "execute") | first | default({}))["completed_at"] %}
40+
{% set query_completed_at = (test.timing | selectattr("name", "eq", "execute") | first | default({}))["completed_at"] %}
4141
{% if query_completed_at %}'{{ query_completed_at }}'{% else %}null{% endif %}, {# query_completed_at #}
4242

4343
{{ test.execution_time }}, {# total_node_runtime #}
@@ -73,9 +73,9 @@
7373
'{{ test.thread_id }}', {# thread_id #}
7474
'{{ test.status }}', {# status #}
7575

76-
{% set compile_started_at = (model.timing | selectattr("name", "eq", "compile") | first | default({}))["started_at"] %}
76+
{% set compile_started_at = (test.timing | selectattr("name", "eq", "compile") | first | default({}))["started_at"] %}
7777
{% if compile_started_at %}'{{ compile_started_at }}'{% else %}null{% endif %}, {# compile_started_at #}
78-
{% set query_completed_at = (model.timing | selectattr("name", "eq", "execute") | first | default({}))["completed_at"] %}
78+
{% set query_completed_at = (test.timing | selectattr("name", "eq", "execute") | first | default({}))["completed_at"] %}
7979
{% if query_completed_at %}'{{ query_completed_at }}'{% else %}null{% endif %}, {# query_completed_at #}
8080

8181
{{ test.execution_time }}, {# total_node_runtime #}
@@ -148,3 +148,56 @@
148148
{{ return("") }}
149149
{% endif %}
150150
{% endmacro -%}
151+
152+
{% macro snowflake__get_test_executions_dml_sql(tests) -%}
153+
{% if tests != [] %}
154+
{% set test_execution_values %}
155+
select
156+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(1) }},
157+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(2) }},
158+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(3) }},
159+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(4) }},
160+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(5) }},
161+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(6) }},
162+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(7) }},
163+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(8) }},
164+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(9) }},
165+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(10) }},
166+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(11) }},
167+
{{ adapter.dispatch('column_identifier', 'dbt_artifacts')(12) }},
168+
{{ adapter.dispatch('parse_json', 'dbt_artifacts')(adapter.dispatch('column_identifier', 'dbt_artifacts')(13)) }}
169+
from values
170+
{% for test in tests -%}
171+
(
172+
'{{ invocation_id }}', {# command_invocation_id #}
173+
'{{ test.node.unique_id }}', {# node_id #}
174+
'{{ run_started_at }}', {# run_started_at #}
175+
176+
{% set config_full_refresh = test.node.config.full_refresh %}
177+
{% if config_full_refresh is none %}
178+
{% set config_full_refresh = flags.FULL_REFRESH %}
179+
{% endif %}
180+
'{{ config_full_refresh }}', {# was_full_refresh #}
181+
182+
'{{ test.thread_id }}', {# thread_id #}
183+
'{{ test.status }}', {# status #}
184+
185+
{% set compile_started_at = (test.timing | selectattr("name", "eq", "compile") | first | default({}))["started_at"] %}
186+
{% if compile_started_at %}'{{ compile_started_at }}'{% else %}null{% endif %}, {# compile_started_at #}
187+
{% set query_completed_at = (test.timing | selectattr("name", "eq", "execute") | first | default({}))["completed_at"] %}
188+
{% if query_completed_at %}'{{ query_completed_at }}'{% else %}null{% endif %}, {# query_completed_at #}
189+
190+
{{ test.execution_time }}, {# total_node_runtime #}
191+
try_cast('{{ test.adapter_response.rows_affected }}' as int), {# rows_affected #}
192+
{{ 'null' if test.failures is none else test.failures }}, {# failures #}
193+
'{{ test.message | replace("\\", "\\\\") | replace("'", "\\'") | replace('"', '\\"') }}', {# message #}
194+
'{{ tojson(test.adapter_response) | replace("\\", "\\\\") | replace("'", "\\'") | replace('"', '\\"') }}' {# adapter_response #}
195+
)
196+
{%- if not loop.last %},{%- endif %}
197+
{%- endfor %}
198+
{% endset %}
199+
{{ test_execution_values }}
200+
{% else %}
201+
{{ return("") }}
202+
{% endif %}
203+
{% endmacro -%}

0 commit comments

Comments
 (0)