From a0e68d2adf4d930396d2c12d28c55813746235cb Mon Sep 17 00:00:00 2001 From: pankajastro Date: Tue, 10 Dec 2024 00:20:47 +0530 Subject: [PATCH] Update tests --- .pre-commit-config.yaml | 2 +- tests/dbt/test_graph.py | 1 - tests/sample/manifest_source.json | 13885 +++++++++++++++++++++++----- 3 files changed, 11614 insertions(+), 2274 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index fb1ac55aa..2d95a5749 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -36,7 +36,7 @@ repos: types: [text] args: - --exclude-file=tests/sample/manifest_model_version.json - - --skip=**/manifest.json,**.min.js + - --skip=**/manifest.json,**.min.js,**/manifest_source.json - -L connexion,aci - repo: https://github.com/pre-commit/pygrep-hooks rev: v1.10.0 diff --git a/tests/dbt/test_graph.py b/tests/dbt/test_graph.py index dd4285bef..f5f7441f4 100644 --- a/tests/dbt/test_graph.py +++ b/tests/dbt/test_graph.py @@ -1393,7 +1393,6 @@ def test_load_via_dbt_ls_with_project_config_vars(): dbt_graph = DbtGraph( project=ProjectConfig( dbt_project_path=DBT_PROJECTS_ROOT_DIR / project_name, - dbt_vars={"animation_alias": "top_5_animated_movies"}, ), render_config=RenderConfig( dbt_project_path=DBT_PROJECTS_ROOT_DIR / project_name, diff --git a/tests/sample/manifest_source.json b/tests/sample/manifest_source.json index 67f57035e..7004eb070 100644 --- a/tests/sample/manifest_source.json +++ b/tests/sample/manifest_source.json @@ -1,17 +1,92 @@ { "child_map": { - "exposure.simple.weekly_metrics": [], - "model.simple.movies_ratings_simplified": [ - "model.simple.top_animations" + "exposure.jaffle_shop.weekly_metrics": [], + "model.jaffle_shop.customers": [ + "exposure.jaffle_shop.weekly_metrics", + "test.jaffle_shop.not_null_customers_customer_id.5c9bf9911d", + "test.jaffle_shop.relationships_orders_customer_id__customer_id__ref_customers_.c6ec7f58f2", + "test.jaffle_shop.unique_customers_customer_id.c5af1ff4b1" ], - "model.simple.top_animations": [ - "exposure.simple.weekly_metrics" + "model.jaffle_shop.orders": [ + "test.jaffle_shop.accepted_values_orders_status__placed__shipped__completed__return_pending__returned.be6b5b5ec3", + "test.jaffle_shop.not_null_orders_amount.106140f9fd", + "test.jaffle_shop.not_null_orders_bank_transfer_amount.7743500c49", + "test.jaffle_shop.not_null_orders_coupon_amount.ab90c90625", + "test.jaffle_shop.not_null_orders_credit_card_amount.d3ca593b59", + "test.jaffle_shop.not_null_orders_customer_id.c5f02694af", + "test.jaffle_shop.not_null_orders_gift_card_amount.413a0d2d7a", + "test.jaffle_shop.not_null_orders_order_id.cf6c17daed", + "test.jaffle_shop.relationships_orders_customer_id__customer_id__ref_customers_.c6ec7f58f2", + "test.jaffle_shop.unique_orders_order_id.fed79b3a6e" ], - "source.simple.main.movies_ratings": [ - "model.simple.movies_ratings_simplified", - "test.simple.source_not_null_imdb_movies_ratings_X.e684bf90f4" + "model.jaffle_shop.stg_customers": [ + "model.jaffle_shop.customers", + "test.jaffle_shop.not_null_stg_customers_customer_id.e2cfb1f9aa", + "test.jaffle_shop.unique_stg_customers_customer_id.c7614daada" ], - "test.simple.source_not_null_imdb_movies_ratings_X.e684bf90f4": [] + "model.jaffle_shop.stg_orders": [ + "model.jaffle_shop.customers", + "model.jaffle_shop.orders", + "test.jaffle_shop.accepted_values_stg_orders_status__placed__shipped__completed__return_pending__returned.080fb20aad", + "test.jaffle_shop.not_null_stg_orders_order_id.81cfe2fe64", + "test.jaffle_shop.unique_stg_orders_order_id.e3b841c71a" + ], + "model.jaffle_shop.stg_payments": [ + "model.jaffle_shop.customers", + "model.jaffle_shop.orders", + "test.jaffle_shop.accepted_values_stg_payments_payment_method__credit_card__coupon__bank_transfer__gift_card.3c3820f278", + "test.jaffle_shop.not_null_stg_payments_payment_id.c19cc50075", + "test.jaffle_shop.unique_stg_payments_payment_id.3744510712" + ], + "model.jaffle_shop.\uff4d\uff55\uff4c\uff54\uff49\uff42\uff59\uff54\uff45": [], + "seed.jaffle_shop.raw_customers": [ + "model.jaffle_shop.stg_customers", + "model.jaffle_shop.stg_orders", + "model.jaffle_shop.stg_payments" + ], + "seed.jaffle_shop.raw_orders": [], + "seed.jaffle_shop.raw_payments": [], + "source.jaffle_shop.postgres_db.raw_customers": [ + "model.jaffle_shop.stg_customers", + "test.jaffle_shop.source_not_null_postgres_db_raw_customers_id.de3e9fff76", + "test.jaffle_shop.source_unique_postgres_db_raw_customers_id.6e5ad1d707" + ], + "source.jaffle_shop.postgres_db.raw_orders": [ + "model.jaffle_shop.stg_orders", + "test.jaffle_shop.source_not_null_postgres_db_raw_orders_id.0dc5a4d454", + "test.jaffle_shop.source_unique_postgres_db_raw_orders_id.0bf2272247" + ], + "source.jaffle_shop.postgres_db.raw_payments": [ + "model.jaffle_shop.stg_payments", + "test.jaffle_shop.source_not_null_postgres_db_raw_payments_id.15f4f169e7", + "test.jaffle_shop.source_unique_postgres_db_raw_payments_id.a4bd02775f" + ], + "test.jaffle_shop.accepted_values_orders_status__placed__shipped__completed__return_pending__returned.be6b5b5ec3": [], + "test.jaffle_shop.accepted_values_stg_orders_status__placed__shipped__completed__return_pending__returned.080fb20aad": [], + "test.jaffle_shop.accepted_values_stg_payments_payment_method__credit_card__coupon__bank_transfer__gift_card.3c3820f278": [], + "test.jaffle_shop.not_null_customers_customer_id.5c9bf9911d": [], + "test.jaffle_shop.not_null_orders_amount.106140f9fd": [], + "test.jaffle_shop.not_null_orders_bank_transfer_amount.7743500c49": [], + "test.jaffle_shop.not_null_orders_coupon_amount.ab90c90625": [], + "test.jaffle_shop.not_null_orders_credit_card_amount.d3ca593b59": [], + "test.jaffle_shop.not_null_orders_customer_id.c5f02694af": [], + "test.jaffle_shop.not_null_orders_gift_card_amount.413a0d2d7a": [], + "test.jaffle_shop.not_null_orders_order_id.cf6c17daed": [], + "test.jaffle_shop.not_null_stg_customers_customer_id.e2cfb1f9aa": [], + "test.jaffle_shop.not_null_stg_orders_order_id.81cfe2fe64": [], + "test.jaffle_shop.not_null_stg_payments_payment_id.c19cc50075": [], + "test.jaffle_shop.relationships_orders_customer_id__customer_id__ref_customers_.c6ec7f58f2": [], + "test.jaffle_shop.source_not_null_postgres_db_raw_customers_id.de3e9fff76": [], + "test.jaffle_shop.source_not_null_postgres_db_raw_orders_id.0dc5a4d454": [], + "test.jaffle_shop.source_not_null_postgres_db_raw_payments_id.15f4f169e7": [], + "test.jaffle_shop.source_unique_postgres_db_raw_customers_id.6e5ad1d707": [], + "test.jaffle_shop.source_unique_postgres_db_raw_orders_id.0bf2272247": [], + "test.jaffle_shop.source_unique_postgres_db_raw_payments_id.a4bd02775f": [], + "test.jaffle_shop.unique_customers_customer_id.c5af1ff4b1": [], + "test.jaffle_shop.unique_orders_order_id.fed79b3a6e": [], + "test.jaffle_shop.unique_stg_customers_customer_id.c7614daada": [], + "test.jaffle_shop.unique_stg_orders_order_id.e3b841c71a": [], + "test.jaffle_shop.unique_stg_payments_payment_id.3744510712": [] }, "disabled": {}, "docs": { @@ -23,23 +98,41 @@ "path": "overview.md", "resource_type": "doc", "unique_id": "doc.dbt.__overview__" + }, + "doc.jaffle_shop.__overview__": { + "block_contents": "## Data Documentation for Jaffle Shop\n\n`jaffle_shop` is a fictional ecommerce store.\n\nThis [dbt](https://www.getdbt.com/) project is for testing out code.\n\nThe source code can be found [here](https://github.com/clrcrl/jaffle_shop).", + "name": "__overview__", + "original_file_path": "models/overview.md", + "package_name": "jaffle_shop", + "path": "overview.md", + "resource_type": "doc", + "unique_id": "doc.jaffle_shop.__overview__" + }, + "doc.jaffle_shop.orders_status": { + "block_contents": "Orders can be one of the following statuses:\n\n| status | description |\n|----------------|------------------------------------------------------------------------------------------------------------------------|\n| placed | The order has been placed but has not yet left the warehouse |\n| shipped | The order has ben shipped to the customer and is currently in transit |\n| completed | The order has been received by the customer |\n| return_pending | The customer has indicated that they would like to return the order, but it has not yet been received at the warehouse |\n| returned | The order has been returned by the customer and received at the warehouse |", + "name": "orders_status", + "original_file_path": "models/docs.md", + "package_name": "jaffle_shop", + "path": "docs.md", + "resource_type": "doc", + "unique_id": "doc.jaffle_shop.orders_status" } }, "exposures": { - "exposure.simple.weekly_metrics": { + "exposure.jaffle_shop.weekly_metrics": { "config": { "enabled": true }, - "created_at": 1697205180.995924, + "created_at": 1733768712.78008, "depends_on": { "macros": [], "nodes": [ - "model.simple.top_animations" + "model.jaffle_shop.customers" ] }, "description": "", "fqn": [ - "simple", + "jaffle_shop", "weekly_metrics" ], "label": "Jaffle shop metrics", @@ -52,26 +145,30 @@ "email": "team@astronomer-cosmos.org", "name": "Cosmos Team" }, - "package_name": "simple", + "package_name": "jaffle_shop", "path": "exposures.yml", "refs": [ - [ - "top_animations" - ] + { + "name": "customers", + "package": null, + "version": null + } ], "resource_type": "exposure", "sources": [], "tags": [], "type": "dashboard", - "unique_id": "exposure.simple.weekly_metrics", + "unique_id": "exposure.jaffle_shop.weekly_metrics", "unrendered_config": {}, "url": null } }, + "group_map": {}, + "groups": {}, "macros": { "macro.dbt._split_part_negative": { "arguments": [], - "created_at": 1696859933.423734, + "created_at": 1733768712.099639, "depends_on": { "macros": [] }, @@ -80,7 +177,7 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro _split_part_negative(string_text, delimiter_text, part_number) %}\n\n split_part(\n {{ string_text }},\n {{ delimiter_text }},\n length({{ string_text }})\n - length(\n replace({{ string_text }}, {{ delimiter_text }}, '')\n ) + 2 {{ part_number }}\n )\n\n{% endmacro %}", + "macro_sql": "{% macro _split_part_negative(string_text, delimiter_text, part_number) %}\n\n split_part(\n {{ string_text }},\n {{ delimiter_text }},\n length({{ string_text }})\n - length(\n replace({{ string_text }}, {{ delimiter_text }}, '')\n ) + 2 + {{ part_number }}\n )\n\n{% endmacro %}", "meta": {}, "name": "_split_part_negative", "original_file_path": "macros/utils/split_part.sql", @@ -93,7 +190,7 @@ }, "macro.dbt.after_commit": { "arguments": [], - "created_at": 1696859933.348661, + "created_at": 1733768711.9226398, "depends_on": { "macros": [ "macro.dbt.make_hook_config" @@ -117,10 +214,10 @@ }, "macro.dbt.alter_column_comment": { "arguments": [], - "created_at": 1696859933.438276, + "created_at": 1733768712.119901, "depends_on": { "macros": [ - "macro.dbt.default__alter_column_comment" + "macro.dbt_postgres.postgres__alter_column_comment" ] }, "description": "", @@ -141,7 +238,7 @@ }, "macro.dbt.alter_column_type": { "arguments": [], - "created_at": 1696859933.4439082, + "created_at": 1733768712.133354, "depends_on": { "macros": [ "macro.dbt.default__alter_column_type" @@ -165,7 +262,7 @@ }, "macro.dbt.alter_relation_add_remove_columns": { "arguments": [], - "created_at": 1696859933.444509, + "created_at": 1733768712.134187, "depends_on": { "macros": [ "macro.dbt.default__alter_relation_add_remove_columns" @@ -189,10 +286,10 @@ }, "macro.dbt.alter_relation_comment": { "arguments": [], - "created_at": 1696859933.438538, + "created_at": 1733768712.120249, "depends_on": { "macros": [ - "macro.dbt.default__alter_relation_comment" + "macro.dbt_postgres.postgres__alter_relation_comment" ] }, "description": "", @@ -213,10 +310,10 @@ }, "macro.dbt.any_value": { "arguments": [], - "created_at": 1696859933.419189, + "created_at": 1733768712.093523, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__any_value" + "macro.dbt_postgres.postgres__any_value" ] }, "description": "", @@ -237,7 +334,7 @@ }, "macro.dbt.apply_grants": { "arguments": [], - "created_at": 1696859933.436969, + "created_at": 1733768712.117336, "depends_on": { "macros": [ "macro.dbt.default__apply_grants" @@ -261,7 +358,7 @@ }, "macro.dbt.array_append": { "arguments": [], - "created_at": 1696859933.42466, + "created_at": 1733768712.100876, "depends_on": { "macros": [ "macro.dbt.default__array_append" @@ -285,7 +382,7 @@ }, "macro.dbt.array_concat": { "arguments": [], - "created_at": 1696859933.4221408, + "created_at": 1733768712.09752, "depends_on": { "macros": [ "macro.dbt.default__array_concat" @@ -309,7 +406,7 @@ }, "macro.dbt.array_construct": { "arguments": [], - "created_at": 1696859933.424287, + "created_at": 1733768712.100371, "depends_on": { "macros": [ "macro.dbt.default__array_construct" @@ -331,9 +428,35 @@ "supported_languages": null, "unique_id": "macro.dbt.array_construct" }, + "macro.dbt.assert_columns_equivalent": { + "arguments": [], + "created_at": 1733768712.065886, + "depends_on": { + "macros": [ + "macro.dbt.get_column_schema_from_query", + "macro.dbt.get_empty_schema_sql", + "macro.dbt.format_columns" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro assert_columns_equivalent(sql) %}\n\n {#-- First ensure the user has defined 'columns' in yaml specification --#}\n {%- set user_defined_columns = model['columns'] -%}\n {%- if not user_defined_columns -%}\n {{ exceptions.raise_contract_error([], []) }}\n {%- endif -%}\n\n {#-- Obtain the column schema provided by sql file. #}\n {%- set sql_file_provided_columns = get_column_schema_from_query(sql, config.get('sql_header', none)) -%}\n {#--Obtain the column schema provided by the schema file by generating an 'empty schema' query from the model's columns. #}\n {%- set schema_file_provided_columns = get_column_schema_from_query(get_empty_schema_sql(user_defined_columns)) -%}\n\n {#-- create dictionaries with name and formatted data type and strings for exception #}\n {%- set sql_columns = format_columns(sql_file_provided_columns) -%}\n {%- set yaml_columns = format_columns(schema_file_provided_columns) -%}\n\n {%- if sql_columns|length != yaml_columns|length -%}\n {%- do exceptions.raise_contract_error(yaml_columns, sql_columns) -%}\n {%- endif -%}\n\n {%- for sql_col in sql_columns -%}\n {%- set yaml_col = [] -%}\n {%- for this_col in yaml_columns -%}\n {%- if this_col['name'] == sql_col['name'] -%}\n {%- do yaml_col.append(this_col) -%}\n {%- break -%}\n {%- endif -%}\n {%- endfor -%}\n {%- if not yaml_col -%}\n {#-- Column with name not found in yaml #}\n {%- do exceptions.raise_contract_error(yaml_columns, sql_columns) -%}\n {%- endif -%}\n {%- if sql_col['formatted'] != yaml_col[0]['formatted'] -%}\n {#-- Column data types don't match #}\n {%- do exceptions.raise_contract_error(yaml_columns, sql_columns) -%}\n {%- endif -%}\n {%- endfor -%}\n\n{% endmacro %}", + "meta": {}, + "name": "assert_columns_equivalent", + "original_file_path": "macros/relations/column/columns_spec_ddl.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/relations/column/columns_spec_ddl.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.assert_columns_equivalent" + }, "macro.dbt.before_begin": { "arguments": [], - "created_at": 1696859933.348465, + "created_at": 1733768711.9220648, "depends_on": { "macros": [ "macro.dbt.make_hook_config" @@ -357,10 +480,10 @@ }, "macro.dbt.bool_or": { "arguments": [], - "created_at": 1696859933.422406, + "created_at": 1733768712.0979562, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__bool_or" + "macro.dbt.default__bool_or" ] }, "description": "", @@ -381,7 +504,7 @@ }, "macro.dbt.build_config_dict": { "arguments": [], - "created_at": 1696859933.446951, + "created_at": 1733768712.14355, "depends_on": { "macros": [] }, @@ -390,7 +513,7 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro build_config_dict(model) %}\n {%- set config_dict = {} -%}\n {% set config_dbt_used = zip(model.config.config_keys_used, model.config.config_keys_defaults) | list %}\n {%- for key, default in config_dbt_used -%}\n {# weird type testing with enum, would be much easier to write this logic in Python! #}\n {%- if key == 'language' -%}\n {%- set value = 'python' -%}\n {%- endif -%}\n {%- set value = model.config.get(key, default) -%}\n {%- do config_dict.update({key: value}) -%}\n {%- endfor -%}\nconfig_dict = {{ config_dict }}\n{% endmacro %}", + "macro_sql": "{% macro build_config_dict(model) %}\n {%- set config_dict = {} -%}\n {% set config_dbt_used = zip(model.config.config_keys_used, model.config.config_keys_defaults) | list %}\n {%- for key, default in config_dbt_used -%}\n {# weird type testing with enum, would be much easier to write this logic in Python! #}\n {%- if key == \"language\" -%}\n {%- set value = \"python\" -%}\n {%- endif -%}\n {%- set value = model.config.get(key, default) -%}\n {%- do config_dict.update({key: value}) -%}\n {%- endfor -%}\nconfig_dict = {{ config_dict }}\n{% endmacro %}", "meta": {}, "name": "build_config_dict", "original_file_path": "macros/python_model/python.sql", @@ -403,16 +526,18 @@ }, "macro.dbt.build_ref_function": { "arguments": [], - "created_at": 1696859933.446188, + "created_at": 1733768712.142638, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.resolve_model_name" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro build_ref_function(model) %}\n\n {%- set ref_dict = {} -%}\n {%- for _ref in model.refs -%}\n {%- set resolved = ref(*_ref) -%}\n {%- do ref_dict.update({_ref | join(\".\"): resolved.quote(database=False, schema=False, identifier=False) | string}) -%}\n {%- endfor -%}\n\ndef ref(*args,dbt_load_df_function):\n refs = {{ ref_dict | tojson }}\n key = \".\".join(args)\n return dbt_load_df_function(refs[key])\n\n{% endmacro %}", + "macro_sql": "{% macro build_ref_function(model) %}\n\n {%- set ref_dict = {} -%}\n {%- for _ref in model.refs -%}\n {% set _ref_args = [_ref.get('package'), _ref['name']] if _ref.get('package') else [_ref['name'],] %}\n {%- set resolved = ref(*_ref_args, v=_ref.get('version')) -%}\n {%- if _ref.get('version') -%}\n {% do _ref_args.extend([\"v\" ~ _ref['version']]) %}\n {%- endif -%}\n {%- do ref_dict.update({_ref_args | join('.'): resolve_model_name(resolved)}) -%}\n {%- endfor -%}\n\ndef ref(*args, **kwargs):\n refs = {{ ref_dict | tojson }}\n key = '.'.join(args)\n version = kwargs.get(\"v\") or kwargs.get(\"version\")\n if version:\n key += f\".v{version}\"\n dbt_load_df_function = kwargs.get(\"dbt_load_df_function\")\n return dbt_load_df_function(refs[key])\n\n{% endmacro %}", "meta": {}, "name": "build_ref_function", "original_file_path": "macros/python_model/python.sql", @@ -425,7 +550,7 @@ }, "macro.dbt.build_snapshot_staging_table": { "arguments": [], - "created_at": 1696859933.360894, + "created_at": 1733768711.9419231, "depends_on": { "macros": [ "macro.dbt.make_temp_relation", @@ -452,7 +577,7 @@ }, "macro.dbt.build_snapshot_table": { "arguments": [], - "created_at": 1696859933.360416, + "created_at": 1733768711.9411252, "depends_on": { "macros": [ "macro.dbt.default__build_snapshot_table" @@ -476,16 +601,18 @@ }, "macro.dbt.build_source_function": { "arguments": [], - "created_at": 1696859933.446528, + "created_at": 1733768712.143021, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.resolve_model_name" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro build_source_function(model) %}\n\n {%- set source_dict = {} -%}\n {%- for _source in model.sources -%}\n {%- set resolved = source(*_source) -%}\n {%- do source_dict.update({_source | join(\".\"): resolved.quote(database=False, schema=False, identifier=False) | string}) -%}\n {%- endfor -%}\n\ndef source(*args, dbt_load_df_function):\n sources = {{ source_dict | tojson }}\n key = \".\".join(args)\n return dbt_load_df_function(sources[key])\n\n{% endmacro %}", + "macro_sql": "{% macro build_source_function(model) %}\n\n {%- set source_dict = {} -%}\n {%- for _source in model.sources -%}\n {%- set resolved = source(*_source) -%}\n {%- do source_dict.update({_source | join('.'): resolve_model_name(resolved)}) -%}\n {%- endfor -%}\n\ndef source(*args, dbt_load_df_function):\n sources = {{ source_dict | tojson }}\n key = '.'.join(args)\n return dbt_load_df_function(sources[key])\n\n{% endmacro %}", "meta": {}, "name": "build_source_function", "original_file_path": "macros/python_model/python.sql", @@ -498,7 +625,7 @@ }, "macro.dbt.call_dcl_statements": { "arguments": [], - "created_at": 1696859933.436629, + "created_at": 1733768712.1169028, "depends_on": { "macros": [ "macro.dbt.default__call_dcl_statements" @@ -520,12 +647,60 @@ "supported_languages": null, "unique_id": "macro.dbt.call_dcl_statements" }, + "macro.dbt.can_clone_table": { + "arguments": [], + "created_at": 1733768712.000415, + "depends_on": { + "macros": [ + "macro.dbt.default__can_clone_table" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro can_clone_table() %}\n {{ return(adapter.dispatch('can_clone_table', 'dbt')()) }}\n{% endmacro %}", + "meta": {}, + "name": "can_clone_table", + "original_file_path": "macros/materializations/models/clone/can_clone_table.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/clone/can_clone_table.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.can_clone_table" + }, + "macro.dbt.cast": { + "arguments": [], + "created_at": 1733768712.0931609, + "depends_on": { + "macros": [ + "macro.dbt.default__cast" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro cast(field, type) %}\n {{ return(adapter.dispatch('cast', 'dbt') (field, type)) }}\n{% endmacro %}", + "meta": {}, + "name": "cast", + "original_file_path": "macros/utils/cast.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/cast.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.cast" + }, "macro.dbt.cast_bool_to_text": { "arguments": [], - "created_at": 1696859933.418902, + "created_at": 1733768712.092747, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__cast_bool_to_text" + "macro.dbt.default__cast_bool_to_text" ] }, "description": "", @@ -546,7 +721,7 @@ }, "macro.dbt.check_for_schema_changes": { "arguments": [], - "created_at": 1696859933.3894122, + "created_at": 1733768711.9982378, "depends_on": { "macros": [ "macro.dbt.diff_columns", @@ -571,10 +746,10 @@ }, "macro.dbt.check_schema_exists": { "arguments": [], - "created_at": 1696859933.441201, + "created_at": 1733768712.126227, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__check_schema_exists" + "macro.dbt_postgres.postgres__check_schema_exists" ] }, "description": "", @@ -593,9 +768,34 @@ "supported_languages": null, "unique_id": "macro.dbt.check_schema_exists" }, + "macro.dbt.check_time_data_types": { + "arguments": [], + "created_at": 1733768711.942948, + "depends_on": { + "macros": [ + "macro.dbt.get_updated_at_column_data_type", + "macro.dbt.get_snapshot_get_time_data_type" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro check_time_data_types(sql) %}\n {% set dbt_updated_at_data_type = get_updated_at_column_data_type(sql) %}\n {% set snapshot_get_time_data_type = get_snapshot_get_time_data_type() %}\n {% if snapshot_get_time_data_type is not none and dbt_updated_at_data_type is not none and snapshot_get_time_data_type != dbt_updated_at_data_type %}\n {% if exceptions.warn_snapshot_timestamp_data_types %}\n {{ exceptions.warn_snapshot_timestamp_data_types(snapshot_get_time_data_type, dbt_updated_at_data_type) }}\n {% endif %}\n {% endif %}\n{% endmacro %}", + "meta": {}, + "name": "check_time_data_types", + "original_file_path": "macros/materializations/snapshots/helpers.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/helpers.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.check_time_data_types" + }, "macro.dbt.collect_freshness": { "arguments": [], - "created_at": 1696859933.4328918, + "created_at": 1733768712.111316, "depends_on": { "macros": [ "macro.dbt.default__collect_freshness" @@ -619,7 +819,7 @@ }, "macro.dbt.concat": { "arguments": [], - "created_at": 1696859933.415433, + "created_at": 1733768712.0856168, "depends_on": { "macros": [ "macro.dbt.default__concat" @@ -643,7 +843,7 @@ }, "macro.dbt.convert_datetime": { "arguments": [], - "created_at": 1696859933.4131432, + "created_at": 1733768712.08024, "depends_on": { "macros": [] }, @@ -665,10 +865,10 @@ }, "macro.dbt.copy_grants": { "arguments": [], - "created_at": 1696859933.43445, + "created_at": 1733768712.1137989, "depends_on": { "macros": [ - "macro.dbt.default__copy_grants" + "macro.dbt_postgres.postgres__copy_grants" ] }, "description": "", @@ -689,7 +889,7 @@ }, "macro.dbt.create_columns": { "arguments": [], - "created_at": 1696859933.358933, + "created_at": 1733768711.93854, "depends_on": { "macros": [ "macro.dbt.default__create_columns" @@ -713,7 +913,7 @@ }, "macro.dbt.create_csv_table": { "arguments": [], - "created_at": 1696859933.403973, + "created_at": 1733768712.043387, "depends_on": { "macros": [ "macro.dbt.default__create_csv_table" @@ -737,7 +937,7 @@ }, "macro.dbt.create_indexes": { "arguments": [], - "created_at": 1696859933.42699, + "created_at": 1733768712.104935, "depends_on": { "macros": [ "macro.dbt.default__create_indexes" @@ -759,9 +959,33 @@ "supported_languages": null, "unique_id": "macro.dbt.create_indexes" }, + "macro.dbt.create_or_replace_clone": { + "arguments": [], + "created_at": 1733768712.000809, + "depends_on": { + "macros": [ + "macro.dbt.default__create_or_replace_clone" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro create_or_replace_clone(this_relation, defer_relation) %}\n {{ return(adapter.dispatch('create_or_replace_clone', 'dbt')(this_relation, defer_relation)) }}\n{% endmacro %}", + "meta": {}, + "name": "create_or_replace_clone", + "original_file_path": "macros/materializations/models/clone/create_or_replace_clone.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/clone/create_or_replace_clone.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.create_or_replace_clone" + }, "macro.dbt.create_or_replace_view": { "arguments": [], - "created_at": 1696859933.397109, + "created_at": 1733768712.07297, "depends_on": { "macros": [ "macro.dbt.run_hooks", @@ -778,23 +1002,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro create_or_replace_view() %}\n {%- set identifier = model['alias'] -%}\n\n {%- set old_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) -%}\n {%- set exists_as_view = (old_relation is not none and old_relation.is_view) -%}\n\n {%- set target_relation = api.Relation.create(\n identifier=identifier, schema=schema, database=database,\n type='view') -%}\n {% set grant_config = config.get('grants') %}\n\n {{ run_hooks(pre_hooks) }}\n\n -- If there's a table with the same name and we weren't told to full refresh,\n -- that's an error. If we were told to full refresh, drop it. This behavior differs\n -- for Snowflake and BigQuery, so multiple dispatch is used.\n {%- if old_relation is not none and old_relation.is_table -%}\n {{ handle_existing_table(should_full_refresh(), old_relation) }}\n {%- endif -%}\n\n -- build model\n {% call statement('main') -%}\n {{ get_create_view_as_sql(target_relation, sql) }}\n {%- endcall %}\n\n {% set should_revoke = should_revoke(exists_as_view, full_refresh_mode=True) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=True) %}\n\n {{ run_hooks(post_hooks) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{% endmacro %}", + "macro_sql": "{% macro create_or_replace_view() %}\n {%- set identifier = model['alias'] -%}\n\n {%- set old_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) -%}\n {%- set exists_as_view = (old_relation is not none and old_relation.is_view) -%}\n\n {%- set target_relation = api.Relation.create(\n identifier=identifier, schema=schema, database=database,\n type='view') -%}\n {% set grant_config = config.get('grants') %}\n\n {{ run_hooks(pre_hooks) }}\n\n -- If there's a table with the same name and we weren't told to full refresh,\n -- that's an error. If we were told to full refresh, drop it. This behavior differs\n -- for Snowflake and BigQuery, so multiple dispatch is used.\n {%- if old_relation is not none and old_relation.is_table -%}\n {{ handle_existing_table(should_full_refresh(), old_relation) }}\n {%- endif -%}\n\n -- build model\n {% call statement('main') -%}\n {{ get_create_view_as_sql(target_relation, sql) }}\n {%- endcall %}\n\n {% set should_revoke = should_revoke(exists_as_view, full_refresh_mode=True) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {{ run_hooks(post_hooks) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{% endmacro %}", "meta": {}, "name": "create_or_replace_view", - "original_file_path": "macros/materializations/models/view/create_or_replace_view.sql", + "original_file_path": "macros/relations/view/replace.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/view/create_or_replace_view.sql", + "path": "macros/relations/view/replace.sql", "resource_type": "macro", "supported_languages": null, "unique_id": "macro.dbt.create_or_replace_view" }, "macro.dbt.create_schema": { "arguments": [], - "created_at": 1696859933.4250371, + "created_at": 1733768712.101356, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__create_schema" + "macro.dbt_postgres.postgres__create_schema" ] }, "description": "", @@ -815,10 +1039,10 @@ }, "macro.dbt.create_table_as": { "arguments": [], - "created_at": 1696859933.393523, + "created_at": 1733768712.069162, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__create_table_as" + "macro.dbt_postgres.postgres__create_table_as" ] }, "description": "", @@ -829,20 +1053,20 @@ "macro_sql": "{% macro create_table_as(temporary, relation, compiled_code, language='sql') -%}\n {# backward compatibility for create_table_as that does not support language #}\n {% if language == \"sql\" %}\n {{ adapter.dispatch('create_table_as', 'dbt')(temporary, relation, compiled_code)}}\n {% else %}\n {{ adapter.dispatch('create_table_as', 'dbt')(temporary, relation, compiled_code, language) }}\n {% endif %}\n\n{%- endmacro %}", "meta": {}, "name": "create_table_as", - "original_file_path": "macros/materializations/models/table/create_table_as.sql", + "original_file_path": "macros/relations/table/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/table/create_table_as.sql", + "path": "macros/relations/table/create.sql", "resource_type": "macro", "supported_languages": null, "unique_id": "macro.dbt.create_table_as" }, "macro.dbt.create_view_as": { "arguments": [], - "created_at": 1696859933.3976068, + "created_at": 1733768712.0744681, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__create_view_as" + "macro.dbt.default__create_view_as" ] }, "description": "", @@ -853,20 +1077,20 @@ "macro_sql": "{% macro create_view_as(relation, sql) -%}\n {{ adapter.dispatch('create_view_as', 'dbt')(relation, sql) }}\n{%- endmacro %}", "meta": {}, "name": "create_view_as", - "original_file_path": "macros/materializations/models/view/create_view_as.sql", + "original_file_path": "macros/relations/view/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/view/create_view_as.sql", + "path": "macros/relations/view/create.sql", "resource_type": "macro", "supported_languages": null, "unique_id": "macro.dbt.create_view_as" }, "macro.dbt.current_timestamp": { "arguments": [], - "created_at": 1696859933.425768, + "created_at": 1733768712.1024861, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__current_timestamp" + "macro.dbt_postgres.postgres__current_timestamp" ] }, "description": "", @@ -887,10 +1111,10 @@ }, "macro.dbt.current_timestamp_backcompat": { "arguments": [], - "created_at": 1696859933.426166, + "created_at": 1733768712.103471, "depends_on": { "macros": [ - "macro.dbt.default__current_timestamp_backcompat" + "macro.dbt_postgres.postgres__current_timestamp_backcompat" ] }, "description": "", @@ -911,10 +1135,10 @@ }, "macro.dbt.current_timestamp_in_utc_backcompat": { "arguments": [], - "created_at": 1696859933.4263391, + "created_at": 1733768712.10371, "depends_on": { "macros": [ - "macro.dbt.default__current_timestamp_in_utc_backcompat" + "macro.dbt_postgres.postgres__current_timestamp_in_utc_backcompat" ] }, "description": "", @@ -933,9 +1157,57 @@ "supported_languages": null, "unique_id": "macro.dbt.current_timestamp_in_utc_backcompat" }, + "macro.dbt.date": { + "arguments": [], + "created_at": 1733768712.084675, + "depends_on": { + "macros": [ + "macro.dbt.default__date" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro date(year, month, day) %}\n {{ return(adapter.dispatch('date', 'dbt') (year, month, day)) }}\n{% endmacro %}", + "meta": {}, + "name": "date", + "original_file_path": "macros/utils/date.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/date.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.date" + }, + "macro.dbt.date_spine": { + "arguments": [], + "created_at": 1733768712.084023, + "depends_on": { + "macros": [ + "macro.dbt.default__date_spine" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro date_spine(datepart, start_date, end_date) %}\n {{ return(adapter.dispatch('date_spine', 'dbt')(datepart, start_date, end_date)) }}\n{%- endmacro %}", + "meta": {}, + "name": "date_spine", + "original_file_path": "macros/utils/date_spine.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/date_spine.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.date_spine" + }, "macro.dbt.date_trunc": { "arguments": [], - "created_at": 1696859933.423926, + "created_at": 1733768712.099894, "depends_on": { "macros": [ "macro.dbt.default__date_trunc" @@ -959,10 +1231,10 @@ }, "macro.dbt.dateadd": { "arguments": [], - "created_at": 1696859933.416018, + "created_at": 1733768712.088691, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__dateadd" + "macro.dbt_postgres.postgres__dateadd" ] }, "description": "", @@ -983,10 +1255,10 @@ }, "macro.dbt.datediff": { "arguments": [], - "created_at": 1696859933.4179342, + "created_at": 1733768712.09153, "depends_on": { "macros": [ - "macro.dbt.default__datediff" + "macro.dbt_postgres.postgres__datediff" ] }, "description": "", @@ -1007,7 +1279,7 @@ }, "macro.dbt.dates_in_range": { "arguments": [], - "created_at": 1696859933.413988, + "created_at": 1733768712.081387, "depends_on": { "macros": [ "macro.dbt.convert_datetime" @@ -1018,7 +1290,7 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro dates_in_range(start_date_str, end_date_str=none, in_fmt=\"%Y%m%d\", out_fmt=\"%Y%m%d\") %}\n {% set end_date_str = start_date_str if end_date_str is none else end_date_str %}\n\n {% set start_date = convert_datetime(start_date_str, in_fmt) %}\n {% set end_date = convert_datetime(end_date_str, in_fmt) %}\n\n {% set day_count = (end_date - start_date).days %}\n {% if day_count < 0 %}\n {% set msg -%}\n Partiton start date is after the end date ({{ start_date }}, {{ end_date }})\n {%- endset %}\n\n {{ exceptions.raise_compiler_error(msg, model) }}\n {% endif %}\n\n {% set date_list = [] %}\n {% for i in range(0, day_count + 1) %}\n {% set the_date = (modules.datetime.timedelta(days=i) + start_date) %}\n {% if not out_fmt %}\n {% set _ = date_list.append(the_date) %}\n {% else %}\n {% set _ = date_list.append(the_date.strftime(out_fmt)) %}\n {% endif %}\n {% endfor %}\n\n {{ return(date_list) }}\n{% endmacro %}", + "macro_sql": "{% macro dates_in_range(start_date_str, end_date_str=none, in_fmt=\"%Y%m%d\", out_fmt=\"%Y%m%d\") %}\n {% set end_date_str = start_date_str if end_date_str is none else end_date_str %}\n\n {% set start_date = convert_datetime(start_date_str, in_fmt) %}\n {% set end_date = convert_datetime(end_date_str, in_fmt) %}\n\n {% set day_count = (end_date - start_date).days %}\n {% if day_count < 0 %}\n {% set msg -%}\n Partition start date is after the end date ({{ start_date }}, {{ end_date }})\n {%- endset %}\n\n {{ exceptions.raise_compiler_error(msg, model) }}\n {% endif %}\n\n {% set date_list = [] %}\n {% for i in range(0, day_count + 1) %}\n {% set the_date = (modules.datetime.timedelta(days=i) + start_date) %}\n {% if not out_fmt %}\n {% set _ = date_list.append(the_date) %}\n {% else %}\n {% set _ = date_list.append(the_date.strftime(out_fmt)) %}\n {% endif %}\n {% endfor %}\n\n {{ return(date_list) }}\n{% endmacro %}", "meta": {}, "name": "dates_in_range", "original_file_path": "macros/etc/datetime.sql", @@ -1031,7 +1303,7 @@ }, "macro.dbt.default__alter_column_comment": { "arguments": [], - "created_at": 1696859933.438398, + "created_at": 1733768712.120061, "depends_on": { "macros": [] }, @@ -1053,7 +1325,7 @@ }, "macro.dbt.default__alter_column_type": { "arguments": [], - "created_at": 1696859933.4443278, + "created_at": 1733768712.13395, "depends_on": { "macros": [ "macro.dbt.statement" @@ -1064,7 +1336,7 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__alter_column_type(relation, column_name, new_column_type) -%}\n {#\n 1. Create a new column (w/ temp name and correct type)\n 2. Copy data over to it\n 3. Drop the existing column (cascade!)\n 4. Rename the new column to existing column\n #}\n {%- set tmp_column = column_name + \"__dbt_alter\" -%}\n\n {% call statement('alter_column_type') %}\n alter table {{ relation }} add column {{ adapter.quote(tmp_column) }} {{ new_column_type }};\n update {{ relation }} set {{ adapter.quote(tmp_column) }} = {{ adapter.quote(column_name) }};\n alter table {{ relation }} drop column {{ adapter.quote(column_name) }} cascade;\n alter table {{ relation }} rename column {{ adapter.quote(tmp_column) }} to {{ adapter.quote(column_name) }}\n {% endcall %}\n\n{% endmacro %}", + "macro_sql": "{% macro default__alter_column_type(relation, column_name, new_column_type) -%}\n {#\n 1. Create a new column (w/ temp name and correct type)\n 2. Copy data over to it\n 3. Drop the existing column (cascade!)\n 4. Rename the new column to existing column\n #}\n {%- set tmp_column = column_name + \"__dbt_alter\" -%}\n\n {% call statement('alter_column_type') %}\n alter table {{ relation.render() }} add column {{ adapter.quote(tmp_column) }} {{ new_column_type }};\n update {{ relation.render() }} set {{ adapter.quote(tmp_column) }} = {{ adapter.quote(column_name) }};\n alter table {{ relation.render() }} drop column {{ adapter.quote(column_name) }} cascade;\n alter table {{ relation.render() }} rename column {{ adapter.quote(tmp_column) }} to {{ adapter.quote(column_name) }}\n {% endcall %}\n\n{% endmacro %}", "meta": {}, "name": "default__alter_column_type", "original_file_path": "macros/adapters/columns.sql", @@ -1077,7 +1349,7 @@ }, "macro.dbt.default__alter_relation_add_remove_columns": { "arguments": [], - "created_at": 1696859933.4450629, + "created_at": 1733768712.134961, "depends_on": { "macros": [ "macro.dbt.run_query" @@ -1088,7 +1360,7 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__alter_relation_add_remove_columns(relation, add_columns, remove_columns) %}\n\n {% if add_columns is none %}\n {% set add_columns = [] %}\n {% endif %}\n {% if remove_columns is none %}\n {% set remove_columns = [] %}\n {% endif %}\n\n {% set sql -%}\n\n alter {{ relation.type }} {{ relation }}\n\n {% for column in add_columns %}\n add column {{ column.name }} {{ column.data_type }}{{ ',' if not loop.last }}\n {% endfor %}{{ ',' if add_columns and remove_columns }}\n\n {% for column in remove_columns %}\n drop column {{ column.name }}{{ ',' if not loop.last }}\n {% endfor %}\n\n {%- endset -%}\n\n {% do run_query(sql) %}\n\n{% endmacro %}", + "macro_sql": "{% macro default__alter_relation_add_remove_columns(relation, add_columns, remove_columns) %}\n\n {% if add_columns is none %}\n {% set add_columns = [] %}\n {% endif %}\n {% if remove_columns is none %}\n {% set remove_columns = [] %}\n {% endif %}\n\n {% set sql -%}\n\n alter {{ relation.type }} {{ relation.render() }}\n\n {% for column in add_columns %}\n add column {{ column.name }} {{ column.data_type }}{{ ',' if not loop.last }}\n {% endfor %}{{ ',' if add_columns and remove_columns }}\n\n {% for column in remove_columns %}\n drop column {{ column.name }}{{ ',' if not loop.last }}\n {% endfor %}\n\n {%- endset -%}\n\n {% do run_query(sql) %}\n\n{% endmacro %}", "meta": {}, "name": "default__alter_relation_add_remove_columns", "original_file_path": "macros/adapters/columns.sql", @@ -1101,7 +1373,7 @@ }, "macro.dbt.default__alter_relation_comment": { "arguments": [], - "created_at": 1696859933.438658, + "created_at": 1733768712.120404, "depends_on": { "macros": [] }, @@ -1123,7 +1395,7 @@ }, "macro.dbt.default__any_value": { "arguments": [], - "created_at": 1696859933.419261, + "created_at": 1733768712.093714, "depends_on": { "macros": [] }, @@ -1145,7 +1417,7 @@ }, "macro.dbt.default__apply_grants": { "arguments": [], - "created_at": 1696859933.437767, + "created_at": 1733768712.118434, "depends_on": { "macros": [ "macro.dbt.run_query", @@ -1159,7 +1431,7 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__apply_grants(relation, grant_config, should_revoke=True) %}\n {#-- If grant_config is {} or None, this is a no-op --#}\n {% if grant_config %}\n {% if should_revoke %}\n {#-- We think previous grants may have carried over --#}\n {#-- Show current grants and calculate diffs --#}\n {% set current_grants_table = run_query(get_show_grant_sql(relation)) %}\n {% set current_grants_dict = adapter.standardize_grants_dict(current_grants_table) %}\n {% set needs_granting = diff_of_two_dicts(grant_config, current_grants_dict) %}\n {% set needs_revoking = diff_of_two_dicts(current_grants_dict, grant_config) %}\n {% if not (needs_granting or needs_revoking) %}\n {{ log('On ' ~ relation ~': All grants are in place, no revocation or granting needed.')}}\n {% endif %}\n {% else %}\n {#-- We don't think there's any chance of previous grants having carried over. --#}\n {#-- Jump straight to granting what the user has configured. --#}\n {% set needs_revoking = {} %}\n {% set needs_granting = grant_config %}\n {% endif %}\n {% if needs_granting or needs_revoking %}\n {% set revoke_statement_list = get_dcl_statement_list(relation, needs_revoking, get_revoke_sql) %}\n {% set grant_statement_list = get_dcl_statement_list(relation, needs_granting, get_grant_sql) %}\n {% set dcl_statement_list = revoke_statement_list + grant_statement_list %}\n {% if dcl_statement_list %}\n {{ call_dcl_statements(dcl_statement_list) }}\n {% endif %}\n {% endif %}\n {% endif %}\n{% endmacro %}", + "macro_sql": "{% macro default__apply_grants(relation, grant_config, should_revoke=True) %}\n {#-- If grant_config is {} or None, this is a no-op --#}\n {% if grant_config %}\n {% if should_revoke %}\n {#-- We think previous grants may have carried over --#}\n {#-- Show current grants and calculate diffs --#}\n {% set current_grants_table = run_query(get_show_grant_sql(relation)) %}\n {% set current_grants_dict = adapter.standardize_grants_dict(current_grants_table) %}\n {% set needs_granting = diff_of_two_dicts(grant_config, current_grants_dict) %}\n {% set needs_revoking = diff_of_two_dicts(current_grants_dict, grant_config) %}\n {% if not (needs_granting or needs_revoking) %}\n {{ log('On ' ~ relation.render() ~': All grants are in place, no revocation or granting needed.')}}\n {% endif %}\n {% else %}\n {#-- We don't think there's any chance of previous grants having carried over. --#}\n {#-- Jump straight to granting what the user has configured. --#}\n {% set needs_revoking = {} %}\n {% set needs_granting = grant_config %}\n {% endif %}\n {% if needs_granting or needs_revoking %}\n {% set revoke_statement_list = get_dcl_statement_list(relation, needs_revoking, get_revoke_sql) %}\n {% set grant_statement_list = get_dcl_statement_list(relation, needs_granting, get_grant_sql) %}\n {% set dcl_statement_list = revoke_statement_list + grant_statement_list %}\n {% if dcl_statement_list %}\n {{ call_dcl_statements(dcl_statement_list) }}\n {% endif %}\n {% endif %}\n {% endif %}\n{% endmacro %}", "meta": {}, "name": "default__apply_grants", "original_file_path": "macros/adapters/apply_grants.sql", @@ -1172,7 +1444,7 @@ }, "macro.dbt.default__array_append": { "arguments": [], - "created_at": 1696859933.424763, + "created_at": 1733768712.101006, "depends_on": { "macros": [] }, @@ -1194,7 +1466,7 @@ }, "macro.dbt.default__array_concat": { "arguments": [], - "created_at": 1696859933.422234, + "created_at": 1733768712.097717, "depends_on": { "macros": [] }, @@ -1216,7 +1488,7 @@ }, "macro.dbt.default__array_construct": { "arguments": [], - "created_at": 1696859933.424462, + "created_at": 1733768712.1006138, "depends_on": { "macros": [] }, @@ -1238,7 +1510,7 @@ }, "macro.dbt.default__bool_or": { "arguments": [], - "created_at": 1696859933.4224782, + "created_at": 1733768712.098058, "depends_on": { "macros": [] }, @@ -1260,16 +1532,18 @@ }, "macro.dbt.default__build_snapshot_table": { "arguments": [], - "created_at": 1696859933.360595, + "created_at": 1733768711.941532, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_snapshot_table_column_names" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__build_snapshot_table(strategy, sql) %}\n\n select *,\n {{ strategy.scd_id }} as dbt_scd_id,\n {{ strategy.updated_at }} as dbt_updated_at,\n {{ strategy.updated_at }} as dbt_valid_from,\n nullif({{ strategy.updated_at }}, {{ strategy.updated_at }}) as dbt_valid_to\n from (\n {{ sql }}\n ) sbq\n\n{% endmacro %}", + "macro_sql": "{% macro default__build_snapshot_table(strategy, sql) %}\n {% set columns = config.get('snapshot_table_column_names') or get_snapshot_table_column_names() %}\n\n select *,\n {{ strategy.scd_id }} as {{ columns.dbt_scd_id }},\n {{ strategy.updated_at }} as {{ columns.dbt_updated_at }},\n {{ strategy.updated_at }} as {{ columns.dbt_valid_from }},\n nullif({{ strategy.updated_at }}, {{ strategy.updated_at }}) as {{ columns.dbt_valid_to }}\n from (\n {{ sql }}\n ) sbq\n\n{% endmacro %}", "meta": {}, "name": "default__build_snapshot_table", "original_file_path": "macros/materializations/snapshots/helpers.sql", @@ -1282,7 +1556,7 @@ }, "macro.dbt.default__call_dcl_statements": { "arguments": [], - "created_at": 1696859933.436807, + "created_at": 1733768712.117127, "depends_on": { "macros": [ "macro.dbt.statement" @@ -1304,9 +1578,53 @@ "supported_languages": null, "unique_id": "macro.dbt.default__call_dcl_statements" }, + "macro.dbt.default__can_clone_table": { + "arguments": [], + "created_at": 1733768712.00053, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__can_clone_table() %}\n {{ return(False) }}\n{% endmacro %}", + "meta": {}, + "name": "default__can_clone_table", + "original_file_path": "macros/materializations/models/clone/can_clone_table.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/clone/can_clone_table.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.default__can_clone_table" + }, + "macro.dbt.default__cast": { + "arguments": [], + "created_at": 1733768712.093292, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__cast(field, type) %}\n cast({{field}} as {{type}})\n{% endmacro %}", + "meta": {}, + "name": "default__cast", + "original_file_path": "macros/utils/cast.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/cast.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.default__cast" + }, "macro.dbt.default__cast_bool_to_text": { "arguments": [], - "created_at": 1696859933.419014, + "created_at": 1733768712.0929, "depends_on": { "macros": [] }, @@ -1328,7 +1646,7 @@ }, "macro.dbt.default__check_schema_exists": { "arguments": [], - "created_at": 1696859933.4414232, + "created_at": 1733768712.1265018, "depends_on": { "macros": [ "macro.dbt.replace", @@ -1353,7 +1671,7 @@ }, "macro.dbt.default__collect_freshness": { "arguments": [], - "created_at": 1696859933.433185, + "created_at": 1733768712.111687, "depends_on": { "macros": [ "macro.dbt.statement", @@ -1365,7 +1683,7 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__collect_freshness(source, loaded_at_field, filter) %}\n {% call statement('collect_freshness', fetch_result=True, auto_begin=False) -%}\n select\n max({{ loaded_at_field }}) as max_loaded_at,\n {{ current_timestamp() }} as snapshotted_at\n from {{ source }}\n {% if filter %}\n where {{ filter }}\n {% endif %}\n {% endcall %}\n {{ return(load_result('collect_freshness').table) }}\n{% endmacro %}", + "macro_sql": "{% macro default__collect_freshness(source, loaded_at_field, filter) %}\n {% call statement('collect_freshness', fetch_result=True, auto_begin=False) -%}\n select\n max({{ loaded_at_field }}) as max_loaded_at,\n {{ current_timestamp() }} as snapshotted_at\n from {{ source }}\n {% if filter %}\n where {{ filter }}\n {% endif %}\n {% endcall %}\n {{ return(load_result('collect_freshness')) }}\n{% endmacro %}", "meta": {}, "name": "default__collect_freshness", "original_file_path": "macros/adapters/freshness.sql", @@ -1378,7 +1696,7 @@ }, "macro.dbt.default__concat": { "arguments": [], - "created_at": 1696859933.415519, + "created_at": 1733768712.0857332, "depends_on": { "macros": [] }, @@ -1400,7 +1718,7 @@ }, "macro.dbt.default__copy_grants": { "arguments": [], - "created_at": 1696859933.434531, + "created_at": 1733768712.11391, "depends_on": { "macros": [] }, @@ -1422,7 +1740,7 @@ }, "macro.dbt.default__create_columns": { "arguments": [], - "created_at": 1696859933.3591318, + "created_at": 1733768711.938824, "depends_on": { "macros": [ "macro.dbt.statement" @@ -1433,7 +1751,7 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__create_columns(relation, columns) %}\n {% for column in columns %}\n {% call statement() %}\n alter table {{ relation }} add column \"{{ column.name }}\" {{ column.data_type }};\n {% endcall %}\n {% endfor %}\n{% endmacro %}", + "macro_sql": "{% macro default__create_columns(relation, columns) %}\n {% for column in columns %}\n {% call statement() %}\n alter table {{ relation.render() }} add column \"{{ column.name }}\" {{ column.data_type }};\n {% endcall %}\n {% endfor %}\n{% endmacro %}", "meta": {}, "name": "default__create_columns", "original_file_path": "macros/materializations/snapshots/helpers.sql", @@ -1446,7 +1764,7 @@ }, "macro.dbt.default__create_csv_table": { "arguments": [], - "created_at": 1696859933.404623, + "created_at": 1733768712.044342, "depends_on": { "macros": [ "macro.dbt.statement" @@ -1470,7 +1788,7 @@ }, "macro.dbt.default__create_indexes": { "arguments": [], - "created_at": 1696859933.42727, + "created_at": 1733768712.105481, "depends_on": { "macros": [ "macro.dbt.get_create_index_sql", @@ -1493,9 +1811,31 @@ "supported_languages": null, "unique_id": "macro.dbt.default__create_indexes" }, + "macro.dbt.default__create_or_replace_clone": { + "arguments": [], + "created_at": 1733768712.0009642, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__create_or_replace_clone(this_relation, defer_relation) %}\n create or replace table {{ this_relation.render() }} clone {{ defer_relation.render() }}\n{% endmacro %}", + "meta": {}, + "name": "default__create_or_replace_clone", + "original_file_path": "macros/materializations/models/clone/create_or_replace_clone.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/clone/create_or_replace_clone.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.default__create_or_replace_clone" + }, "macro.dbt.default__create_schema": { "arguments": [], - "created_at": 1696859933.425164, + "created_at": 1733768712.10153, "depends_on": { "macros": [ "macro.dbt.statement" @@ -1519,51 +1859,57 @@ }, "macro.dbt.default__create_table_as": { "arguments": [], - "created_at": 1696859933.393813, + "created_at": 1733768712.069799, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_assert_columns_equivalent", + "macro.dbt.get_table_columns_and_constraints", + "macro.dbt.get_select_subquery" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__create_table_as(temporary, relation, sql) -%}\n {%- set sql_header = config.get('sql_header', none) -%}\n\n {{ sql_header if sql_header is not none }}\n\n create {% if temporary: -%}temporary{%- endif %} table\n {{ relation.include(database=(not temporary), schema=(not temporary)) }}\n as (\n {{ sql }}\n );\n{%- endmacro %}", + "macro_sql": "{% macro default__create_table_as(temporary, relation, sql) -%}\n {%- set sql_header = config.get('sql_header', none) -%}\n\n {{ sql_header if sql_header is not none }}\n\n create {% if temporary: -%}temporary{%- endif %} table\n {{ relation.include(database=(not temporary), schema=(not temporary)) }}\n {% set contract_config = config.get('contract') %}\n {% if contract_config.enforced and (not temporary) %}\n {{ get_assert_columns_equivalent(sql) }}\n {{ get_table_columns_and_constraints() }}\n {%- set sql = get_select_subquery(sql) %}\n {% endif %}\n as (\n {{ sql }}\n );\n{%- endmacro %}", "meta": {}, "name": "default__create_table_as", - "original_file_path": "macros/materializations/models/table/create_table_as.sql", + "original_file_path": "macros/relations/table/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/table/create_table_as.sql", + "path": "macros/relations/table/create.sql", "resource_type": "macro", "supported_languages": null, "unique_id": "macro.dbt.default__create_table_as" }, "macro.dbt.default__create_view_as": { "arguments": [], - "created_at": 1696859933.397789, + "created_at": 1733768712.074867, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_assert_columns_equivalent" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__create_view_as(relation, sql) -%}\n {%- set sql_header = config.get('sql_header', none) -%}\n\n {{ sql_header if sql_header is not none }}\n create view {{ relation }} as (\n {{ sql }}\n );\n{%- endmacro %}", + "macro_sql": "{% macro default__create_view_as(relation, sql) -%}\n {%- set sql_header = config.get('sql_header', none) -%}\n\n {{ sql_header if sql_header is not none }}\n create view {{ relation.render() }}\n {% set contract_config = config.get('contract') %}\n {% if contract_config.enforced %}\n {{ get_assert_columns_equivalent(sql) }}\n {%- endif %}\n as (\n {{ sql }}\n );\n{%- endmacro %}", "meta": {}, "name": "default__create_view_as", - "original_file_path": "macros/materializations/models/view/create_view_as.sql", + "original_file_path": "macros/relations/view/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/view/create_view_as.sql", + "path": "macros/relations/view/create.sql", "resource_type": "macro", "supported_languages": null, "unique_id": "macro.dbt.default__create_view_as" }, "macro.dbt.default__current_timestamp": { "arguments": [], - "created_at": 1696859933.425882, + "created_at": 1733768712.1026921, "depends_on": { "macros": [] }, @@ -1585,7 +1931,7 @@ }, "macro.dbt.default__current_timestamp_backcompat": { "arguments": [], - "created_at": 1696859933.426223, + "created_at": 1733768712.1035452, "depends_on": { "macros": [] }, @@ -1607,11 +1953,11 @@ }, "macro.dbt.default__current_timestamp_in_utc_backcompat": { "arguments": [], - "created_at": 1696859933.4264572, + "created_at": 1733768712.103866, "depends_on": { "macros": [ "macro.dbt.current_timestamp_backcompat", - "macro.dbt.default__current_timestamp_backcompat" + "macro.dbt_postgres.postgres__current_timestamp_backcompat" ] }, "description": "", @@ -1630,9 +1976,57 @@ "supported_languages": null, "unique_id": "macro.dbt.default__current_timestamp_in_utc_backcompat" }, + "macro.dbt.default__date": { + "arguments": [], + "created_at": 1733768712.084935, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__date(year, month, day) -%}\n {%- set dt = modules.datetime.date(year, month, day) -%}\n {%- set iso_8601_formatted_date = dt.strftime('%Y-%m-%d') -%}\n to_date('{{ iso_8601_formatted_date }}', 'YYYY-MM-DD')\n{%- endmacro %}", + "meta": {}, + "name": "default__date", + "original_file_path": "macros/utils/date.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/date.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.default__date" + }, + "macro.dbt.default__date_spine": { + "arguments": [], + "created_at": 1733768712.0843651, + "depends_on": { + "macros": [ + "macro.dbt.generate_series", + "macro.dbt.get_intervals_between", + "macro.dbt.dateadd" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__date_spine(datepart, start_date, end_date) %}\n\n\n {# call as follows:\n\n date_spine(\n \"day\",\n \"to_date('01/01/2016', 'mm/dd/yyyy')\",\n \"dbt.dateadd(week, 1, current_date)\"\n ) #}\n\n\n with rawdata as (\n\n {{dbt.generate_series(\n dbt.get_intervals_between(start_date, end_date, datepart)\n )}}\n\n ),\n\n all_periods as (\n\n select (\n {{\n dbt.dateadd(\n datepart,\n \"row_number() over (order by 1) - 1\",\n start_date\n )\n }}\n ) as date_{{datepart}}\n from rawdata\n\n ),\n\n filtered as (\n\n select *\n from all_periods\n where date_{{datepart}} <= {{ end_date }}\n\n )\n\n select * from filtered\n\n{% endmacro %}", + "meta": {}, + "name": "default__date_spine", + "original_file_path": "macros/utils/date_spine.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/date_spine.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.default__date_spine" + }, "macro.dbt.default__date_trunc": { "arguments": [], - "created_at": 1696859933.4240158, + "created_at": 1733768712.1000252, "depends_on": { "macros": [] }, @@ -1654,7 +2048,7 @@ }, "macro.dbt.default__dateadd": { "arguments": [], - "created_at": 1696859933.416137, + "created_at": 1733768712.088952, "depends_on": { "macros": [] }, @@ -1676,7 +2070,7 @@ }, "macro.dbt.default__datediff": { "arguments": [], - "created_at": 1696859933.4180522, + "created_at": 1733768712.091698, "depends_on": { "macros": [] }, @@ -1696,12 +2090,35 @@ "supported_languages": null, "unique_id": "macro.dbt.default__datediff" }, + "macro.dbt.default__drop_materialized_view": { + "arguments": [], + "created_at": 1733768712.0595782, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__drop_materialized_view(relation) -%}\n drop materialized view if exists {{ relation.render() }} cascade\n{%- endmacro %}", + "meta": {}, + "name": "default__drop_materialized_view", + "original_file_path": "macros/relations/materialized_view/drop.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/relations/materialized_view/drop.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.default__drop_materialized_view" + }, "macro.dbt.default__drop_relation": { "arguments": [], - "created_at": 1696859933.431044, + "created_at": 1733768712.051782, "depends_on": { "macros": [ - "macro.dbt.statement" + "macro.dbt.statement", + "macro.dbt.get_drop_sql" ] }, "description": "", @@ -1709,20 +2126,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__drop_relation(relation) -%}\n {% call statement('drop_relation', auto_begin=False) -%}\n drop {{ relation.type }} if exists {{ relation }} cascade\n {%- endcall %}\n{% endmacro %}", + "macro_sql": "{% macro default__drop_relation(relation) -%}\n {% call statement('drop_relation', auto_begin=False) -%}\n {{ get_drop_sql(relation) }}\n {%- endcall %}\n{% endmacro %}", "meta": {}, "name": "default__drop_relation", - "original_file_path": "macros/adapters/relation.sql", + "original_file_path": "macros/relations/drop.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/relations/drop.sql", "resource_type": "macro", "supported_languages": null, "unique_id": "macro.dbt.default__drop_relation" }, "macro.dbt.default__drop_schema": { "arguments": [], - "created_at": 1696859933.4254122, + "created_at": 1733768712.101855, "depends_on": { "macros": [ "macro.dbt.statement" @@ -1744,9 +2161,9 @@ "supported_languages": null, "unique_id": "macro.dbt.default__drop_schema" }, - "macro.dbt.default__escape_single_quotes": { + "macro.dbt.default__drop_schema_named": { "arguments": [], - "created_at": 1696859933.4166322, + "created_at": 1733768712.0549572, "depends_on": { "macros": [] }, @@ -1755,20 +2172,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__escape_single_quotes(expression) -%}\n{{ expression | replace(\"'\",\"''\") }}\n{%- endmacro %}", + "macro_sql": "{% macro default__drop_schema_named(schema_name) %}\n {% set schema_relation = api.Relation.create(schema=schema_name) %}\n {{ adapter.drop_schema(schema_relation) }}\n{% endmacro %}", "meta": {}, - "name": "default__escape_single_quotes", - "original_file_path": "macros/utils/escape_single_quotes.sql", + "name": "default__drop_schema_named", + "original_file_path": "macros/relations/schema.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/escape_single_quotes.sql", + "path": "macros/relations/schema.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__escape_single_quotes" + "unique_id": "macro.dbt.default__drop_schema_named" }, - "macro.dbt.default__except": { + "macro.dbt.default__drop_table": { "arguments": [], - "created_at": 1696859933.414905, + "created_at": 1733768712.066952, "depends_on": { "macros": [] }, @@ -1777,20 +2194,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__except() %}\n\n except\n\n{% endmacro %}", + "macro_sql": "{% macro default__drop_table(relation) -%}\n drop table if exists {{ relation.render() }} cascade\n{%- endmacro %}", "meta": {}, - "name": "default__except", - "original_file_path": "macros/utils/except.sql", + "name": "default__drop_table", + "original_file_path": "macros/relations/table/drop.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/except.sql", + "path": "macros/relations/table/drop.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__except" + "unique_id": "macro.dbt.default__drop_table" }, - "macro.dbt.default__generate_alias_name": { + "macro.dbt.default__drop_view": { "arguments": [], - "created_at": 1696859933.4075441, + "created_at": 1733768712.070913, "depends_on": { "macros": [] }, @@ -1799,20 +2216,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__generate_alias_name(custom_alias_name=none, node=none) -%}\n\n {%- if custom_alias_name is none -%}\n\n {{ node.name }}\n\n {%- else -%}\n\n {{ custom_alias_name | trim }}\n\n {%- endif -%}\n\n{%- endmacro %}", + "macro_sql": "{% macro default__drop_view(relation) -%}\n drop view if exists {{ relation.render() }} cascade\n{%- endmacro %}", "meta": {}, - "name": "default__generate_alias_name", - "original_file_path": "macros/get_custom_name/get_custom_alias.sql", + "name": "default__drop_view", + "original_file_path": "macros/relations/view/drop.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/get_custom_name/get_custom_alias.sql", + "path": "macros/relations/view/drop.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__generate_alias_name" + "unique_id": "macro.dbt.default__drop_view" }, - "macro.dbt.default__generate_database_name": { + "macro.dbt.default__escape_single_quotes": { "arguments": [], - "created_at": 1696859933.408768, + "created_at": 1733768712.0896618, "depends_on": { "macros": [] }, @@ -1821,20 +2238,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__generate_database_name(custom_database_name=none, node=none) -%}\n {%- set default_database = target.database -%}\n {%- if custom_database_name is none -%}\n\n {{ default_database }}\n\n {%- else -%}\n\n {{ custom_database_name }}\n\n {%- endif -%}\n\n{%- endmacro %}", + "macro_sql": "{% macro default__escape_single_quotes(expression) -%}\n{{ expression | replace(\"'\",\"''\") }}\n{%- endmacro %}", "meta": {}, - "name": "default__generate_database_name", - "original_file_path": "macros/get_custom_name/get_custom_database.sql", + "name": "default__escape_single_quotes", + "original_file_path": "macros/utils/escape_single_quotes.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/get_custom_name/get_custom_database.sql", + "path": "macros/utils/escape_single_quotes.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__generate_database_name" + "unique_id": "macro.dbt.default__escape_single_quotes" }, - "macro.dbt.default__generate_schema_name": { + "macro.dbt.default__except": { "arguments": [], - "created_at": 1696859933.408106, + "created_at": 1733768712.0825658, "depends_on": { "macros": [] }, @@ -1843,20 +2260,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__generate_schema_name(custom_schema_name, node) -%}\n\n {%- set default_schema = target.schema -%}\n {%- if custom_schema_name is none -%}\n\n {{ default_schema }}\n\n {%- else -%}\n\n {{ default_schema }}_{{ custom_schema_name | trim }}\n\n {%- endif -%}\n\n{%- endmacro %}", + "macro_sql": "{% macro default__except() %}\n\n except\n\n{% endmacro %}", "meta": {}, - "name": "default__generate_schema_name", - "original_file_path": "macros/get_custom_name/get_custom_schema.sql", + "name": "default__except", + "original_file_path": "macros/utils/except.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/get_custom_name/get_custom_schema.sql", + "path": "macros/utils/except.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__generate_schema_name" + "unique_id": "macro.dbt.default__except" }, - "macro.dbt.default__get_batch_size": { + "macro.dbt.default__format_column": { "arguments": [], - "created_at": 1696859933.4057531, + "created_at": 1733768712.066566, "depends_on": { "macros": [] }, @@ -1865,20 +2282,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_batch_size() %}\n {{ return(10000) }}\n{% endmacro %}", + "macro_sql": "{% macro default__format_column(column) -%}\n {% set data_type = column.dtype %}\n {% set formatted = column.column.lower() ~ \" \" ~ data_type %}\n {{ return({'name': column.name, 'data_type': data_type, 'formatted': formatted}) }}\n{%- endmacro -%}", "meta": {}, - "name": "default__get_batch_size", - "original_file_path": "macros/materializations/seeds/helpers.sql", + "name": "default__format_column", + "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seeds/helpers.sql", + "path": "macros/relations/column/columns_spec_ddl.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_batch_size" + "unique_id": "macro.dbt.default__format_column" }, - "macro.dbt.default__get_binding_char": { + "macro.dbt.default__generate_alias_name": { "arguments": [], - "created_at": 1696859933.405555, + "created_at": 1733768712.048756, "depends_on": { "macros": [] }, @@ -1887,20 +2304,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_binding_char() %}\n {{ return('%s') }}\n{% endmacro %}", + "macro_sql": "{% macro default__generate_alias_name(custom_alias_name=none, node=none) -%}\n\n {%- if custom_alias_name -%}\n\n {{ custom_alias_name | trim }}\n\n {%- elif node.version -%}\n\n {{ return(node.name ~ \"_v\" ~ (node.version | replace(\".\", \"_\"))) }}\n\n {%- else -%}\n\n {{ node.name }}\n\n {%- endif -%}\n\n{%- endmacro %}", "meta": {}, - "name": "default__get_binding_char", - "original_file_path": "macros/materializations/seeds/helpers.sql", + "name": "default__generate_alias_name", + "original_file_path": "macros/get_custom_name/get_custom_alias.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seeds/helpers.sql", + "path": "macros/get_custom_name/get_custom_alias.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_binding_char" + "unique_id": "macro.dbt.default__generate_alias_name" }, - "macro.dbt.default__get_catalog": { + "macro.dbt.default__generate_database_name": { "arguments": [], - "created_at": 1696859933.440508, + "created_at": 1733768712.050381, "depends_on": { "macros": [] }, @@ -1909,66 +2326,66 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_catalog(information_schema, schemas) -%}\n\n {% set typename = adapter.type() %}\n {% set msg -%}\n get_catalog not implemented for {{ typename }}\n {%- endset %}\n\n {{ exceptions.raise_compiler_error(msg) }}\n{% endmacro %}", + "macro_sql": "{% macro default__generate_database_name(custom_database_name=none, node=none) -%}\n {%- set default_database = target.database -%}\n {%- if custom_database_name is none -%}\n\n {{ default_database }}\n\n {%- else -%}\n\n {{ custom_database_name }}\n\n {%- endif -%}\n\n{%- endmacro %}", "meta": {}, - "name": "default__get_catalog", - "original_file_path": "macros/adapters/metadata.sql", + "name": "default__generate_database_name", + "original_file_path": "macros/get_custom_name/get_custom_database.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/metadata.sql", + "path": "macros/get_custom_name/get_custom_database.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_catalog" + "unique_id": "macro.dbt.default__generate_database_name" }, - "macro.dbt.default__get_columns_in_query": { + "macro.dbt.default__generate_schema_name": { "arguments": [], - "created_at": 1696859933.4436722, + "created_at": 1733768712.049511, "depends_on": { - "macros": [ - "macro.dbt.statement" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_columns_in_query(select_sql) %}\n {% call statement('get_columns_in_query', fetch_result=True, auto_begin=False) -%}\n select * from (\n {{ select_sql }}\n ) as __dbt_sbq\n where false\n limit 0\n {% endcall %}\n\n {{ return(load_result('get_columns_in_query').table.columns | map(attribute='name') | list) }}\n{% endmacro %}", + "macro_sql": "{% macro default__generate_schema_name(custom_schema_name, node) -%}\n\n {%- set default_schema = target.schema -%}\n {%- if custom_schema_name is none -%}\n\n {{ default_schema }}\n\n {%- else -%}\n\n {{ default_schema }}_{{ custom_schema_name | trim }}\n\n {%- endif -%}\n\n{%- endmacro %}", "meta": {}, - "name": "default__get_columns_in_query", - "original_file_path": "macros/adapters/columns.sql", + "name": "default__generate_schema_name", + "original_file_path": "macros/get_custom_name/get_custom_schema.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/columns.sql", + "path": "macros/get_custom_name/get_custom_schema.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_columns_in_query" + "unique_id": "macro.dbt.default__generate_schema_name" }, - "macro.dbt.default__get_columns_in_relation": { + "macro.dbt.default__generate_series": { "arguments": [], - "created_at": 1696859933.4430761, + "created_at": 1733768712.0877252, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_powers_of_two" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_columns_in_relation(relation) -%}\n {{ exceptions.raise_not_implemented(\n 'get_columns_in_relation macro not implemented for adapter '+adapter.type()) }}\n{% endmacro %}", + "macro_sql": "{% macro default__generate_series(upper_bound) %}\n\n {% set n = dbt.get_powers_of_two(upper_bound) %}\n\n with p as (\n select 0 as generated_number union all select 1\n ), unioned as (\n\n select\n\n {% for i in range(n) %}\n p{{i}}.generated_number * power(2, {{i}})\n {% if not loop.last %} + {% endif %}\n {% endfor %}\n + 1\n as generated_number\n\n from\n\n {% for i in range(n) %}\n p as p{{i}}\n {% if not loop.last %} cross join {% endif %}\n {% endfor %}\n\n )\n\n select *\n from unioned\n where generated_number <= {{upper_bound}}\n order by generated_number\n\n{% endmacro %}", "meta": {}, - "name": "default__get_columns_in_relation", - "original_file_path": "macros/adapters/columns.sql", + "name": "default__generate_series", + "original_file_path": "macros/utils/generate_series.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/columns.sql", + "path": "macros/utils/generate_series.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_columns_in_relation" + "unique_id": "macro.dbt.default__generate_series" }, - "macro.dbt.default__get_create_index_sql": { + "macro.dbt.default__get_alter_materialized_view_as_sql": { "arguments": [], - "created_at": 1696859933.426882, + "created_at": 1733768712.061863, "depends_on": { "macros": [] }, @@ -1977,23 +2394,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_create_index_sql(relation, index_dict) -%}\n {% do return(None) %}\n{% endmacro %}", + "macro_sql": "{% macro default__get_alter_materialized_view_as_sql(\n relation,\n configuration_changes,\n sql,\n existing_relation,\n backup_relation,\n intermediate_relation\n) %}\n {{ exceptions.raise_compiler_error(\"Materialized views have not been implemented for this adapter.\") }}\n{% endmacro %}", "meta": {}, - "name": "default__get_create_index_sql", - "original_file_path": "macros/adapters/indexes.sql", + "name": "default__get_alter_materialized_view_as_sql", + "original_file_path": "macros/relations/materialized_view/alter.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/indexes.sql", + "path": "macros/relations/materialized_view/alter.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_create_index_sql" + "unique_id": "macro.dbt.default__get_alter_materialized_view_as_sql" }, - "macro.dbt.default__get_create_table_as_sql": { + "macro.dbt.default__get_assert_columns_equivalent": { "arguments": [], - "created_at": 1696859933.3932219, + "created_at": 1733768712.0645802, "depends_on": { "macros": [ - "macro.dbt.create_table_as" + "macro.dbt.assert_columns_equivalent" ] }, "description": "", @@ -2001,44 +2418,42 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_create_table_as_sql(temporary, relation, sql) -%}\n {{ return(create_table_as(temporary, relation, sql)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_assert_columns_equivalent(sql) -%}\n {{ return(assert_columns_equivalent(sql)) }}\n{%- endmacro %}", "meta": {}, - "name": "default__get_create_table_as_sql", - "original_file_path": "macros/materializations/models/table/create_table_as.sql", + "name": "default__get_assert_columns_equivalent", + "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/table/create_table_as.sql", + "path": "macros/relations/column/columns_spec_ddl.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_create_table_as_sql" + "unique_id": "macro.dbt.default__get_assert_columns_equivalent" }, - "macro.dbt.default__get_create_view_as_sql": { + "macro.dbt.default__get_batch_size": { "arguments": [], - "created_at": 1696859933.397483, + "created_at": 1733768712.0459452, "depends_on": { - "macros": [ - "macro.dbt.create_view_as" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_create_view_as_sql(relation, sql) -%}\n {{ return(create_view_as(relation, sql)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_batch_size() %}\n {{ return(10000) }}\n{% endmacro %}", "meta": {}, - "name": "default__get_create_view_as_sql", - "original_file_path": "macros/materializations/models/view/create_view_as.sql", + "name": "default__get_batch_size", + "original_file_path": "macros/materializations/seeds/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/view/create_view_as.sql", + "path": "macros/materializations/seeds/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_create_view_as_sql" + "unique_id": "macro.dbt.default__get_batch_size" }, - "macro.dbt.default__get_csv_sql": { + "macro.dbt.default__get_binding_char": { "arguments": [], - "created_at": 1696859933.4053729, + "created_at": 1733768712.045675, "depends_on": { "macros": [] }, @@ -2047,68 +2462,64 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_csv_sql(create_or_truncate_sql, insert_sql) %}\n {{ create_or_truncate_sql }};\n -- dbt seed --\n {{ insert_sql }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_binding_char() %}\n {{ return('%s') }}\n{% endmacro %}", "meta": {}, - "name": "default__get_csv_sql", + "name": "default__get_binding_char", "original_file_path": "macros/materializations/seeds/helpers.sql", "package_name": "dbt", "patch_path": null, "path": "macros/materializations/seeds/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_csv_sql" + "unique_id": "macro.dbt.default__get_binding_char" }, - "macro.dbt.default__get_dcl_statement_list": { + "macro.dbt.default__get_catalog": { "arguments": [], - "created_at": 1696859933.4364831, + "created_at": 1733768712.125313, "depends_on": { - "macros": [ - "macro.dbt.support_multiple_grantees_per_dcl_statement" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro default__get_dcl_statement_list(relation, grant_config, get_dcl_macro) -%}\n {#\n -- Unpack grant_config into specific privileges and the set of users who need them granted/revoked.\n -- Depending on whether this database supports multiple grantees per statement, pass in the list of\n -- all grantees per privilege, or (if not) template one statement per privilege-grantee pair.\n -- `get_dcl_macro` will be either `get_grant_sql` or `get_revoke_sql`\n #}\n {%- set dcl_statements = [] -%}\n {%- for privilege, grantees in grant_config.items() %}\n {%- if support_multiple_grantees_per_dcl_statement() and grantees -%}\n {%- set dcl = get_dcl_macro(relation, privilege, grantees) -%}\n {%- do dcl_statements.append(dcl) -%}\n {%- else -%}\n {%- for grantee in grantees -%}\n {% set dcl = get_dcl_macro(relation, privilege, [grantee]) %}\n {%- do dcl_statements.append(dcl) -%}\n {% endfor -%}\n {%- endif -%}\n {%- endfor -%}\n {{ return(dcl_statements) }}\n{%- endmacro %}", + "macro_sql": "{% macro default__get_catalog(information_schema, schemas) -%}\n\n {% set typename = adapter.type() %}\n {% set msg -%}\n get_catalog not implemented for {{ typename }}\n {%- endset %}\n\n {{ exceptions.raise_compiler_error(msg) }}\n{% endmacro %}", "meta": {}, - "name": "default__get_dcl_statement_list", - "original_file_path": "macros/adapters/apply_grants.sql", + "name": "default__get_catalog", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/apply_grants.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_dcl_statement_list" + "unique_id": "macro.dbt.default__get_catalog" }, - "macro.dbt.default__get_delete_insert_merge_sql": { + "macro.dbt.default__get_catalog_for_single_relation": { "arguments": [], - "created_at": 1696859933.377393, + "created_at": 1733768712.127157, "depends_on": { - "macros": [ - "macro.dbt.get_quoted_csv" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_delete_insert_merge_sql(target, source, unique_key, dest_columns, incremental_predicates) -%}\n\n {%- set dest_cols_csv = get_quoted_csv(dest_columns | map(attribute=\"name\")) -%}\n\n {% if unique_key %}\n {% if unique_key is sequence and unique_key is not string %}\n delete from {{target }}\n using {{ source }}\n where (\n {% for key in unique_key %}\n {{ source }}.{{ key }} = {{ target }}.{{ key }}\n {{ \"and \" if not loop.last}}\n {% endfor %}\n {% if incremental_predicates %}\n {% for predicate in incremental_predicates %}\n and {{ predicate }}\n {% endfor %}\n {% endif %}\n );\n {% else %}\n delete from {{ target }}\n where (\n {{ unique_key }}) in (\n select ({{ unique_key }})\n from {{ source }}\n )\n {%- if incremental_predicates %}\n {% for predicate in incremental_predicates %}\n and {{ predicate }}\n {% endfor %}\n {%- endif -%};\n\n {% endif %}\n {% endif %}\n\n insert into {{ target }} ({{ dest_cols_csv }})\n (\n select {{ dest_cols_csv }}\n from {{ source }}\n )\n\n{%- endmacro %}", + "macro_sql": "{% macro default__get_catalog_for_single_relation(relation) %}\n {{ exceptions.raise_not_implemented(\n 'get_catalog_for_single_relation macro not implemented for adapter '+adapter.type()) }}\n{% endmacro %}", "meta": {}, - "name": "default__get_delete_insert_merge_sql", - "original_file_path": "macros/materializations/models/incremental/merge.sql", + "name": "default__get_catalog_for_single_relation", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/merge.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_delete_insert_merge_sql" + "unique_id": "macro.dbt.default__get_catalog_for_single_relation" }, - "macro.dbt.default__get_grant_sql": { + "macro.dbt.default__get_catalog_relations": { "arguments": [], - "created_at": 1696859933.43547, + "created_at": 1733768712.124882, "depends_on": { "macros": [] }, @@ -2117,47 +2528,46 @@ "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro default__get_grant_sql(relation, privilege, grantees) -%}\n grant {{ privilege }} on {{ relation }} to {{ grantees | join(', ') }}\n{%- endmacro -%}\n\n\n", + "macro_sql": "{% macro default__get_catalog_relations(information_schema, relations) -%}\n {% set typename = adapter.type() %}\n {% set msg -%}\n get_catalog_relations not implemented for {{ typename }}\n {%- endset %}\n\n {{ exceptions.raise_compiler_error(msg) }}\n{%- endmacro %}", "meta": {}, - "name": "default__get_grant_sql", - "original_file_path": "macros/adapters/apply_grants.sql", + "name": "default__get_catalog_relations", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/apply_grants.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_grant_sql" + "unique_id": "macro.dbt.default__get_catalog_relations" }, - "macro.dbt.default__get_incremental_append_sql": { + "macro.dbt.default__get_column_names": { "arguments": [], - "created_at": 1696859933.379318, + "created_at": 1733768712.0702238, "depends_on": { - "macros": [ - "macro.dbt.get_insert_into_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_incremental_append_sql(arg_dict) %}\n\n {% do return(get_insert_into_sql(arg_dict[\"target_relation\"], arg_dict[\"temp_relation\"], arg_dict[\"dest_columns\"])) %}\n\n{% endmacro %}", + "macro_sql": "{% macro default__get_column_names() %}\n {#- loop through user_provided_columns to get column names -#}\n {%- set user_provided_columns = model['columns'] -%}\n {%- for i in user_provided_columns %}\n {%- set col = user_provided_columns[i] -%}\n {%- set col_name = adapter.quote(col['name']) if col.get('quote') else col['name'] -%}\n {{ col_name }}{{ \", \" if not loop.last }}\n {%- endfor -%}\n{% endmacro %}", "meta": {}, - "name": "default__get_incremental_append_sql", - "original_file_path": "macros/materializations/models/incremental/strategies.sql", + "name": "default__get_column_names", + "original_file_path": "macros/relations/table/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/strategies.sql", + "path": "macros/relations/table/create.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_incremental_append_sql" + "unique_id": "macro.dbt.default__get_column_names" }, - "macro.dbt.default__get_incremental_default_sql": { + "macro.dbt.default__get_columns_in_query": { "arguments": [], - "created_at": 1696859933.38061, + "created_at": 1733768712.13314, "depends_on": { "macros": [ - "macro.dbt.get_incremental_append_sql" + "macro.dbt.statement", + "macro.dbt.get_empty_subquery_sql" ] }, "description": "", @@ -2165,47 +2575,47 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_incremental_default_sql(arg_dict) %}\n\n {% do return(get_incremental_append_sql(arg_dict)) %}\n\n{% endmacro %}", + "macro_sql": "{% macro default__get_columns_in_query(select_sql) %}\n {% call statement('get_columns_in_query', fetch_result=True, auto_begin=False) -%}\n {{ get_empty_subquery_sql(select_sql) }}\n {% endcall %}\n {{ return(load_result('get_columns_in_query').table.columns | map(attribute='name') | list) }}\n{% endmacro %}", "meta": {}, - "name": "default__get_incremental_default_sql", - "original_file_path": "macros/materializations/models/incremental/strategies.sql", + "name": "default__get_columns_in_query", + "original_file_path": "macros/adapters/columns.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/strategies.sql", + "path": "macros/adapters/columns.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_incremental_default_sql" + "unique_id": "macro.dbt.default__get_columns_in_query" }, - "macro.dbt.default__get_incremental_delete_insert_sql": { + "macro.dbt.default__get_columns_in_relation": { "arguments": [], - "created_at": 1696859933.379654, + "created_at": 1733768712.130395, "depends_on": { - "macros": [ - "macro.dbt.get_delete_insert_merge_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_incremental_delete_insert_sql(arg_dict) %}\n\n {% do return(get_delete_insert_merge_sql(arg_dict[\"target_relation\"], arg_dict[\"temp_relation\"], arg_dict[\"unique_key\"], arg_dict[\"dest_columns\"], arg_dict[\"incremental_predicates\"])) %}\n\n{% endmacro %}", + "macro_sql": "{% macro default__get_columns_in_relation(relation) -%}\n {{ exceptions.raise_not_implemented(\n 'get_columns_in_relation macro not implemented for adapter '+adapter.type()) }}\n{% endmacro %}", "meta": {}, - "name": "default__get_incremental_delete_insert_sql", - "original_file_path": "macros/materializations/models/incremental/strategies.sql", + "name": "default__get_columns_in_relation", + "original_file_path": "macros/adapters/columns.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/strategies.sql", + "path": "macros/adapters/columns.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_incremental_delete_insert_sql" + "unique_id": "macro.dbt.default__get_columns_in_relation" }, - "macro.dbt.default__get_incremental_insert_overwrite_sql": { + "macro.dbt.default__get_create_backup_sql": { "arguments": [], - "created_at": 1696859933.380308, + "created_at": 1733768712.057784, "depends_on": { "macros": [ - "macro.dbt.get_insert_overwrite_merge_sql" + "macro.dbt.make_backup_relation", + "macro.dbt.get_drop_sql", + "macro.dbt.get_rename_sql" ] }, "description": "", @@ -2213,47 +2623,47 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_incremental_insert_overwrite_sql(arg_dict) %}\n\n {% do return(get_insert_overwrite_merge_sql(arg_dict[\"target_relation\"], arg_dict[\"temp_relation\"], arg_dict[\"dest_columns\"], arg_dict[\"incremental_predicates\"])) %}\n\n{% endmacro %}", + "macro_sql": "{%- macro default__get_create_backup_sql(relation) -%}\n\n -- get the standard backup name\n {% set backup_relation = make_backup_relation(relation, relation.type) %}\n\n -- drop any pre-existing backup\n {{ get_drop_sql(backup_relation) }};\n\n {{ get_rename_sql(relation, backup_relation.identifier) }}\n\n{%- endmacro -%}", "meta": {}, - "name": "default__get_incremental_insert_overwrite_sql", - "original_file_path": "macros/materializations/models/incremental/strategies.sql", + "name": "default__get_create_backup_sql", + "original_file_path": "macros/relations/create_backup.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/strategies.sql", + "path": "macros/relations/create_backup.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_incremental_insert_overwrite_sql" + "unique_id": "macro.dbt.default__get_create_backup_sql" }, - "macro.dbt.default__get_incremental_merge_sql": { + "macro.dbt.default__get_create_index_sql": { "arguments": [], - "created_at": 1696859933.37999, + "created_at": 1733768712.104789, "depends_on": { - "macros": [ - "macro.dbt.get_merge_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_incremental_merge_sql(arg_dict) %}\n\n {% do return(get_merge_sql(arg_dict[\"target_relation\"], arg_dict[\"temp_relation\"], arg_dict[\"unique_key\"], arg_dict[\"dest_columns\"], arg_dict[\"incremental_predicates\"])) %}\n\n{% endmacro %}", + "macro_sql": "{% macro default__get_create_index_sql(relation, index_dict) -%}\n {% do return(None) %}\n{% endmacro %}", "meta": {}, - "name": "default__get_incremental_merge_sql", - "original_file_path": "macros/materializations/models/incremental/strategies.sql", + "name": "default__get_create_index_sql", + "original_file_path": "macros/adapters/indexes.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/strategies.sql", + "path": "macros/adapters/indexes.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_incremental_merge_sql" + "unique_id": "macro.dbt.default__get_create_index_sql" }, - "macro.dbt.default__get_insert_overwrite_merge_sql": { + "macro.dbt.default__get_create_intermediate_sql": { "arguments": [], - "created_at": 1696859933.378048, + "created_at": 1733768712.054506, "depends_on": { "macros": [ - "macro.dbt.get_quoted_csv" + "macro.dbt.make_intermediate_relation", + "macro.dbt.get_drop_sql", + "macro.dbt.get_create_sql" ] }, "description": "", @@ -2261,111 +2671,116 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_insert_overwrite_merge_sql(target, source, dest_columns, predicates, include_sql_header) -%}\n {#-- The only time include_sql_header is True: --#}\n {#-- BigQuery + insert_overwrite strategy + \"static\" partitions config --#}\n {#-- We should consider including the sql header at the materialization level instead --#}\n\n {%- set predicates = [] if predicates is none else [] + predicates -%}\n {%- set dest_cols_csv = get_quoted_csv(dest_columns | map(attribute=\"name\")) -%}\n {%- set sql_header = config.get('sql_header', none) -%}\n\n {{ sql_header if sql_header is not none and include_sql_header }}\n\n merge into {{ target }} as DBT_INTERNAL_DEST\n using {{ source }} as DBT_INTERNAL_SOURCE\n on FALSE\n\n when not matched by source\n {% if predicates %} and {{ predicates | join(' and ') }} {% endif %}\n then delete\n\n when not matched then insert\n ({{ dest_cols_csv }})\n values\n ({{ dest_cols_csv }})\n\n{% endmacro %}", + "macro_sql": "{%- macro default__get_create_intermediate_sql(relation, sql) -%}\n\n -- get the standard intermediate name\n {% set intermediate_relation = make_intermediate_relation(relation) %}\n\n -- drop any pre-existing intermediate\n {{ get_drop_sql(intermediate_relation) }};\n\n {{ get_create_sql(intermediate_relation, sql) }}\n\n{%- endmacro -%}", "meta": {}, - "name": "default__get_insert_overwrite_merge_sql", - "original_file_path": "macros/materializations/models/incremental/merge.sql", + "name": "default__get_create_intermediate_sql", + "original_file_path": "macros/relations/create_intermediate.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/merge.sql", + "path": "macros/relations/create_intermediate.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_insert_overwrite_merge_sql" + "unique_id": "macro.dbt.default__get_create_intermediate_sql" }, - "macro.dbt.default__get_merge_sql": { + "macro.dbt.default__get_create_materialized_view_as_sql": { "arguments": [], - "created_at": 1696859933.376477, + "created_at": 1733768712.062708, "depends_on": { - "macros": [ - "macro.dbt.get_quoted_csv", - "macro.dbt.get_merge_update_columns" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_merge_sql(target, source, unique_key, dest_columns, incremental_predicates=none) -%}\n {%- set predicates = [] if incremental_predicates is none else [] + incremental_predicates -%}\n {%- set dest_cols_csv = get_quoted_csv(dest_columns | map(attribute=\"name\")) -%}\n {%- set merge_update_columns = config.get('merge_update_columns') -%}\n {%- set merge_exclude_columns = config.get('merge_exclude_columns') -%}\n {%- set update_columns = get_merge_update_columns(merge_update_columns, merge_exclude_columns, dest_columns) -%}\n {%- set sql_header = config.get('sql_header', none) -%}\n\n {% if unique_key %}\n {% if unique_key is sequence and unique_key is not mapping and unique_key is not string %}\n {% for key in unique_key %}\n {% set this_key_match %}\n DBT_INTERNAL_SOURCE.{{ key }} = DBT_INTERNAL_DEST.{{ key }}\n {% endset %}\n {% do predicates.append(this_key_match) %}\n {% endfor %}\n {% else %}\n {% set unique_key_match %}\n DBT_INTERNAL_SOURCE.{{ unique_key }} = DBT_INTERNAL_DEST.{{ unique_key }}\n {% endset %}\n {% do predicates.append(unique_key_match) %}\n {% endif %}\n {% else %}\n {% do predicates.append('FALSE') %}\n {% endif %}\n\n {{ sql_header if sql_header is not none }}\n\n merge into {{ target }} as DBT_INTERNAL_DEST\n using {{ source }} as DBT_INTERNAL_SOURCE\n on {{\"(\" ~ predicates | join(\") and (\") ~ \")\"}}\n\n {% if unique_key %}\n when matched then update set\n {% for column_name in update_columns -%}\n {{ column_name }} = DBT_INTERNAL_SOURCE.{{ column_name }}\n {%- if not loop.last %}, {%- endif %}\n {%- endfor %}\n {% endif %}\n\n when not matched then insert\n ({{ dest_cols_csv }})\n values\n ({{ dest_cols_csv }})\n\n{% endmacro %}", + "macro_sql": "{% macro default__get_create_materialized_view_as_sql(relation, sql) -%}\n {{ exceptions.raise_compiler_error(\n \"`get_create_materialized_view_as_sql` has not been implemented for this adapter.\"\n ) }}\n{% endmacro %}", "meta": {}, - "name": "default__get_merge_sql", - "original_file_path": "macros/materializations/models/incremental/merge.sql", + "name": "default__get_create_materialized_view_as_sql", + "original_file_path": "macros/relations/materialized_view/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/merge.sql", + "path": "macros/relations/materialized_view/create.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_merge_sql" + "unique_id": "macro.dbt.default__get_create_materialized_view_as_sql" }, - "macro.dbt.default__get_merge_update_columns": { + "macro.dbt.default__get_create_sql": { "arguments": [], - "created_at": 1696859933.3705962, + "created_at": 1733768712.058648, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_create_view_as_sql", + "macro.dbt.get_create_table_as_sql", + "macro.dbt.get_create_materialized_view_as_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_merge_update_columns(merge_update_columns, merge_exclude_columns, dest_columns) %}\n {%- set default_cols = dest_columns | map(attribute=\"quoted\") | list -%}\n\n {%- if merge_update_columns and merge_exclude_columns -%}\n {{ exceptions.raise_compiler_error(\n 'Model cannot specify merge_update_columns and merge_exclude_columns. Please update model to use only one config'\n )}}\n {%- elif merge_update_columns -%}\n {%- set update_columns = merge_update_columns -%}\n {%- elif merge_exclude_columns -%}\n {%- set update_columns = [] -%}\n {%- for column in dest_columns -%}\n {% if column.column | lower not in merge_exclude_columns | map(\"lower\") | list %}\n {%- do update_columns.append(column.quoted) -%}\n {% endif %}\n {%- endfor -%}\n {%- else -%}\n {%- set update_columns = default_cols -%}\n {%- endif -%}\n\n {{ return(update_columns) }}\n\n{% endmacro %}", + "macro_sql": "{%- macro default__get_create_sql(relation, sql) -%}\n\n {%- if relation.is_view -%}\n {{ get_create_view_as_sql(relation, sql) }}\n\n {%- elif relation.is_table -%}\n {{ get_create_table_as_sql(False, relation, sql) }}\n\n {%- elif relation.is_materialized_view -%}\n {{ get_create_materialized_view_as_sql(relation, sql) }}\n\n {%- else -%}\n {{- exceptions.raise_compiler_error(\"`get_create_sql` has not been implemented for: \" ~ relation.type ) -}}\n\n {%- endif -%}\n\n{%- endmacro -%}", "meta": {}, - "name": "default__get_merge_update_columns", - "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", + "name": "default__get_create_sql", + "original_file_path": "macros/relations/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/column_helpers.sql", + "path": "macros/relations/create.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_merge_update_columns" + "unique_id": "macro.dbt.default__get_create_sql" }, - "macro.dbt.default__get_or_create_relation": { + "macro.dbt.default__get_create_table_as_sql": { "arguments": [], - "created_at": 1696859933.4321868, + "created_at": 1733768712.068762, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.create_table_as" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_or_create_relation(database, schema, identifier, type) %}\n {%- set target_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) %}\n\n {% if target_relation %}\n {% do return([true, target_relation]) %}\n {% endif %}\n\n {%- set new_relation = api.Relation.create(\n database=database,\n schema=schema,\n identifier=identifier,\n type=type\n ) -%}\n {% do return([false, new_relation]) %}\n{% endmacro %}", + "macro_sql": "{% macro default__get_create_table_as_sql(temporary, relation, sql) -%}\n {{ return(create_table_as(temporary, relation, sql)) }}\n{% endmacro %}", "meta": {}, - "name": "default__get_or_create_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "default__get_create_table_as_sql", + "original_file_path": "macros/relations/table/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/relations/table/create.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_or_create_relation" + "unique_id": "macro.dbt.default__get_create_table_as_sql" }, - "macro.dbt.default__get_revoke_sql": { + "macro.dbt.default__get_create_view_as_sql": { "arguments": [], - "created_at": 1696859933.435837, + "created_at": 1733768712.074301, "depends_on": { - "macros": [] - }, - "description": "", + "macros": [ + "macro.dbt.create_view_as" + ] + }, + "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro default__get_revoke_sql(relation, privilege, grantees) -%}\n revoke {{ privilege }} on {{ relation }} from {{ grantees | join(', ') }}\n{%- endmacro -%}\n\n\n", + "macro_sql": "{% macro default__get_create_view_as_sql(relation, sql) -%}\n {{ return(create_view_as(relation, sql)) }}\n{% endmacro %}", "meta": {}, - "name": "default__get_revoke_sql", - "original_file_path": "macros/adapters/apply_grants.sql", + "name": "default__get_create_view_as_sql", + "original_file_path": "macros/relations/view/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/apply_grants.sql", + "path": "macros/relations/view/create.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_revoke_sql" + "unique_id": "macro.dbt.default__get_create_view_as_sql" }, - "macro.dbt.default__get_show_grant_sql": { + "macro.dbt.default__get_csv_sql": { "arguments": [], - "created_at": 1696859933.435174, + "created_at": 1733768712.0454211, "depends_on": { "macros": [] }, @@ -2374,86 +2789,93 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_show_grant_sql(relation) %}\n show grants on {{ relation }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_csv_sql(create_or_truncate_sql, insert_sql) %}\n {{ create_or_truncate_sql }};\n -- dbt seed --\n {{ insert_sql }}\n{% endmacro %}", "meta": {}, - "name": "default__get_show_grant_sql", - "original_file_path": "macros/adapters/apply_grants.sql", + "name": "default__get_csv_sql", + "original_file_path": "macros/materializations/seeds/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/apply_grants.sql", + "path": "macros/materializations/seeds/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_show_grant_sql" + "unique_id": "macro.dbt.default__get_csv_sql" }, - "macro.dbt.default__get_test_sql": { + "macro.dbt.default__get_dcl_statement_list": { "arguments": [], - "created_at": 1696859933.367347, + "created_at": 1733768712.116728, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.support_multiple_grantees_per_dcl_statement" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_test_sql(main_sql, fail_calc, warn_if, error_if, limit) -%}\n select\n {{ fail_calc }} as failures,\n {{ fail_calc }} {{ warn_if }} as should_warn,\n {{ fail_calc }} {{ error_if }} as should_error\n from (\n {{ main_sql }}\n {{ \"limit \" ~ limit if limit != none }}\n ) dbt_internal_test\n{%- endmacro %}", + "macro_sql": "\n\n{%- macro default__get_dcl_statement_list(relation, grant_config, get_dcl_macro) -%}\n {#\n -- Unpack grant_config into specific privileges and the set of users who need them granted/revoked.\n -- Depending on whether this database supports multiple grantees per statement, pass in the list of\n -- all grantees per privilege, or (if not) template one statement per privilege-grantee pair.\n -- `get_dcl_macro` will be either `get_grant_sql` or `get_revoke_sql`\n #}\n {%- set dcl_statements = [] -%}\n {%- for privilege, grantees in grant_config.items() %}\n {%- if support_multiple_grantees_per_dcl_statement() and grantees -%}\n {%- set dcl = get_dcl_macro(relation, privilege, grantees) -%}\n {%- do dcl_statements.append(dcl) -%}\n {%- else -%}\n {%- for grantee in grantees -%}\n {% set dcl = get_dcl_macro(relation, privilege, [grantee]) %}\n {%- do dcl_statements.append(dcl) -%}\n {% endfor -%}\n {%- endif -%}\n {%- endfor -%}\n {{ return(dcl_statements) }}\n{%- endmacro %}", "meta": {}, - "name": "default__get_test_sql", - "original_file_path": "macros/materializations/tests/helpers.sql", + "name": "default__get_dcl_statement_list", + "original_file_path": "macros/adapters/apply_grants.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/tests/helpers.sql", + "path": "macros/adapters/apply_grants.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_test_sql" + "unique_id": "macro.dbt.default__get_dcl_statement_list" }, - "macro.dbt.default__get_true_sql": { + "macro.dbt.default__get_delete_insert_merge_sql": { "arguments": [], - "created_at": 1696859933.3594959, + "created_at": 1733768711.981184, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_quoted_csv" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_true_sql() %}\n {{ return('TRUE') }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_delete_insert_merge_sql(target, source, unique_key, dest_columns, incremental_predicates) -%}\n\n {%- set dest_cols_csv = get_quoted_csv(dest_columns | map(attribute=\"name\")) -%}\n\n {% if unique_key %}\n {% if unique_key is sequence and unique_key is not string %}\n delete from {{target }}\n using {{ source }}\n where (\n {% for key in unique_key %}\n {{ source }}.{{ key }} = {{ target }}.{{ key }}\n {{ \"and \" if not loop.last}}\n {% endfor %}\n {% if incremental_predicates %}\n {% for predicate in incremental_predicates %}\n and {{ predicate }}\n {% endfor %}\n {% endif %}\n );\n {% else %}\n delete from {{ target }}\n where (\n {{ unique_key }}) in (\n select ({{ unique_key }})\n from {{ source }}\n )\n {%- if incremental_predicates %}\n {% for predicate in incremental_predicates %}\n and {{ predicate }}\n {% endfor %}\n {%- endif -%};\n\n {% endif %}\n {% endif %}\n\n insert into {{ target }} ({{ dest_cols_csv }})\n (\n select {{ dest_cols_csv }}\n from {{ source }}\n )\n\n{%- endmacro %}", "meta": {}, - "name": "default__get_true_sql", - "original_file_path": "macros/materializations/snapshots/helpers.sql", + "name": "default__get_delete_insert_merge_sql", + "original_file_path": "macros/materializations/models/incremental/merge.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/helpers.sql", + "path": "macros/materializations/models/incremental/merge.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_true_sql" + "unique_id": "macro.dbt.default__get_delete_insert_merge_sql" }, - "macro.dbt.default__get_where_subquery": { + "macro.dbt.default__get_drop_backup_sql": { "arguments": [], - "created_at": 1696859933.367875, + "created_at": 1733768712.055574, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.make_backup_relation", + "macro.dbt.get_drop_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__get_where_subquery(relation) -%}\n {% set where = config.get('where', '') %}\n {% if where %}\n {%- set filtered -%}\n (select * from {{ relation }} where {{ where }}) dbt_subquery\n {%- endset -%}\n {% do return(filtered) %}\n {%- else -%}\n {% do return(relation) %}\n {%- endif -%}\n{%- endmacro %}", + "macro_sql": "{%- macro default__get_drop_backup_sql(relation) -%}\n\n -- get the standard backup name\n {% set backup_relation = make_backup_relation(relation, relation.type) %}\n\n {{ get_drop_sql(backup_relation) }}\n\n{%- endmacro -%}", "meta": {}, - "name": "default__get_where_subquery", - "original_file_path": "macros/materializations/tests/where_subquery.sql", + "name": "default__get_drop_backup_sql", + "original_file_path": "macros/relations/drop_backup.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/tests/where_subquery.sql", + "path": "macros/relations/drop_backup.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__get_where_subquery" + "unique_id": "macro.dbt.default__get_drop_backup_sql" }, - "macro.dbt.default__handle_existing_table": { + "macro.dbt.default__get_drop_index_sql": { "arguments": [], - "created_at": 1696859933.3960419, + "created_at": 1733768712.105823, "depends_on": { "macros": [] }, @@ -2462,64 +2884,70 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__handle_existing_table(full_refresh, old_relation) %}\n {{ log(\"Dropping relation \" ~ old_relation ~ \" because it is of type \" ~ old_relation.type) }}\n {{ adapter.drop_relation(old_relation) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_drop_index_sql(relation, index_name) -%}\n {{ exceptions.raise_compiler_error(\"`get_drop_index_sql has not been implemented for this adapter.\") }}\n{%- endmacro %}", "meta": {}, - "name": "default__handle_existing_table", - "original_file_path": "macros/materializations/models/view/helpers.sql", + "name": "default__get_drop_index_sql", + "original_file_path": "macros/adapters/indexes.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/view/helpers.sql", + "path": "macros/adapters/indexes.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__handle_existing_table" + "unique_id": "macro.dbt.default__get_drop_index_sql" }, - "macro.dbt.default__hash": { + "macro.dbt.default__get_drop_sql": { "arguments": [], - "created_at": 1696859933.4187279, + "created_at": 1733768712.051417, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.drop_view", + "macro.dbt.drop_table", + "macro.dbt.drop_materialized_view" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__hash(field) -%}\n md5(cast({{ field }} as {{ api.Column.translate_type('string') }}))\n{%- endmacro %}", + "macro_sql": "{%- macro default__get_drop_sql(relation) -%}\n\n {%- if relation.is_view -%}\n {{ drop_view(relation) }}\n\n {%- elif relation.is_table -%}\n {{ drop_table(relation) }}\n\n {%- elif relation.is_materialized_view -%}\n {{ drop_materialized_view(relation) }}\n\n {%- else -%}\n drop {{ relation.type }} if exists {{ relation.render() }} cascade\n\n {%- endif -%}\n\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "default__hash", - "original_file_path": "macros/utils/hash.sql", + "name": "default__get_drop_sql", + "original_file_path": "macros/relations/drop.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/hash.sql", + "path": "macros/relations/drop.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__hash" + "unique_id": "macro.dbt.default__get_drop_sql" }, - "macro.dbt.default__information_schema_name": { + "macro.dbt.default__get_empty_schema_sql": { "arguments": [], - "created_at": 1696859933.440751, + "created_at": 1733768712.132318, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.cast" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__information_schema_name(database) -%}\n {%- if database -%}\n {{ database }}.INFORMATION_SCHEMA\n {%- else -%}\n INFORMATION_SCHEMA\n {%- endif -%}\n{%- endmacro %}", + "macro_sql": "{% macro default__get_empty_schema_sql(columns) %}\n {%- set col_err = [] -%}\n {%- set col_naked_numeric = [] -%}\n select\n {% for i in columns %}\n {%- set col = columns[i] -%}\n {%- if col['data_type'] is not defined -%}\n {%- do col_err.append(col['name']) -%}\n {#-- If this column's type is just 'numeric' then it is missing precision/scale, raise a warning --#}\n {%- elif col['data_type'].strip().lower() in ('numeric', 'decimal', 'number') -%}\n {%- do col_naked_numeric.append(col['name']) -%}\n {%- endif -%}\n {% set col_name = adapter.quote(col['name']) if col.get('quote') else col['name'] %}\n {{ cast('null', col['data_type']) }} as {{ col_name }}{{ \", \" if not loop.last }}\n {%- endfor -%}\n {%- if (col_err | length) > 0 -%}\n {{ exceptions.column_type_missing(column_names=col_err) }}\n {%- elif (col_naked_numeric | length) > 0 -%}\n {{ exceptions.warn(\"Detected columns with numeric type and unspecified precision/scale, this can lead to unintended rounding: \" ~ col_naked_numeric ~ \"`\") }}\n {%- endif -%}\n{% endmacro %}", "meta": {}, - "name": "default__information_schema_name", - "original_file_path": "macros/adapters/metadata.sql", + "name": "default__get_empty_schema_sql", + "original_file_path": "macros/adapters/columns.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/metadata.sql", + "path": "macros/adapters/columns.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__information_schema_name" + "unique_id": "macro.dbt.default__get_empty_schema_sql" }, - "macro.dbt.default__intersect": { + "macro.dbt.default__get_empty_subquery_sql": { "arguments": [], - "created_at": 1696859933.416348, + "created_at": 1733768712.131079, "depends_on": { "macros": [] }, @@ -2528,92 +2956,93 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__intersect() %}\n\n intersect\n\n{% endmacro %}", + "macro_sql": "{% macro default__get_empty_subquery_sql(select_sql, select_sql_header=none) %}\n {%- if select_sql_header is not none -%}\n {{ select_sql_header }}\n {%- endif -%}\n select * from (\n {{ select_sql }}\n ) as __dbt_sbq\n where false\n limit 0\n{% endmacro %}", "meta": {}, - "name": "default__intersect", - "original_file_path": "macros/utils/intersect.sql", + "name": "default__get_empty_subquery_sql", + "original_file_path": "macros/adapters/columns.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/intersect.sql", + "path": "macros/adapters/columns.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__intersect" + "unique_id": "macro.dbt.default__get_empty_subquery_sql" }, - "macro.dbt.default__last_day": { + "macro.dbt.default__get_grant_sql": { "arguments": [], - "created_at": 1696859933.4230862, + "created_at": 1733768712.115499, "depends_on": { - "macros": [ - "macro.dbt.default_last_day" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__last_day(date, datepart) -%}\n {{dbt.default_last_day(date, datepart)}}\n{%- endmacro %}", + "macro_sql": "\n\n{%- macro default__get_grant_sql(relation, privilege, grantees) -%}\n grant {{ privilege }} on {{ relation.render() }} to {{ grantees | join(', ') }}\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "default__last_day", - "original_file_path": "macros/utils/last_day.sql", + "name": "default__get_grant_sql", + "original_file_path": "macros/adapters/apply_grants.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/last_day.sql", + "path": "macros/adapters/apply_grants.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__last_day" + "unique_id": "macro.dbt.default__get_grant_sql" }, - "macro.dbt.default__length": { + "macro.dbt.default__get_incremental_append_sql": { "arguments": [], - "created_at": 1696859933.4157782, + "created_at": 1733768711.9839628, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_insert_into_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__length(expression) %}\n\n length(\n {{ expression }}\n )\n\n{%- endmacro -%}", + "macro_sql": "{% macro default__get_incremental_append_sql(arg_dict) %}\n\n {% do return(get_insert_into_sql(arg_dict[\"target_relation\"], arg_dict[\"temp_relation\"], arg_dict[\"dest_columns\"])) %}\n\n{% endmacro %}", "meta": {}, - "name": "default__length", - "original_file_path": "macros/utils/length.sql", + "name": "default__get_incremental_append_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/length.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__length" + "unique_id": "macro.dbt.default__get_incremental_append_sql" }, - "macro.dbt.default__list_relations_without_caching": { + "macro.dbt.default__get_incremental_default_sql": { "arguments": [], - "created_at": 1696859933.441668, + "created_at": 1733768711.98561, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_incremental_append_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__list_relations_without_caching(schema_relation) %}\n {{ exceptions.raise_not_implemented(\n 'list_relations_without_caching macro not implemented for adapter '+adapter.type()) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_incremental_default_sql(arg_dict) %}\n\n {% do return(get_incremental_append_sql(arg_dict)) %}\n\n{% endmacro %}", "meta": {}, - "name": "default__list_relations_without_caching", - "original_file_path": "macros/adapters/metadata.sql", + "name": "default__get_incremental_default_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/metadata.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__list_relations_without_caching" + "unique_id": "macro.dbt.default__get_incremental_default_sql" }, - "macro.dbt.default__list_schemas": { + "macro.dbt.default__get_incremental_delete_insert_sql": { "arguments": [], - "created_at": 1696859933.4410439, + "created_at": 1733768711.984427, "depends_on": { "macros": [ - "macro.dbt.information_schema_name", - "macro.dbt.run_query" + "macro.dbt.get_delete_insert_merge_sql" ] }, "description": "", @@ -2621,47 +3050,47 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__list_schemas(database) -%}\n {% set sql %}\n select distinct schema_name\n from {{ information_schema_name(database) }}.SCHEMATA\n where catalog_name ilike '{{ database }}'\n {% endset %}\n {{ return(run_query(sql)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_incremental_delete_insert_sql(arg_dict) %}\n\n {% do return(get_delete_insert_merge_sql(arg_dict[\"target_relation\"], arg_dict[\"temp_relation\"], arg_dict[\"unique_key\"], arg_dict[\"dest_columns\"], arg_dict[\"incremental_predicates\"])) %}\n\n{% endmacro %}", "meta": {}, - "name": "default__list_schemas", - "original_file_path": "macros/adapters/metadata.sql", + "name": "default__get_incremental_delete_insert_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/metadata.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__list_schemas" + "unique_id": "macro.dbt.default__get_incremental_delete_insert_sql" }, - "macro.dbt.default__listagg": { + "macro.dbt.default__get_incremental_insert_overwrite_sql": { "arguments": [], - "created_at": 1696859933.417692, + "created_at": 1733768711.9853, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_insert_overwrite_merge_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__listagg(measure, delimiter_text, order_by_clause, limit_num) -%}\n\n {% if limit_num -%}\n array_to_string(\n array_slice(\n array_agg(\n {{ measure }}\n ){% if order_by_clause -%}\n within group ({{ order_by_clause }})\n {%- endif %}\n ,0\n ,{{ limit_num }}\n ),\n {{ delimiter_text }}\n )\n {%- else %}\n listagg(\n {{ measure }},\n {{ delimiter_text }}\n )\n {% if order_by_clause -%}\n within group ({{ order_by_clause }})\n {%- endif %}\n {%- endif %}\n\n{%- endmacro %}", + "macro_sql": "{% macro default__get_incremental_insert_overwrite_sql(arg_dict) %}\n\n {% do return(get_insert_overwrite_merge_sql(arg_dict[\"target_relation\"], arg_dict[\"temp_relation\"], arg_dict[\"dest_columns\"], arg_dict[\"incremental_predicates\"])) %}\n\n{% endmacro %}", "meta": {}, - "name": "default__listagg", - "original_file_path": "macros/utils/listagg.sql", + "name": "default__get_incremental_insert_overwrite_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/listagg.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__listagg" + "unique_id": "macro.dbt.default__get_incremental_insert_overwrite_sql" }, - "macro.dbt.default__load_csv_rows": { + "macro.dbt.default__get_incremental_merge_sql": { "arguments": [], - "created_at": 1696859933.407104, + "created_at": 1733768711.984875, "depends_on": { "macros": [ - "macro.dbt.get_batch_size", - "macro.dbt.get_seed_column_quoted_csv", - "macro.dbt.get_binding_char" + "macro.dbt.get_merge_sql" ] }, "description": "", @@ -2669,20 +3098,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__load_csv_rows(model, agate_table) %}\n\n {% set batch_size = get_batch_size() %}\n\n {% set cols_sql = get_seed_column_quoted_csv(model, agate_table.column_names) %}\n {% set bindings = [] %}\n\n {% set statements = [] %}\n\n {% for chunk in agate_table.rows | batch(batch_size) %}\n {% set bindings = [] %}\n\n {% for row in chunk %}\n {% do bindings.extend(row) %}\n {% endfor %}\n\n {% set sql %}\n insert into {{ this.render() }} ({{ cols_sql }}) values\n {% for row in chunk -%}\n ({%- for column in agate_table.column_names -%}\n {{ get_binding_char() }}\n {%- if not loop.last%},{%- endif %}\n {%- endfor -%})\n {%- if not loop.last%},{%- endif %}\n {%- endfor %}\n {% endset %}\n\n {% do adapter.add_query(sql, bindings=bindings, abridge_sql_log=True) %}\n\n {% if loop.index0 == 0 %}\n {% do statements.append(sql) %}\n {% endif %}\n {% endfor %}\n\n {# Return SQL so we can render it out into the compiled files #}\n {{ return(statements[0]) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_incremental_merge_sql(arg_dict) %}\n\n {% do return(get_merge_sql(arg_dict[\"target_relation\"], arg_dict[\"temp_relation\"], arg_dict[\"unique_key\"], arg_dict[\"dest_columns\"], arg_dict[\"incremental_predicates\"])) %}\n\n{% endmacro %}", "meta": {}, - "name": "default__load_csv_rows", - "original_file_path": "macros/materializations/seeds/helpers.sql", + "name": "default__get_incremental_merge_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seeds/helpers.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__load_csv_rows" + "unique_id": "macro.dbt.default__get_incremental_merge_sql" }, - "macro.dbt.default__make_backup_relation": { + "macro.dbt.default__get_incremental_microbatch_sql": { "arguments": [], - "created_at": 1696859933.430766, + "created_at": 1733768711.985931, "depends_on": { "macros": [] }, @@ -2691,23 +3120,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__make_backup_relation(base_relation, backup_relation_type, suffix) %}\n {%- set backup_identifier = base_relation.identifier ~ suffix -%}\n {%- set backup_relation = base_relation.incorporate(\n path={\"identifier\": backup_identifier},\n type=backup_relation_type\n ) -%}\n {{ return(backup_relation) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_incremental_microbatch_sql(arg_dict) %}\n\n {{ exceptions.raise_not_implemented('microbatch materialization strategy not implemented for adapter ' + adapter.type()) }}\n\n{% endmacro %}", "meta": {}, - "name": "default__make_backup_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "default__get_incremental_microbatch_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__make_backup_relation" + "unique_id": "macro.dbt.default__get_incremental_microbatch_sql" }, - "macro.dbt.default__make_intermediate_relation": { + "macro.dbt.default__get_insert_overwrite_merge_sql": { "arguments": [], - "created_at": 1696859933.43, + "created_at": 1733768711.9820359, "depends_on": { "macros": [ - "macro.dbt.default__make_temp_relation" + "macro.dbt.get_quoted_csv" ] }, "description": "", @@ -2715,68 +3144,67 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__make_intermediate_relation(base_relation, suffix) %}\n {{ return(default__make_temp_relation(base_relation, suffix)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_insert_overwrite_merge_sql(target, source, dest_columns, predicates, include_sql_header) -%}\n {#-- The only time include_sql_header is True: --#}\n {#-- BigQuery + insert_overwrite strategy + \"static\" partitions config --#}\n {#-- We should consider including the sql header at the materialization level instead --#}\n\n {%- set predicates = [] if predicates is none else [] + predicates -%}\n {%- set dest_cols_csv = get_quoted_csv(dest_columns | map(attribute=\"name\")) -%}\n {%- set sql_header = config.get('sql_header', none) -%}\n\n {{ sql_header if sql_header is not none and include_sql_header }}\n\n merge into {{ target }} as DBT_INTERNAL_DEST\n using {{ source }} as DBT_INTERNAL_SOURCE\n on FALSE\n\n when not matched by source\n {% if predicates %} and {{ predicates | join(' and ') }} {% endif %}\n then delete\n\n when not matched then insert\n ({{ dest_cols_csv }})\n values\n ({{ dest_cols_csv }})\n\n{% endmacro %}", "meta": {}, - "name": "default__make_intermediate_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "default__get_insert_overwrite_merge_sql", + "original_file_path": "macros/materializations/models/incremental/merge.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/materializations/models/incremental/merge.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__make_intermediate_relation" + "unique_id": "macro.dbt.default__get_insert_overwrite_merge_sql" }, - "macro.dbt.default__make_temp_relation": { + "macro.dbt.default__get_intervals_between": { "arguments": [], - "created_at": 1696859933.4303622, + "created_at": 1733768712.08381, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.statement", + "macro.dbt.datediff" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__make_temp_relation(base_relation, suffix) %}\n {%- set temp_identifier = base_relation.identifier ~ suffix -%}\n {%- set temp_relation = base_relation.incorporate(\n path={\"identifier\": temp_identifier}) -%}\n\n {{ return(temp_relation) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_intervals_between(start_date, end_date, datepart) -%}\n {%- call statement('get_intervals_between', fetch_result=True) %}\n\n select {{ dbt.datediff(start_date, end_date, datepart) }}\n\n {%- endcall -%}\n\n {%- set value_list = load_result('get_intervals_between') -%}\n\n {%- if value_list and value_list['data'] -%}\n {%- set values = value_list['data'] | map(attribute=0) | list %}\n {{ return(values[0]) }}\n {%- else -%}\n {{ return(1) }}\n {%- endif -%}\n\n{%- endmacro %}", "meta": {}, - "name": "default__make_temp_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "default__get_intervals_between", + "original_file_path": "macros/utils/date_spine.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/utils/date_spine.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__make_temp_relation" + "unique_id": "macro.dbt.default__get_intervals_between" }, - "macro.dbt.default__persist_docs": { + "macro.dbt.default__get_limit_sql": { "arguments": [], - "created_at": 1696859933.4391859, + "created_at": 1733768712.119213, "depends_on": { - "macros": [ - "macro.dbt.run_query", - "macro.dbt.alter_relation_comment", - "macro.dbt.alter_column_comment" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__persist_docs(relation, model, for_relation, for_columns) -%}\n {% if for_relation and config.persist_relation_docs() and model.description %}\n {% do run_query(alter_relation_comment(relation, model.description)) %}\n {% endif %}\n\n {% if for_columns and config.persist_column_docs() and model.columns %}\n {% do run_query(alter_column_comment(relation, model.columns)) %}\n {% endif %}\n{% endmacro %}", + "macro_sql": "{% macro default__get_limit_sql(sql, limit) %}\n {{ compiled_code }}\n {% if limit is not none %}\n limit {{ limit }}\n {%- endif -%}\n{% endmacro %}", "meta": {}, - "name": "default__persist_docs", - "original_file_path": "macros/adapters/persist_docs.sql", + "name": "default__get_limit_sql", + "original_file_path": "macros/adapters/show.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/persist_docs.sql", + "path": "macros/adapters/show.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__persist_docs" + "unique_id": "macro.dbt.default__get_limit_sql" }, - "macro.dbt.default__position": { + "macro.dbt.default__get_materialized_view_configuration_changes": { "arguments": [], - "created_at": 1696859933.419564, + "created_at": 1733768712.062294, "depends_on": { "macros": [] }, @@ -2785,66 +3213,67 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__position(substring_text, string_text) %}\n\n position(\n {{ substring_text }} in {{ string_text }}\n )\n\n{%- endmacro -%}", + "macro_sql": "{% macro default__get_materialized_view_configuration_changes(existing_relation, new_config) %}\n {{ exceptions.raise_compiler_error(\"Materialized views have not been implemented for this adapter.\") }}\n{% endmacro %}", "meta": {}, - "name": "default__position", - "original_file_path": "macros/utils/position.sql", + "name": "default__get_materialized_view_configuration_changes", + "original_file_path": "macros/relations/materialized_view/alter.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/position.sql", + "path": "macros/relations/materialized_view/alter.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__position" + "unique_id": "macro.dbt.default__get_materialized_view_configuration_changes" }, - "macro.dbt.default__post_snapshot": { + "macro.dbt.default__get_merge_sql": { "arguments": [], - "created_at": 1696859933.359317, + "created_at": 1733768711.980005, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_quoted_csv", + "macro.dbt.get_merge_update_columns" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__post_snapshot(staging_relation) %}\n {# no-op #}\n{% endmacro %}", + "macro_sql": "{% macro default__get_merge_sql(target, source, unique_key, dest_columns, incremental_predicates=none) -%}\n {%- set predicates = [] if incremental_predicates is none else [] + incremental_predicates -%}\n {%- set dest_cols_csv = get_quoted_csv(dest_columns | map(attribute=\"name\")) -%}\n {%- set merge_update_columns = config.get('merge_update_columns') -%}\n {%- set merge_exclude_columns = config.get('merge_exclude_columns') -%}\n {%- set update_columns = get_merge_update_columns(merge_update_columns, merge_exclude_columns, dest_columns) -%}\n {%- set sql_header = config.get('sql_header', none) -%}\n\n {% if unique_key %}\n {% if unique_key is sequence and unique_key is not mapping and unique_key is not string %}\n {% for key in unique_key %}\n {% set this_key_match %}\n DBT_INTERNAL_SOURCE.{{ key }} = DBT_INTERNAL_DEST.{{ key }}\n {% endset %}\n {% do predicates.append(this_key_match) %}\n {% endfor %}\n {% else %}\n {% set unique_key_match %}\n DBT_INTERNAL_SOURCE.{{ unique_key }} = DBT_INTERNAL_DEST.{{ unique_key }}\n {% endset %}\n {% do predicates.append(unique_key_match) %}\n {% endif %}\n {% else %}\n {% do predicates.append('FALSE') %}\n {% endif %}\n\n {{ sql_header if sql_header is not none }}\n\n merge into {{ target }} as DBT_INTERNAL_DEST\n using {{ source }} as DBT_INTERNAL_SOURCE\n on {{\"(\" ~ predicates | join(\") and (\") ~ \")\"}}\n\n {% if unique_key %}\n when matched then update set\n {% for column_name in update_columns -%}\n {{ column_name }} = DBT_INTERNAL_SOURCE.{{ column_name }}\n {%- if not loop.last %}, {%- endif %}\n {%- endfor %}\n {% endif %}\n\n when not matched then insert\n ({{ dest_cols_csv }})\n values\n ({{ dest_cols_csv }})\n\n{% endmacro %}", "meta": {}, - "name": "default__post_snapshot", - "original_file_path": "macros/materializations/snapshots/helpers.sql", + "name": "default__get_merge_sql", + "original_file_path": "macros/materializations/models/incremental/merge.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/helpers.sql", + "path": "macros/materializations/models/incremental/merge.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__post_snapshot" + "unique_id": "macro.dbt.default__get_merge_sql" }, - "macro.dbt.default__rename_relation": { + "macro.dbt.default__get_merge_update_columns": { "arguments": [], - "created_at": 1696859933.4316192, + "created_at": 1733768711.97191, "depends_on": { - "macros": [ - "macro.dbt.statement" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__rename_relation(from_relation, to_relation) -%}\n {% set target_name = adapter.quote_as_configured(to_relation.identifier, 'identifier') %}\n {% call statement('rename_relation') -%}\n alter table {{ from_relation }} rename to {{ target_name }}\n {%- endcall %}\n{% endmacro %}", + "macro_sql": "{% macro default__get_merge_update_columns(merge_update_columns, merge_exclude_columns, dest_columns) %}\n {%- set default_cols = dest_columns | map(attribute=\"quoted\") | list -%}\n\n {%- if merge_update_columns and merge_exclude_columns -%}\n {{ exceptions.raise_compiler_error(\n 'Model cannot specify merge_update_columns and merge_exclude_columns. Please update model to use only one config'\n )}}\n {%- elif merge_update_columns -%}\n {%- set update_columns = merge_update_columns -%}\n {%- elif merge_exclude_columns -%}\n {%- set update_columns = [] -%}\n {%- for column in dest_columns -%}\n {% if column.column | lower not in merge_exclude_columns | map(\"lower\") | list %}\n {%- do update_columns.append(column.quoted) -%}\n {% endif %}\n {%- endfor -%}\n {%- else -%}\n {%- set update_columns = default_cols -%}\n {%- endif -%}\n\n {{ return(update_columns) }}\n\n{% endmacro %}", "meta": {}, - "name": "default__rename_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "default__get_merge_update_columns", + "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/materializations/models/incremental/column_helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__rename_relation" + "unique_id": "macro.dbt.default__get_merge_update_columns" }, - "macro.dbt.default__replace": { + "macro.dbt.default__get_or_create_relation": { "arguments": [], - "created_at": 1696859933.415259, + "created_at": 1733768712.110579, "depends_on": { "macros": [] }, @@ -2853,44 +3282,42 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__replace(field, old_chars, new_chars) %}\n\n replace(\n {{ field }},\n {{ old_chars }},\n {{ new_chars }}\n )\n\n\n{% endmacro %}", + "macro_sql": "{% macro default__get_or_create_relation(database, schema, identifier, type) %}\n {%- set target_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) %}\n\n {% if target_relation %}\n {% do return([true, target_relation]) %}\n {% endif %}\n\n {%- set new_relation = api.Relation.create(\n database=database,\n schema=schema,\n identifier=identifier,\n type=type\n ) -%}\n {% do return([false, new_relation]) %}\n{% endmacro %}", "meta": {}, - "name": "default__replace", - "original_file_path": "macros/utils/replace.sql", + "name": "default__get_or_create_relation", + "original_file_path": "macros/adapters/relation.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/replace.sql", + "path": "macros/adapters/relation.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__replace" + "unique_id": "macro.dbt.default__get_or_create_relation" }, - "macro.dbt.default__reset_csv_table": { + "macro.dbt.default__get_powers_of_two": { "arguments": [], - "created_at": 1696859933.405142, + "created_at": 1733768712.086991, "depends_on": { - "macros": [ - "macro.dbt.create_csv_table" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__reset_csv_table(model, full_refresh, old_relation, agate_table) %}\n {% set sql = \"\" %}\n {% if full_refresh %}\n {{ adapter.drop_relation(old_relation) }}\n {% set sql = create_csv_table(model, agate_table) %}\n {% else %}\n {{ adapter.truncate_relation(old_relation) }}\n {% set sql = \"truncate table \" ~ old_relation %}\n {% endif %}\n\n {{ return(sql) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_powers_of_two(upper_bound) %}\n\n {% if upper_bound <= 0 %}\n {{ exceptions.raise_compiler_error(\"upper bound must be positive\") }}\n {% endif %}\n\n {% for _ in range(1, 100) %}\n {% if upper_bound <= 2 ** loop.index %}{{ return(loop.index) }}{% endif %}\n {% endfor %}\n\n{% endmacro %}", "meta": {}, - "name": "default__reset_csv_table", - "original_file_path": "macros/materializations/seeds/helpers.sql", + "name": "default__get_powers_of_two", + "original_file_path": "macros/utils/generate_series.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seeds/helpers.sql", + "path": "macros/utils/generate_series.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__reset_csv_table" + "unique_id": "macro.dbt.default__get_powers_of_two" }, - "macro.dbt.default__right": { + "macro.dbt.default__get_relation_last_modified": { "arguments": [], - "created_at": 1696859933.416939, + "created_at": 1733768712.1280901, "depends_on": { "macros": [] }, @@ -2899,20 +3326,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__right(string_text, length_expression) %}\n\n right(\n {{ string_text }},\n {{ length_expression }}\n )\n\n{%- endmacro -%}", + "macro_sql": "{% macro default__get_relation_last_modified(information_schema, relations) %}\n {{ exceptions.raise_not_implemented(\n 'get_relation_last_modified macro not implemented for adapter ' + adapter.type()) }}\n{% endmacro %}", "meta": {}, - "name": "default__right", - "original_file_path": "macros/utils/right.sql", + "name": "default__get_relation_last_modified", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/right.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__right" + "unique_id": "macro.dbt.default__get_relation_last_modified" }, - "macro.dbt.default__safe_cast": { + "macro.dbt.default__get_relations": { "arguments": [], - "created_at": 1696859933.418354, + "created_at": 1733768712.1276422, "depends_on": { "macros": [] }, @@ -2921,23 +3348,24 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__safe_cast(field, type) %}\n {# most databases don't support this function yet\n so we just need to use cast #}\n cast({{field}} as {{type}})\n{% endmacro %}", + "macro_sql": "{% macro default__get_relations() %}\n {{ exceptions.raise_not_implemented(\n 'get_relations macro not implemented for adapter '+adapter.type()) }}\n{% endmacro %}", "meta": {}, - "name": "default__safe_cast", - "original_file_path": "macros/utils/safe_cast.sql", + "name": "default__get_relations", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/safe_cast.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__safe_cast" + "unique_id": "macro.dbt.default__get_relations" }, - "macro.dbt.default__snapshot_get_time": { + "macro.dbt.default__get_rename_intermediate_sql": { "arguments": [], - "created_at": 1696859933.426052, + "created_at": 1733768712.059212, "depends_on": { "macros": [ - "macro.dbt.current_timestamp" + "macro.dbt.make_intermediate_relation", + "macro.dbt.get_rename_sql" ] }, "description": "", @@ -2945,20 +3373,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__snapshot_get_time() %}\n {{ current_timestamp() }}\n{% endmacro %}", + "macro_sql": "{%- macro default__get_rename_intermediate_sql(relation) -%}\n\n -- get the standard intermediate name\n {% set intermediate_relation = make_intermediate_relation(relation) %}\n\n {{ get_rename_sql(intermediate_relation, relation.identifier) }}\n\n{%- endmacro -%}", "meta": {}, - "name": "default__snapshot_get_time", - "original_file_path": "macros/adapters/timestamps.sql", + "name": "default__get_rename_intermediate_sql", + "original_file_path": "macros/relations/rename_intermediate.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/timestamps.sql", + "path": "macros/relations/rename_intermediate.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__snapshot_get_time" + "unique_id": "macro.dbt.default__get_rename_intermediate_sql" }, - "macro.dbt.default__snapshot_hash_arguments": { + "macro.dbt.default__get_rename_materialized_view_sql": { "arguments": [], - "created_at": 1696859933.3532312, + "created_at": 1733768712.060888, "depends_on": { "macros": [] }, @@ -2967,66 +3395,68 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__snapshot_hash_arguments(args) -%}\n md5({%- for arg in args -%}\n coalesce(cast({{ arg }} as varchar ), '')\n {% if not loop.last %} || '|' || {% endif %}\n {%- endfor -%})\n{%- endmacro %}", + "macro_sql": "{% macro default__get_rename_materialized_view_sql(relation, new_name) %}\n {{ exceptions.raise_compiler_error(\n \"`get_rename_materialized_view_sql` has not been implemented for this adapter.\"\n ) }}\n{% endmacro %}", "meta": {}, - "name": "default__snapshot_hash_arguments", - "original_file_path": "macros/materializations/snapshots/strategies.sql", + "name": "default__get_rename_materialized_view_sql", + "original_file_path": "macros/relations/materialized_view/rename.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/strategies.sql", + "path": "macros/relations/materialized_view/rename.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__snapshot_hash_arguments" + "unique_id": "macro.dbt.default__get_rename_materialized_view_sql" }, - "macro.dbt.default__snapshot_merge_sql": { + "macro.dbt.default__get_rename_sql": { "arguments": [], - "created_at": 1696859933.3498728, + "created_at": 1733768712.056698, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_rename_view_sql", + "macro.dbt.get_rename_table_sql", + "macro.dbt.get_rename_materialized_view_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__snapshot_merge_sql(target, source, insert_cols) -%}\n {%- set insert_cols_csv = insert_cols | join(', ') -%}\n\n merge into {{ target }} as DBT_INTERNAL_DEST\n using {{ source }} as DBT_INTERNAL_SOURCE\n on DBT_INTERNAL_SOURCE.dbt_scd_id = DBT_INTERNAL_DEST.dbt_scd_id\n\n when matched\n and DBT_INTERNAL_DEST.dbt_valid_to is null\n and DBT_INTERNAL_SOURCE.dbt_change_type in ('update', 'delete')\n then update\n set dbt_valid_to = DBT_INTERNAL_SOURCE.dbt_valid_to\n\n when not matched\n and DBT_INTERNAL_SOURCE.dbt_change_type = 'insert'\n then insert ({{ insert_cols_csv }})\n values ({{ insert_cols_csv }})\n\n{% endmacro %}", + "macro_sql": "{%- macro default__get_rename_sql(relation, new_name) -%}\n\n {%- if relation.is_view -%}\n {{ get_rename_view_sql(relation, new_name) }}\n\n {%- elif relation.is_table -%}\n {{ get_rename_table_sql(relation, new_name) }}\n\n {%- elif relation.is_materialized_view -%}\n {{ get_rename_materialized_view_sql(relation, new_name) }}\n\n {%- else -%}\n {{- exceptions.raise_compiler_error(\"`get_rename_sql` has not been implemented for: \" ~ relation.type ) -}}\n\n {%- endif -%}\n\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "default__snapshot_merge_sql", - "original_file_path": "macros/materializations/snapshots/snapshot_merge.sql", + "name": "default__get_rename_sql", + "original_file_path": "macros/relations/rename.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/snapshot_merge.sql", + "path": "macros/relations/rename.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__snapshot_merge_sql" + "unique_id": "macro.dbt.default__get_rename_sql" }, - "macro.dbt.default__snapshot_staging_table": { + "macro.dbt.default__get_rename_table_sql": { "arguments": [], - "created_at": 1696859933.3602822, + "created_at": 1733768712.067787, "depends_on": { - "macros": [ - "macro.dbt.snapshot_get_time" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__snapshot_staging_table(strategy, source_sql, target_relation) -%}\n\n with snapshot_query as (\n\n {{ source_sql }}\n\n ),\n\n snapshotted_data as (\n\n select *,\n {{ strategy.unique_key }} as dbt_unique_key\n\n from {{ target_relation }}\n where dbt_valid_to is null\n\n ),\n\n insertions_source_data as (\n\n select\n *,\n {{ strategy.unique_key }} as dbt_unique_key,\n {{ strategy.updated_at }} as dbt_updated_at,\n {{ strategy.updated_at }} as dbt_valid_from,\n nullif({{ strategy.updated_at }}, {{ strategy.updated_at }}) as dbt_valid_to,\n {{ strategy.scd_id }} as dbt_scd_id\n\n from snapshot_query\n ),\n\n updates_source_data as (\n\n select\n *,\n {{ strategy.unique_key }} as dbt_unique_key,\n {{ strategy.updated_at }} as dbt_updated_at,\n {{ strategy.updated_at }} as dbt_valid_from,\n {{ strategy.updated_at }} as dbt_valid_to\n\n from snapshot_query\n ),\n\n {%- if strategy.invalidate_hard_deletes %}\n\n deletes_source_data as (\n\n select\n *,\n {{ strategy.unique_key }} as dbt_unique_key\n from snapshot_query\n ),\n {% endif %}\n\n insertions as (\n\n select\n 'insert' as dbt_change_type,\n source_data.*\n\n from insertions_source_data as source_data\n left outer join snapshotted_data on snapshotted_data.dbt_unique_key = source_data.dbt_unique_key\n where snapshotted_data.dbt_unique_key is null\n or (\n snapshotted_data.dbt_unique_key is not null\n and (\n {{ strategy.row_changed }}\n )\n )\n\n ),\n\n updates as (\n\n select\n 'update' as dbt_change_type,\n source_data.*,\n snapshotted_data.dbt_scd_id\n\n from updates_source_data as source_data\n join snapshotted_data on snapshotted_data.dbt_unique_key = source_data.dbt_unique_key\n where (\n {{ strategy.row_changed }}\n )\n )\n\n {%- if strategy.invalidate_hard_deletes -%}\n ,\n\n deletes as (\n\n select\n 'delete' as dbt_change_type,\n source_data.*,\n {{ snapshot_get_time() }} as dbt_valid_from,\n {{ snapshot_get_time() }} as dbt_updated_at,\n {{ snapshot_get_time() }} as dbt_valid_to,\n snapshotted_data.dbt_scd_id\n\n from snapshotted_data\n left join deletes_source_data as source_data on snapshotted_data.dbt_unique_key = source_data.dbt_unique_key\n where source_data.dbt_unique_key is null\n )\n {%- endif %}\n\n select * from insertions\n union all\n select * from updates\n {%- if strategy.invalidate_hard_deletes %}\n union all\n select * from deletes\n {%- endif %}\n\n{%- endmacro %}", + "macro_sql": "{% macro default__get_rename_table_sql(relation, new_name) %}\n {{ exceptions.raise_compiler_error(\n \"`get_rename_table_sql` has not been implemented for this adapter.\"\n ) }}\n{% endmacro %}", "meta": {}, - "name": "default__snapshot_staging_table", - "original_file_path": "macros/materializations/snapshots/helpers.sql", + "name": "default__get_rename_table_sql", + "original_file_path": "macros/relations/table/rename.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/helpers.sql", + "path": "macros/relations/table/rename.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__snapshot_staging_table" + "unique_id": "macro.dbt.default__get_rename_table_sql" }, - "macro.dbt.default__snapshot_string_as_time": { + "macro.dbt.default__get_rename_view_sql": { "arguments": [], - "created_at": 1696859933.353985, + "created_at": 1733768712.073762, "depends_on": { "macros": [] }, @@ -3035,20 +3465,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__snapshot_string_as_time(timestamp) %}\n {% do exceptions.raise_not_implemented(\n 'snapshot_string_as_time macro not implemented for adapter '+adapter.type()\n ) %}\n{% endmacro %}", + "macro_sql": "{% macro default__get_rename_view_sql(relation, new_name) %}\n {{ exceptions.raise_compiler_error(\n \"`get_rename_view_sql` has not been implemented for this adapter.\"\n ) }}\n{% endmacro %}", "meta": {}, - "name": "default__snapshot_string_as_time", - "original_file_path": "macros/materializations/snapshots/strategies.sql", + "name": "default__get_rename_view_sql", + "original_file_path": "macros/relations/view/rename.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/strategies.sql", + "path": "macros/relations/view/rename.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__snapshot_string_as_time" + "unique_id": "macro.dbt.default__get_rename_view_sql" }, - "macro.dbt.default__split_part": { + "macro.dbt.default__get_replace_materialized_view_sql": { "arguments": [], - "created_at": 1696859933.423578, + "created_at": 1733768712.060069, "depends_on": { "macros": [] }, @@ -3057,42 +3487,52 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__split_part(string_text, delimiter_text, part_number) %}\n\n split_part(\n {{ string_text }},\n {{ delimiter_text }},\n {{ part_number }}\n )\n\n{% endmacro %}", + "macro_sql": "{% macro default__get_replace_materialized_view_sql(relation, sql) %}\n {{ exceptions.raise_compiler_error(\n \"`get_replace_materialized_view_sql` has not been implemented for this adapter.\"\n ) }}\n{% endmacro %}", "meta": {}, - "name": "default__split_part", - "original_file_path": "macros/utils/split_part.sql", + "name": "default__get_replace_materialized_view_sql", + "original_file_path": "macros/relations/materialized_view/replace.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/split_part.sql", + "path": "macros/relations/materialized_view/replace.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__split_part" + "unique_id": "macro.dbt.default__get_replace_materialized_view_sql" }, - "macro.dbt.default__string_literal": { + "macro.dbt.default__get_replace_sql": { "arguments": [], - "created_at": 1696859933.419806, + "created_at": 1733768712.0539079, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_replace_view_sql", + "macro.dbt.get_replace_table_sql", + "macro.dbt.get_replace_materialized_view_sql", + "macro.dbt.get_create_intermediate_sql", + "macro.dbt.get_create_backup_sql", + "macro.dbt.get_rename_intermediate_sql", + "macro.dbt.get_drop_backup_sql", + "macro.dbt.get_drop_sql", + "macro.dbt.get_create_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__string_literal(value) -%}\n '{{ value }}'\n{%- endmacro %}", + "macro_sql": "{% macro default__get_replace_sql(existing_relation, target_relation, sql) %}\n\n {# /* use a create or replace statement if possible */ #}\n\n {% set is_replaceable = existing_relation.type == target_relation_type and existing_relation.can_be_replaced %}\n\n {% if is_replaceable and existing_relation.is_view %}\n {{ get_replace_view_sql(target_relation, sql) }}\n\n {% elif is_replaceable and existing_relation.is_table %}\n {{ get_replace_table_sql(target_relation, sql) }}\n\n {% elif is_replaceable and existing_relation.is_materialized_view %}\n {{ get_replace_materialized_view_sql(target_relation, sql) }}\n\n {# /* a create or replace statement is not possible, so try to stage and/or backup to be safe */ #}\n\n {# /* create target_relation as an intermediate relation, then swap it out with the existing one using a backup */ #}\n {%- elif target_relation.can_be_renamed and existing_relation.can_be_renamed -%}\n {{ get_create_intermediate_sql(target_relation, sql) }};\n {{ get_create_backup_sql(existing_relation) }};\n {{ get_rename_intermediate_sql(target_relation) }};\n {{ get_drop_backup_sql(existing_relation) }}\n\n {# /* create target_relation as an intermediate relation, then swap it out with the existing one without using a backup */ #}\n {%- elif target_relation.can_be_renamed -%}\n {{ get_create_intermediate_sql(target_relation, sql) }};\n {{ get_drop_sql(existing_relation) }};\n {{ get_rename_intermediate_sql(target_relation) }}\n\n {# /* create target_relation in place by first backing up the existing relation */ #}\n {%- elif existing_relation.can_be_renamed -%}\n {{ get_create_backup_sql(existing_relation) }};\n {{ get_create_sql(target_relation, sql) }};\n {{ get_drop_backup_sql(existing_relation) }}\n\n {# /* no renaming is allowed, so just drop and create */ #}\n {%- else -%}\n {{ get_drop_sql(existing_relation) }};\n {{ get_create_sql(target_relation, sql) }}\n\n {%- endif -%}\n\n{% endmacro %}", "meta": {}, - "name": "default__string_literal", - "original_file_path": "macros/utils/literal.sql", + "name": "default__get_replace_sql", + "original_file_path": "macros/relations/replace.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/literal.sql", + "path": "macros/relations/replace.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__string_literal" + "unique_id": "macro.dbt.default__get_replace_sql" }, - "macro.dbt.default__support_multiple_grantees_per_dcl_statement": { + "macro.dbt.default__get_replace_table_sql": { "arguments": [], - "created_at": 1696859933.434727, + "created_at": 1733768712.0673852, "depends_on": { "macros": [] }, @@ -3101,20 +3541,20 @@ "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro default__support_multiple_grantees_per_dcl_statement() -%}\n {{ return(True) }}\n{%- endmacro -%}\n\n\n", + "macro_sql": "{% macro default__get_replace_table_sql(relation, sql) %}\n {{ exceptions.raise_compiler_error(\n \"`get_replace_table_sql` has not been implemented for this adapter.\"\n ) }}\n{% endmacro %}", "meta": {}, - "name": "default__support_multiple_grantees_per_dcl_statement", - "original_file_path": "macros/adapters/apply_grants.sql", + "name": "default__get_replace_table_sql", + "original_file_path": "macros/relations/table/replace.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/apply_grants.sql", + "path": "macros/relations/table/replace.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__support_multiple_grantees_per_dcl_statement" + "unique_id": "macro.dbt.default__get_replace_table_sql" }, - "macro.dbt.default__test_accepted_values": { + "macro.dbt.default__get_replace_view_sql": { "arguments": [], - "created_at": 1696859933.4098072, + "created_at": 1733768712.07186, "depends_on": { "macros": [] }, @@ -3123,66 +3563,66 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__test_accepted_values(model, column_name, values, quote=True) %}\n\nwith all_values as (\n\n select\n {{ column_name }} as value_field,\n count(*) as n_records\n\n from {{ model }}\n group by {{ column_name }}\n\n)\n\nselect *\nfrom all_values\nwhere value_field not in (\n {% for value in values -%}\n {% if quote -%}\n '{{ value }}'\n {%- else -%}\n {{ value }}\n {%- endif -%}\n {%- if not loop.last -%},{%- endif %}\n {%- endfor %}\n)\n\n{% endmacro %}", + "macro_sql": "{% macro default__get_replace_view_sql(relation, sql) %}\n {{ exceptions.raise_compiler_error(\n \"`get_replace_view_sql` has not been implemented for this adapter.\"\n ) }}\n{% endmacro %}", "meta": {}, - "name": "default__test_accepted_values", - "original_file_path": "macros/generic_test_sql/accepted_values.sql", + "name": "default__get_replace_view_sql", + "original_file_path": "macros/relations/view/replace.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/generic_test_sql/accepted_values.sql", + "path": "macros/relations/view/replace.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__test_accepted_values" + "unique_id": "macro.dbt.default__get_replace_view_sql" }, - "macro.dbt.default__test_not_null": { + "macro.dbt.default__get_revoke_sql": { "arguments": [], - "created_at": 1696859933.409229, + "created_at": 1733768712.115904, "depends_on": { - "macros": [ - "macro.dbt.should_store_failures" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__test_not_null(model, column_name) %}\n\n{% set column_list = '*' if should_store_failures() else column_name %}\n\nselect {{ column_list }}\nfrom {{ model }}\nwhere {{ column_name }} is null\n\n{% endmacro %}", + "macro_sql": "\n\n{%- macro default__get_revoke_sql(relation, privilege, grantees) -%}\n revoke {{ privilege }} on {{ relation.render() }} from {{ grantees | join(', ') }}\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "default__test_not_null", - "original_file_path": "macros/generic_test_sql/not_null.sql", + "name": "default__get_revoke_sql", + "original_file_path": "macros/adapters/apply_grants.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/generic_test_sql/not_null.sql", + "path": "macros/adapters/apply_grants.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__test_not_null" + "unique_id": "macro.dbt.default__get_revoke_sql" }, - "macro.dbt.default__test_relationships": { + "macro.dbt.default__get_select_subquery": { "arguments": [], - "created_at": 1696859933.4090219, + "created_at": 1733768712.070566, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__get_column_names" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__test_relationships(model, column_name, to, field) %}\n\nwith child as (\n select {{ column_name }} as from_field\n from {{ model }}\n where {{ column_name }} is not null\n),\n\nparent as (\n select {{ field }} as to_field\n from {{ to }}\n)\n\nselect\n from_field\n\nfrom child\nleft join parent\n on child.from_field = parent.to_field\n\nwhere parent.to_field is null\n\n{% endmacro %}", + "macro_sql": "{% macro default__get_select_subquery(sql) %}\n select {{ adapter.dispatch('get_column_names', 'dbt')() }}\n from (\n {{ sql }}\n ) as model_subq\n{%- endmacro %}", "meta": {}, - "name": "default__test_relationships", - "original_file_path": "macros/generic_test_sql/relationships.sql", + "name": "default__get_select_subquery", + "original_file_path": "macros/relations/table/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/generic_test_sql/relationships.sql", + "path": "macros/relations/table/create.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__test_relationships" + "unique_id": "macro.dbt.default__get_select_subquery" }, - "macro.dbt.default__test_unique": { + "macro.dbt.default__get_show_grant_sql": { "arguments": [], - "created_at": 1696859933.409406, + "created_at": 1733768712.1147678, "depends_on": { "macros": [] }, @@ -3191,66 +3631,66 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__test_unique(model, column_name) %}\n\nselect\n {{ column_name }} as unique_field,\n count(*) as n_records\n\nfrom {{ model }}\nwhere {{ column_name }} is not null\ngroup by {{ column_name }}\nhaving count(*) > 1\n\n{% endmacro %}", + "macro_sql": "{% macro default__get_show_grant_sql(relation) %}\n show grants on {{ relation.render() }}\n{% endmacro %}", "meta": {}, - "name": "default__test_unique", - "original_file_path": "macros/generic_test_sql/unique.sql", + "name": "default__get_show_grant_sql", + "original_file_path": "macros/adapters/apply_grants.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/generic_test_sql/unique.sql", + "path": "macros/adapters/apply_grants.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__test_unique" + "unique_id": "macro.dbt.default__get_show_grant_sql" }, - "macro.dbt.default__truncate_relation": { + "macro.dbt.default__get_show_indexes_sql": { "arguments": [], - "created_at": 1696859933.431284, + "created_at": 1733768712.106099, "depends_on": { - "macros": [ - "macro.dbt.statement" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__truncate_relation(relation) -%}\n {% call statement('truncate_relation') -%}\n truncate table {{ relation }}\n {%- endcall %}\n{% endmacro %}", + "macro_sql": "{% macro default__get_show_indexes_sql(relation) -%}\n {{ exceptions.raise_compiler_error(\"`get_show_indexes_sql has not been implemented for this adapter.\") }}\n{%- endmacro %}", "meta": {}, - "name": "default__truncate_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "default__get_show_indexes_sql", + "original_file_path": "macros/adapters/indexes.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/adapters/indexes.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__truncate_relation" + "unique_id": "macro.dbt.default__get_show_indexes_sql" }, - "macro.dbt.default__type_bigint": { + "macro.dbt.default__get_table_columns_and_constraints": { "arguments": [], - "created_at": 1696859933.421519, + "created_at": 1733768712.063787, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.table_columns_and_constraints" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro default__type_bigint() %}\n {{ return(api.Column.translate_type(\"bigint\")) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_table_columns_and_constraints() -%}\n {{ return(table_columns_and_constraints()) }}\n{%- endmacro %}", "meta": {}, - "name": "default__type_bigint", - "original_file_path": "macros/utils/data_types.sql", + "name": "default__get_table_columns_and_constraints", + "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/relations/column/columns_spec_ddl.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__type_bigint" + "unique_id": "macro.dbt.default__get_table_columns_and_constraints" }, - "macro.dbt.default__type_boolean": { + "macro.dbt.default__get_test_sql": { "arguments": [], - "created_at": 1696859933.4219398, + "created_at": 1733768711.952368, "depends_on": { "macros": [] }, @@ -3259,20 +3699,20 @@ "node_color": null, "show": true }, - "macro_sql": "{%- macro default__type_boolean() -%}\n {{ return(api.Column.translate_type(\"boolean\")) }}\n{%- endmacro -%}\n\n", + "macro_sql": "{% macro default__get_test_sql(main_sql, fail_calc, warn_if, error_if, limit) -%}\n select\n {{ fail_calc }} as failures,\n {{ fail_calc }} {{ warn_if }} as should_warn,\n {{ fail_calc }} {{ error_if }} as should_error\n from (\n {{ main_sql }}\n {{ \"limit \" ~ limit if limit != none }}\n ) dbt_internal_test\n{%- endmacro %}", "meta": {}, - "name": "default__type_boolean", - "original_file_path": "macros/utils/data_types.sql", + "name": "default__get_test_sql", + "original_file_path": "macros/materializations/tests/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/materializations/tests/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__type_boolean" + "unique_id": "macro.dbt.default__get_test_sql" }, - "macro.dbt.default__type_float": { + "macro.dbt.default__get_true_sql": { "arguments": [], - "created_at": 1696859933.42106, + "created_at": 1733768711.939322, "depends_on": { "macros": [] }, @@ -3281,42 +3721,44 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__type_float() %}\n {{ return(api.Column.translate_type(\"float\")) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_true_sql() %}\n {{ return('TRUE') }}\n{% endmacro %}", "meta": {}, - "name": "default__type_float", - "original_file_path": "macros/utils/data_types.sql", + "name": "default__get_true_sql", + "original_file_path": "macros/materializations/snapshots/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/materializations/snapshots/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__type_float" + "unique_id": "macro.dbt.default__get_true_sql" }, - "macro.dbt.default__type_int": { + "macro.dbt.default__get_unit_test_sql": { "arguments": [], - "created_at": 1696859933.42173, + "created_at": 1733768711.953221, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.string_literal" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{%- macro default__type_int() -%}\n {{ return(api.Column.translate_type(\"integer\")) }}\n{%- endmacro -%}\n\n", + "macro_sql": "{% macro default__get_unit_test_sql(main_sql, expected_fixture_sql, expected_column_names) -%}\n-- Build actual result given inputs\nwith dbt_internal_unit_test_actual as (\n select\n {% for expected_column_name in expected_column_names %}{{expected_column_name}}{% if not loop.last -%},{% endif %}{%- endfor -%}, {{ dbt.string_literal(\"actual\") }} as {{ adapter.quote(\"actual_or_expected\") }}\n from (\n {{ main_sql }}\n ) _dbt_internal_unit_test_actual\n),\n-- Build expected result\ndbt_internal_unit_test_expected as (\n select\n {% for expected_column_name in expected_column_names %}{{expected_column_name}}{% if not loop.last -%}, {% endif %}{%- endfor -%}, {{ dbt.string_literal(\"expected\") }} as {{ adapter.quote(\"actual_or_expected\") }}\n from (\n {{ expected_fixture_sql }}\n ) _dbt_internal_unit_test_expected\n)\n-- Union actual and expected results\nselect * from dbt_internal_unit_test_actual\nunion all\nselect * from dbt_internal_unit_test_expected\n{%- endmacro %}", "meta": {}, - "name": "default__type_int", - "original_file_path": "macros/utils/data_types.sql", + "name": "default__get_unit_test_sql", + "original_file_path": "macros/materializations/tests/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/materializations/tests/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__type_int" + "unique_id": "macro.dbt.default__get_unit_test_sql" }, - "macro.dbt.default__type_numeric": { + "macro.dbt.default__get_where_subquery": { "arguments": [], - "created_at": 1696859933.4213, + "created_at": 1733768711.953933, "depends_on": { "macros": [] }, @@ -3325,20 +3767,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__type_numeric() %}\n {{ return(api.Column.numeric_type(\"numeric\", 28, 6)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__get_where_subquery(relation) -%}\n {% set where = config.get('where', '') %}\n {% if where %}\n {%- set filtered -%}\n (select * from {{ relation }} where {{ where }}) dbt_subquery\n {%- endset -%}\n {% do return(filtered) %}\n {%- else -%}\n {% do return(relation) %}\n {%- endif -%}\n{%- endmacro %}", "meta": {}, - "name": "default__type_numeric", - "original_file_path": "macros/utils/data_types.sql", + "name": "default__get_where_subquery", + "original_file_path": "macros/materializations/tests/where_subquery.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/materializations/tests/where_subquery.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__type_numeric" + "unique_id": "macro.dbt.default__get_where_subquery" }, - "macro.dbt.default__type_string": { + "macro.dbt.default__handle_existing_table": { "arguments": [], - "created_at": 1696859933.4206212, + "created_at": 1733768712.0733728, "depends_on": { "macros": [] }, @@ -3347,20 +3789,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__type_string() %}\n {{ return(api.Column.translate_type(\"string\")) }}\n{% endmacro %}", + "macro_sql": "{% macro default__handle_existing_table(full_refresh, old_relation) %}\n {{ log(\"Dropping relation \" ~ old_relation.render() ~ \" because it is of type \" ~ old_relation.type) }}\n {{ adapter.drop_relation(old_relation) }}\n{% endmacro %}", "meta": {}, - "name": "default__type_string", - "original_file_path": "macros/utils/data_types.sql", + "name": "default__handle_existing_table", + "original_file_path": "macros/relations/view/replace.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/relations/view/replace.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__type_string" + "unique_id": "macro.dbt.default__handle_existing_table" }, - "macro.dbt.default__type_timestamp": { + "macro.dbt.default__hash": { "arguments": [], - "created_at": 1696859933.420844, + "created_at": 1733768712.092513, "depends_on": { "macros": [] }, @@ -3369,45 +3811,42 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro default__type_timestamp() %}\n {{ return(api.Column.translate_type(\"timestamp\")) }}\n{% endmacro %}", + "macro_sql": "{% macro default__hash(field) -%}\n md5(cast({{ field }} as {{ api.Column.translate_type('string') }}))\n{%- endmacro %}", "meta": {}, - "name": "default__type_timestamp", - "original_file_path": "macros/utils/data_types.sql", + "name": "default__hash", + "original_file_path": "macros/utils/hash.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/utils/hash.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default__type_timestamp" + "unique_id": "macro.dbt.default__hash" }, - "macro.dbt.default_last_day": { + "macro.dbt.default__information_schema_name": { "arguments": [], - "created_at": 1696859933.42298, + "created_at": 1733768712.1256452, "depends_on": { - "macros": [ - "macro.dbt.dateadd", - "macro.dbt.date_trunc" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro default_last_day(date, datepart) -%}\n cast(\n {{dbt.dateadd('day', '-1',\n dbt.dateadd(datepart, '1', dbt.date_trunc(datepart, date))\n )}}\n as date)\n{%- endmacro -%}\n\n", + "macro_sql": "{% macro default__information_schema_name(database) -%}\n {%- if database -%}\n {{ database }}.INFORMATION_SCHEMA\n {%- else -%}\n INFORMATION_SCHEMA\n {%- endif -%}\n{%- endmacro %}", "meta": {}, - "name": "default_last_day", - "original_file_path": "macros/utils/last_day.sql", + "name": "default__information_schema_name", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/last_day.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.default_last_day" + "unique_id": "macro.dbt.default__information_schema_name" }, - "macro.dbt.diff_column_data_types": { + "macro.dbt.default__intersect": { "arguments": [], - "created_at": 1696859933.3699222, + "created_at": 1733768712.089279, "depends_on": { "macros": [] }, @@ -3416,66 +3855,66 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro diff_column_data_types(source_columns, target_columns) %}\n\n {% set result = [] %}\n {% for sc in source_columns %}\n {% set tc = target_columns | selectattr(\"name\", \"equalto\", sc.name) | list | first %}\n {% if tc %}\n {% if sc.data_type != tc.data_type and not sc.can_expand_to(other_column=tc) %}\n {{ result.append( { 'column_name': tc.name, 'new_type': sc.data_type } ) }}\n {% endif %}\n {% endif %}\n {% endfor %}\n\n {{ return(result) }}\n\n{% endmacro %}", + "macro_sql": "{% macro default__intersect() %}\n\n intersect\n\n{% endmacro %}", "meta": {}, - "name": "diff_column_data_types", - "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", + "name": "default__intersect", + "original_file_path": "macros/utils/intersect.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/column_helpers.sql", + "path": "macros/utils/intersect.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.diff_column_data_types" + "unique_id": "macro.dbt.default__intersect" }, - "macro.dbt.diff_columns": { + "macro.dbt.default__last_day": { "arguments": [], - "created_at": 1696859933.369442, + "created_at": 1733768712.098767, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default_last_day" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro diff_columns(source_columns, target_columns) %}\n\n {% set result = [] %}\n {% set source_names = source_columns | map(attribute = 'column') | list %}\n {% set target_names = target_columns | map(attribute = 'column') | list %}\n\n {# --check whether the name attribute exists in the target - this does not perform a data type check #}\n {% for sc in source_columns %}\n {% if sc.name not in target_names %}\n {{ result.append(sc) }}\n {% endif %}\n {% endfor %}\n\n {{ return(result) }}\n\n{% endmacro %}", + "macro_sql": "{% macro default__last_day(date, datepart) -%}\n {{dbt.default_last_day(date, datepart)}}\n{%- endmacro %}", "meta": {}, - "name": "diff_columns", - "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", + "name": "default__last_day", + "original_file_path": "macros/utils/last_day.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/column_helpers.sql", + "path": "macros/utils/last_day.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.diff_columns" + "unique_id": "macro.dbt.default__last_day" }, - "macro.dbt.drop_relation": { + "macro.dbt.default__length": { "arguments": [], - "created_at": 1696859933.430892, + "created_at": 1733768712.0880818, "depends_on": { - "macros": [ - "macro.dbt_sqlite.sqlite__drop_relation" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro drop_relation(relation) -%}\n {{ return(adapter.dispatch('drop_relation', 'dbt')(relation)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__length(expression) %}\n\n length(\n {{ expression }}\n )\n\n{%- endmacro -%}", "meta": {}, - "name": "drop_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "default__length", + "original_file_path": "macros/utils/length.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/utils/length.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.drop_relation" + "unique_id": "macro.dbt.default__length" }, - "macro.dbt.drop_relation_if_exists": { + "macro.dbt.default__list_relations_without_caching": { "arguments": [], - "created_at": 1696859933.432588, + "created_at": 1733768712.126833, "depends_on": { "macros": [] }, @@ -3484,23 +3923,24 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro drop_relation_if_exists(relation) %}\n {% if relation is not none %}\n {{ adapter.drop_relation(relation) }}\n {% endif %}\n{% endmacro %}", + "macro_sql": "{% macro default__list_relations_without_caching(schema_relation) %}\n {{ exceptions.raise_not_implemented(\n 'list_relations_without_caching macro not implemented for adapter '+adapter.type()) }}\n{% endmacro %}", "meta": {}, - "name": "drop_relation_if_exists", - "original_file_path": "macros/adapters/relation.sql", + "name": "default__list_relations_without_caching", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.drop_relation_if_exists" + "unique_id": "macro.dbt.default__list_relations_without_caching" }, - "macro.dbt.drop_schema": { + "macro.dbt.default__list_schemas": { "arguments": [], - "created_at": 1696859933.4252858, + "created_at": 1733768712.12604, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__drop_schema" + "macro.dbt.information_schema_name", + "macro.dbt.run_query" ] }, "description": "", @@ -3508,47 +3948,47 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro drop_schema(relation) -%}\n {{ adapter.dispatch('drop_schema', 'dbt')(relation) }}\n{% endmacro %}", + "macro_sql": "{% macro default__list_schemas(database) -%}\n {% set sql %}\n select distinct schema_name\n from {{ information_schema_name(database) }}.SCHEMATA\n where catalog_name ilike '{{ database }}'\n {% endset %}\n {{ return(run_query(sql)) }}\n{% endmacro %}", "meta": {}, - "name": "drop_schema", - "original_file_path": "macros/adapters/schema.sql", + "name": "default__list_schemas", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/schema.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.drop_schema" + "unique_id": "macro.dbt.default__list_schemas" }, - "macro.dbt.escape_single_quotes": { + "macro.dbt.default__listagg": { "arguments": [], - "created_at": 1696859933.416533, + "created_at": 1733768712.0910652, "depends_on": { - "macros": [ - "macro.dbt.default__escape_single_quotes" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro escape_single_quotes(expression) %}\n {{ return(adapter.dispatch('escape_single_quotes', 'dbt') (expression)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__listagg(measure, delimiter_text, order_by_clause, limit_num) -%}\n\n {% if limit_num -%}\n array_to_string(\n array_slice(\n array_agg(\n {{ measure }}\n ){% if order_by_clause -%}\n within group ({{ order_by_clause }})\n {%- endif %}\n ,0\n ,{{ limit_num }}\n ),\n {{ delimiter_text }}\n )\n {%- else %}\n listagg(\n {{ measure }},\n {{ delimiter_text }}\n )\n {% if order_by_clause -%}\n within group ({{ order_by_clause }})\n {%- endif %}\n {%- endif %}\n\n{%- endmacro %}", "meta": {}, - "name": "escape_single_quotes", - "original_file_path": "macros/utils/escape_single_quotes.sql", + "name": "default__listagg", + "original_file_path": "macros/utils/listagg.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/escape_single_quotes.sql", + "path": "macros/utils/listagg.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.escape_single_quotes" + "unique_id": "macro.dbt.default__listagg" }, - "macro.dbt.except": { + "macro.dbt.default__load_csv_rows": { "arguments": [], - "created_at": 1696859933.4148521, + "created_at": 1733768712.047956, "depends_on": { "macros": [ - "macro.dbt.default__except" + "macro.dbt.get_batch_size", + "macro.dbt.get_seed_column_quoted_csv", + "macro.dbt.get_binding_char" ] }, "description": "", @@ -3556,47 +3996,45 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro except() %}\n {{ return(adapter.dispatch('except', 'dbt')()) }}\n{% endmacro %}", + "macro_sql": "{% macro default__load_csv_rows(model, agate_table) %}\n\n {% set batch_size = get_batch_size() %}\n\n {% set cols_sql = get_seed_column_quoted_csv(model, agate_table.column_names) %}\n {% set bindings = [] %}\n\n {% set statements = [] %}\n\n {% for chunk in agate_table.rows | batch(batch_size) %}\n {% set bindings = [] %}\n\n {% for row in chunk %}\n {% do bindings.extend(row) %}\n {% endfor %}\n\n {% set sql %}\n insert into {{ this.render() }} ({{ cols_sql }}) values\n {% for row in chunk -%}\n ({%- for column in agate_table.column_names -%}\n {{ get_binding_char() }}\n {%- if not loop.last%},{%- endif %}\n {%- endfor -%})\n {%- if not loop.last%},{%- endif %}\n {%- endfor %}\n {% endset %}\n\n {% do adapter.add_query(sql, bindings=bindings, abridge_sql_log=True) %}\n\n {% if loop.index0 == 0 %}\n {% do statements.append(sql) %}\n {% endif %}\n {% endfor %}\n\n {# Return SQL so we can render it out into the compiled files #}\n {{ return(statements[0]) }}\n{% endmacro %}", "meta": {}, - "name": "except", - "original_file_path": "macros/utils/except.sql", + "name": "default__load_csv_rows", + "original_file_path": "macros/materializations/seeds/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/except.sql", + "path": "macros/materializations/seeds/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.except" + "unique_id": "macro.dbt.default__load_csv_rows" }, - "macro.dbt.generate_alias_name": { + "macro.dbt.default__make_backup_relation": { "arguments": [], - "created_at": 1696859933.407381, + "created_at": 1733768712.109487, "depends_on": { - "macros": [ - "macro.dbt.default__generate_alias_name" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro generate_alias_name(custom_alias_name=none, node=none) -%}\n {% do return(adapter.dispatch('generate_alias_name', 'dbt')(custom_alias_name, node)) %}\n{%- endmacro %}", + "macro_sql": "{% macro default__make_backup_relation(base_relation, backup_relation_type, suffix) %}\n {%- set backup_identifier = base_relation.identifier ~ suffix -%}\n {%- set backup_relation = base_relation.incorporate(\n path={\"identifier\": backup_identifier},\n type=backup_relation_type\n ) -%}\n {{ return(backup_relation) }}\n{% endmacro %}", "meta": {}, - "name": "generate_alias_name", - "original_file_path": "macros/get_custom_name/get_custom_alias.sql", + "name": "default__make_backup_relation", + "original_file_path": "macros/adapters/relation.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/get_custom_name/get_custom_alias.sql", + "path": "macros/adapters/relation.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.generate_alias_name" + "unique_id": "macro.dbt.default__make_backup_relation" }, - "macro.dbt.generate_database_name": { + "macro.dbt.default__make_intermediate_relation": { "arguments": [], - "created_at": 1696859933.4085891, + "created_at": 1733768712.108427, "depends_on": { "macros": [ - "macro.dbt.default__generate_database_name" + "macro.dbt.default__make_temp_relation" ] }, "description": "", @@ -3604,141 +4042,137 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro generate_database_name(custom_database_name=none, node=none) -%}\n {% do return(adapter.dispatch('generate_database_name', 'dbt')(custom_database_name, node)) %}\n{%- endmacro %}", + "macro_sql": "{% macro default__make_intermediate_relation(base_relation, suffix) %}\n {{ return(default__make_temp_relation(base_relation, suffix)) }}\n{% endmacro %}", "meta": {}, - "name": "generate_database_name", - "original_file_path": "macros/get_custom_name/get_custom_database.sql", + "name": "default__make_intermediate_relation", + "original_file_path": "macros/adapters/relation.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/get_custom_name/get_custom_database.sql", + "path": "macros/adapters/relation.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.generate_database_name" + "unique_id": "macro.dbt.default__make_intermediate_relation" }, - "macro.dbt.generate_schema_name": { + "macro.dbt.default__make_temp_relation": { "arguments": [], - "created_at": 1696859933.407924, + "created_at": 1733768712.108973, "depends_on": { - "macros": [ - "macro.dbt.default__generate_schema_name" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro generate_schema_name(custom_schema_name=none, node=none) -%}\n {{ return(adapter.dispatch('generate_schema_name', 'dbt')(custom_schema_name, node)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__make_temp_relation(base_relation, suffix) %}\n {%- set temp_identifier = base_relation.identifier ~ suffix -%}\n {%- set temp_relation = base_relation.incorporate(\n path={\"identifier\": temp_identifier}) -%}\n\n {{ return(temp_relation) }}\n{% endmacro %}", "meta": {}, - "name": "generate_schema_name", - "original_file_path": "macros/get_custom_name/get_custom_schema.sql", + "name": "default__make_temp_relation", + "original_file_path": "macros/adapters/relation.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/get_custom_name/get_custom_schema.sql", + "path": "macros/adapters/relation.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.generate_schema_name" + "unique_id": "macro.dbt.default__make_temp_relation" }, - "macro.dbt.generate_schema_name_for_env": { + "macro.dbt.default__persist_docs": { "arguments": [], - "created_at": 1696859933.408309, + "created_at": 1733768712.121331, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.run_query", + "macro.dbt.alter_relation_comment", + "macro.dbt.alter_column_comment" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro generate_schema_name_for_env(custom_schema_name, node) -%}\n\n {%- set default_schema = target.schema -%}\n {%- if target.name == 'prod' and custom_schema_name is not none -%}\n\n {{ custom_schema_name | trim }}\n\n {%- else -%}\n\n {{ default_schema }}\n\n {%- endif -%}\n\n{%- endmacro %}", + "macro_sql": "{% macro default__persist_docs(relation, model, for_relation, for_columns) -%}\n {% if for_relation and config.persist_relation_docs() and model.description %}\n {% do run_query(alter_relation_comment(relation, model.description)) %}\n {% endif %}\n\n {% if for_columns and config.persist_column_docs() and model.columns %}\n {% do run_query(alter_column_comment(relation, model.columns)) %}\n {% endif %}\n{% endmacro %}", "meta": {}, - "name": "generate_schema_name_for_env", - "original_file_path": "macros/get_custom_name/get_custom_schema.sql", + "name": "default__persist_docs", + "original_file_path": "macros/adapters/persist_docs.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/get_custom_name/get_custom_schema.sql", + "path": "macros/adapters/persist_docs.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.generate_schema_name_for_env" + "unique_id": "macro.dbt.default__persist_docs" }, - "macro.dbt.get_batch_size": { + "macro.dbt.default__position": { "arguments": [], - "created_at": 1696859933.405671, + "created_at": 1733768712.094113, "depends_on": { - "macros": [ - "macro.dbt.default__get_batch_size" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_batch_size() -%}\n {{ return(adapter.dispatch('get_batch_size', 'dbt')()) }}\n{%- endmacro %}", + "macro_sql": "{% macro default__position(substring_text, string_text) %}\n\n position(\n {{ substring_text }} in {{ string_text }}\n )\n\n{%- endmacro -%}", "meta": {}, - "name": "get_batch_size", - "original_file_path": "macros/materializations/seeds/helpers.sql", + "name": "default__position", + "original_file_path": "macros/utils/position.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seeds/helpers.sql", + "path": "macros/utils/position.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_batch_size" + "unique_id": "macro.dbt.default__position" }, - "macro.dbt.get_binding_char": { + "macro.dbt.default__post_snapshot": { "arguments": [], - "created_at": 1696859933.405473, + "created_at": 1733768711.939072, "depends_on": { - "macros": [ - "macro.dbt_sqlite.sqlite__get_binding_char" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_binding_char() -%}\n {{ adapter.dispatch('get_binding_char', 'dbt')() }}\n{%- endmacro %}", + "macro_sql": "{% macro default__post_snapshot(staging_relation) %}\n {# no-op #}\n{% endmacro %}", "meta": {}, - "name": "get_binding_char", - "original_file_path": "macros/materializations/seeds/helpers.sql", + "name": "default__post_snapshot", + "original_file_path": "macros/materializations/snapshots/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seeds/helpers.sql", + "path": "macros/materializations/snapshots/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_binding_char" + "unique_id": "macro.dbt.default__post_snapshot" }, - "macro.dbt.get_catalog": { + "macro.dbt.default__refresh_materialized_view": { "arguments": [], - "created_at": 1696859933.440316, + "created_at": 1733768712.0604951, "depends_on": { - "macros": [ - "macro.dbt_sqlite.sqlite__get_catalog" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_catalog(information_schema, schemas) -%}\n {{ return(adapter.dispatch('get_catalog', 'dbt')(information_schema, schemas)) }}\n{%- endmacro %}", + "macro_sql": "{% macro default__refresh_materialized_view(relation) %}\n {{ exceptions.raise_compiler_error(\"`refresh_materialized_view` has not been implemented for this adapter.\") }}\n{% endmacro %}", "meta": {}, - "name": "get_catalog", - "original_file_path": "macros/adapters/metadata.sql", + "name": "default__refresh_materialized_view", + "original_file_path": "macros/relations/materialized_view/refresh.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/metadata.sql", + "path": "macros/relations/materialized_view/refresh.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_catalog" + "unique_id": "macro.dbt.default__refresh_materialized_view" }, - "macro.dbt.get_columns_in_query": { + "macro.dbt.default__rename_relation": { "arguments": [], - "created_at": 1696859933.443427, + "created_at": 1733768712.0571961, "depends_on": { "macros": [ - "macro.dbt.default__get_columns_in_query" + "macro.dbt.statement" ] }, "description": "", @@ -3746,47 +4180,45 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro get_columns_in_query(select_sql) -%}\n {{ return(adapter.dispatch('get_columns_in_query', 'dbt')(select_sql)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__rename_relation(from_relation, to_relation) -%}\n {% set target_name = adapter.quote_as_configured(to_relation.identifier, 'identifier') %}\n {% call statement('rename_relation') -%}\n alter table {{ from_relation.render() }} rename to {{ target_name }}\n {%- endcall %}\n{% endmacro %}", "meta": {}, - "name": "get_columns_in_query", - "original_file_path": "macros/adapters/columns.sql", + "name": "default__rename_relation", + "original_file_path": "macros/relations/rename.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/columns.sql", + "path": "macros/relations/rename.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_columns_in_query" + "unique_id": "macro.dbt.default__rename_relation" }, - "macro.dbt.get_columns_in_relation": { + "macro.dbt.default__replace": { "arguments": [], - "created_at": 1696859933.442955, + "created_at": 1733768712.085391, "depends_on": { - "macros": [ - "macro.dbt.default__get_columns_in_relation" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_columns_in_relation(relation) -%}\n {{ return(adapter.dispatch('get_columns_in_relation', 'dbt')(relation)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__replace(field, old_chars, new_chars) %}\n\n replace(\n {{ field }},\n {{ old_chars }},\n {{ new_chars }}\n )\n\n\n{% endmacro %}", "meta": {}, - "name": "get_columns_in_relation", - "original_file_path": "macros/adapters/columns.sql", + "name": "default__replace", + "original_file_path": "macros/utils/replace.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/columns.sql", + "path": "macros/utils/replace.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_columns_in_relation" + "unique_id": "macro.dbt.default__replace" }, - "macro.dbt.get_create_index_sql": { + "macro.dbt.default__reset_csv_table": { "arguments": [], - "created_at": 1696859933.426786, + "created_at": 1733768712.045103, "depends_on": { "macros": [ - "macro.dbt.default__get_create_index_sql" + "macro.dbt.create_csv_table" ] }, "description": "", @@ -3794,95 +4226,89 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro get_create_index_sql(relation, index_dict) -%}\n {{ return(adapter.dispatch('get_create_index_sql', 'dbt')(relation, index_dict)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__reset_csv_table(model, full_refresh, old_relation, agate_table) %}\n {% set sql = \"\" %}\n {% if full_refresh %}\n {{ adapter.drop_relation(old_relation) }}\n {% set sql = create_csv_table(model, agate_table) %}\n {% else %}\n {{ adapter.truncate_relation(old_relation) }}\n {% set sql = \"truncate table \" ~ old_relation.render() %}\n {% endif %}\n\n {{ return(sql) }}\n{% endmacro %}", "meta": {}, - "name": "get_create_index_sql", - "original_file_path": "macros/adapters/indexes.sql", + "name": "default__reset_csv_table", + "original_file_path": "macros/materializations/seeds/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/indexes.sql", + "path": "macros/materializations/seeds/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_create_index_sql" + "unique_id": "macro.dbt.default__reset_csv_table" }, - "macro.dbt.get_create_table_as_sql": { + "macro.dbt.default__resolve_model_name": { "arguments": [], - "created_at": 1696859933.393095, + "created_at": 1733768712.141831, "depends_on": { - "macros": [ - "macro.dbt.default__get_create_table_as_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_create_table_as_sql(temporary, relation, sql) -%}\n {{ adapter.dispatch('get_create_table_as_sql', 'dbt')(temporary, relation, sql) }}\n{%- endmacro %}", + "macro_sql": "\n\n{%- macro default__resolve_model_name(input_model_name) -%}\n {{ input_model_name | string | replace('\"', '\\\"') }}\n{%- endmacro -%}\n\n", "meta": {}, - "name": "get_create_table_as_sql", - "original_file_path": "macros/materializations/models/table/create_table_as.sql", + "name": "default__resolve_model_name", + "original_file_path": "macros/python_model/python.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/table/create_table_as.sql", + "path": "macros/python_model/python.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_create_table_as_sql" + "unique_id": "macro.dbt.default__resolve_model_name" }, - "macro.dbt.get_create_view_as_sql": { + "macro.dbt.default__right": { "arguments": [], - "created_at": 1696859933.3973691, + "created_at": 1733768712.090067, "depends_on": { - "macros": [ - "macro.dbt.default__get_create_view_as_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_create_view_as_sql(relation, sql) -%}\n {{ adapter.dispatch('get_create_view_as_sql', 'dbt')(relation, sql) }}\n{%- endmacro %}", + "macro_sql": "{% macro default__right(string_text, length_expression) %}\n\n right(\n {{ string_text }},\n {{ length_expression }}\n )\n\n{%- endmacro -%}", "meta": {}, - "name": "get_create_view_as_sql", - "original_file_path": "macros/materializations/models/view/create_view_as.sql", + "name": "default__right", + "original_file_path": "macros/utils/right.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/view/create_view_as.sql", + "path": "macros/utils/right.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_create_view_as_sql" + "unique_id": "macro.dbt.default__right" }, - "macro.dbt.get_csv_sql": { + "macro.dbt.default__safe_cast": { "arguments": [], - "created_at": 1696859933.405278, + "created_at": 1733768712.092109, "depends_on": { - "macros": [ - "macro.dbt.default__get_csv_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_csv_sql(create_or_truncate_sql, insert_sql) %}\n {{ adapter.dispatch('get_csv_sql', 'dbt')(create_or_truncate_sql, insert_sql) }}\n{% endmacro %}", + "macro_sql": "{% macro default__safe_cast(field, type) %}\n {# most databases don't support this function yet\n so we just need to use cast #}\n cast({{field}} as {{type}})\n{% endmacro %}", "meta": {}, - "name": "get_csv_sql", - "original_file_path": "macros/materializations/seeds/helpers.sql", + "name": "default__safe_cast", + "original_file_path": "macros/utils/safe_cast.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seeds/helpers.sql", + "path": "macros/utils/safe_cast.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_csv_sql" + "unique_id": "macro.dbt.default__safe_cast" }, - "macro.dbt.get_dcl_statement_list": { + "macro.dbt.default__snapshot_get_time": { "arguments": [], - "created_at": 1696859933.4360042, + "created_at": 1733768712.102928, "depends_on": { "macros": [ - "macro.dbt.default__get_dcl_statement_list" + "macro.dbt.current_timestamp" ] }, "description": "", @@ -3890,47 +4316,45 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro get_dcl_statement_list(relation, grant_config, get_dcl_macro) %}\n {{ return(adapter.dispatch('get_dcl_statement_list', 'dbt')(relation, grant_config, get_dcl_macro)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__snapshot_get_time() %}\n {{ current_timestamp() }}\n{% endmacro %}", "meta": {}, - "name": "get_dcl_statement_list", - "original_file_path": "macros/adapters/apply_grants.sql", + "name": "default__snapshot_get_time", + "original_file_path": "macros/adapters/timestamps.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/apply_grants.sql", + "path": "macros/adapters/timestamps.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_dcl_statement_list" + "unique_id": "macro.dbt.default__snapshot_get_time" }, - "macro.dbt.get_delete_insert_merge_sql": { + "macro.dbt.default__snapshot_hash_arguments": { "arguments": [], - "created_at": 1696859933.376683, + "created_at": 1733768711.928189, "depends_on": { - "macros": [ - "macro.dbt.default__get_delete_insert_merge_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_delete_insert_merge_sql(target, source, unique_key, dest_columns, incremental_predicates) -%}\n {{ adapter.dispatch('get_delete_insert_merge_sql', 'dbt')(target, source, unique_key, dest_columns, incremental_predicates) }}\n{%- endmacro %}", + "macro_sql": "{% macro default__snapshot_hash_arguments(args) -%}\n md5({%- for arg in args -%}\n coalesce(cast({{ arg }} as varchar ), '')\n {% if not loop.last %} || '|' || {% endif %}\n {%- endfor -%})\n{%- endmacro %}", "meta": {}, - "name": "get_delete_insert_merge_sql", - "original_file_path": "macros/materializations/models/incremental/merge.sql", + "name": "default__snapshot_hash_arguments", + "original_file_path": "macros/materializations/snapshots/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/merge.sql", + "path": "macros/materializations/snapshots/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_delete_insert_merge_sql" + "unique_id": "macro.dbt.default__snapshot_hash_arguments" }, - "macro.dbt.get_grant_sql": { + "macro.dbt.default__snapshot_merge_sql": { "arguments": [], - "created_at": 1696859933.435332, + "created_at": 1733768711.924642, "depends_on": { "macros": [ - "macro.dbt.default__get_grant_sql" + "macro.dbt.get_snapshot_table_column_names" ] }, "description": "", @@ -3938,23 +4362,24 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro get_grant_sql(relation, privilege, grantees) %}\n {{ return(adapter.dispatch('get_grant_sql', 'dbt')(relation, privilege, grantees)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__snapshot_merge_sql(target, source, insert_cols) -%}\n {%- set insert_cols_csv = insert_cols | join(', ') -%}\n\n {%- set columns = config.get(\"snapshot_table_column_names\") or get_snapshot_table_column_names() -%}\n\n merge into {{ target.render() }} as DBT_INTERNAL_DEST\n using {{ source }} as DBT_INTERNAL_SOURCE\n on DBT_INTERNAL_SOURCE.{{ columns.dbt_scd_id }} = DBT_INTERNAL_DEST.{{ columns.dbt_scd_id }}\n\n when matched\n and DBT_INTERNAL_DEST.{{ columns.dbt_valid_to }} is null\n and DBT_INTERNAL_SOURCE.dbt_change_type in ('update', 'delete')\n then update\n set {{ columns.dbt_valid_to }} = DBT_INTERNAL_SOURCE.{{ columns.dbt_valid_to }}\n\n when not matched\n and DBT_INTERNAL_SOURCE.dbt_change_type = 'insert'\n then insert ({{ insert_cols_csv }})\n values ({{ insert_cols_csv }})\n\n{% endmacro %}", "meta": {}, - "name": "get_grant_sql", - "original_file_path": "macros/adapters/apply_grants.sql", + "name": "default__snapshot_merge_sql", + "original_file_path": "macros/materializations/snapshots/snapshot_merge.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/apply_grants.sql", + "path": "macros/materializations/snapshots/snapshot_merge.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_grant_sql" + "unique_id": "macro.dbt.default__snapshot_merge_sql" }, - "macro.dbt.get_incremental_append_sql": { + "macro.dbt.default__snapshot_staging_table": { "arguments": [], - "created_at": 1696859933.3791559, + "created_at": 1733768711.940938, "depends_on": { "macros": [ - "macro.dbt.default__get_incremental_append_sql" + "macro.dbt.get_snapshot_table_column_names", + "macro.dbt.snapshot_get_time" ] }, "description": "", @@ -3962,143 +4387,133 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro get_incremental_append_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_append_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", + "macro_sql": "{% macro default__snapshot_staging_table(strategy, source_sql, target_relation) -%}\n {% set columns = config.get('snapshot_table_column_names') or get_snapshot_table_column_names() %}\n\n with snapshot_query as (\n\n {{ source_sql }}\n\n ),\n\n snapshotted_data as (\n\n select *,\n {{ strategy.unique_key }} as dbt_unique_key\n\n from {{ target_relation }}\n where {{ columns.dbt_valid_to }} is null\n\n ),\n\n insertions_source_data as (\n\n select\n *,\n {{ strategy.unique_key }} as dbt_unique_key,\n {{ strategy.updated_at }} as {{ columns.dbt_updated_at }},\n {{ strategy.updated_at }} as {{ columns.dbt_valid_from }},\n nullif({{ strategy.updated_at }}, {{ strategy.updated_at }}) as {{ columns.dbt_valid_to }},\n {{ strategy.scd_id }} as {{ columns.dbt_scd_id }}\n\n from snapshot_query\n ),\n\n updates_source_data as (\n\n select\n *,\n {{ strategy.unique_key }} as dbt_unique_key,\n {{ strategy.updated_at }} as {{ columns.dbt_updated_at }},\n {{ strategy.updated_at }} as {{ columns.dbt_valid_from }},\n {{ strategy.updated_at }} as {{ columns.dbt_valid_to }}\n\n from snapshot_query\n ),\n\n {%- if strategy.invalidate_hard_deletes %}\n\n deletes_source_data as (\n\n select\n *,\n {{ strategy.unique_key }} as dbt_unique_key\n from snapshot_query\n ),\n {% endif %}\n\n insertions as (\n\n select\n 'insert' as dbt_change_type,\n source_data.*\n\n from insertions_source_data as source_data\n left outer join snapshotted_data on snapshotted_data.dbt_unique_key = source_data.dbt_unique_key\n where snapshotted_data.dbt_unique_key is null\n or (\n snapshotted_data.dbt_unique_key is not null\n and (\n {{ strategy.row_changed }}\n )\n )\n\n ),\n\n updates as (\n\n select\n 'update' as dbt_change_type,\n source_data.*,\n snapshotted_data.{{ columns.dbt_scd_id }}\n\n from updates_source_data as source_data\n join snapshotted_data on snapshotted_data.dbt_unique_key = source_data.dbt_unique_key\n where (\n {{ strategy.row_changed }}\n )\n )\n\n {%- if strategy.invalidate_hard_deletes -%}\n ,\n\n deletes as (\n\n select\n 'delete' as dbt_change_type,\n source_data.*,\n {{ snapshot_get_time() }} as {{ columns.dbt_valid_from }},\n {{ snapshot_get_time() }} as {{ columns.dbt_updated_at }},\n {{ snapshot_get_time() }} as {{ columns.dbt_valid_to }},\n snapshotted_data.{{ columns.dbt_scd_id }}\n\n from snapshotted_data\n left join deletes_source_data as source_data on snapshotted_data.dbt_unique_key = source_data.dbt_unique_key\n where source_data.dbt_unique_key is null\n )\n {%- endif %}\n\n select * from insertions\n union all\n select * from updates\n {%- if strategy.invalidate_hard_deletes %}\n union all\n select * from deletes\n {%- endif %}\n\n{%- endmacro %}", "meta": {}, - "name": "get_incremental_append_sql", - "original_file_path": "macros/materializations/models/incremental/strategies.sql", + "name": "default__snapshot_staging_table", + "original_file_path": "macros/materializations/snapshots/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/strategies.sql", + "path": "macros/materializations/snapshots/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_incremental_append_sql" + "unique_id": "macro.dbt.default__snapshot_staging_table" }, - "macro.dbt.get_incremental_default_sql": { + "macro.dbt.default__snapshot_string_as_time": { "arguments": [], - "created_at": 1696859933.380435, + "created_at": 1733768711.9292958, "depends_on": { - "macros": [ - "macro.dbt.default__get_incremental_default_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_incremental_default_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_default_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", + "macro_sql": "{% macro default__snapshot_string_as_time(timestamp) %}\n {% do exceptions.raise_not_implemented(\n 'snapshot_string_as_time macro not implemented for adapter '+adapter.type()\n ) %}\n{% endmacro %}", "meta": {}, - "name": "get_incremental_default_sql", - "original_file_path": "macros/materializations/models/incremental/strategies.sql", + "name": "default__snapshot_string_as_time", + "original_file_path": "macros/materializations/snapshots/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/strategies.sql", + "path": "macros/materializations/snapshots/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_incremental_default_sql" + "unique_id": "macro.dbt.default__snapshot_string_as_time" }, - "macro.dbt.get_incremental_delete_insert_sql": { + "macro.dbt.default__split_part": { "arguments": [], - "created_at": 1696859933.37945, + "created_at": 1733768712.099427, "depends_on": { - "macros": [ - "macro.dbt.default__get_incremental_delete_insert_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_incremental_delete_insert_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_delete_insert_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", + "macro_sql": "{% macro default__split_part(string_text, delimiter_text, part_number) %}\n\n split_part(\n {{ string_text }},\n {{ delimiter_text }},\n {{ part_number }}\n )\n\n{% endmacro %}", "meta": {}, - "name": "get_incremental_delete_insert_sql", - "original_file_path": "macros/materializations/models/incremental/strategies.sql", + "name": "default__split_part", + "original_file_path": "macros/utils/split_part.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/strategies.sql", + "path": "macros/utils/split_part.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_incremental_delete_insert_sql" + "unique_id": "macro.dbt.default__split_part" }, - "macro.dbt.get_incremental_insert_overwrite_sql": { + "macro.dbt.default__string_literal": { "arguments": [], - "created_at": 1696859933.380125, + "created_at": 1733768712.094439, "depends_on": { - "macros": [ - "macro.dbt.default__get_incremental_insert_overwrite_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_incremental_insert_overwrite_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_insert_overwrite_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", + "macro_sql": "{% macro default__string_literal(value) -%}\n '{{ value }}'\n{%- endmacro %}", "meta": {}, - "name": "get_incremental_insert_overwrite_sql", - "original_file_path": "macros/materializations/models/incremental/strategies.sql", + "name": "default__string_literal", + "original_file_path": "macros/utils/literal.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/strategies.sql", + "path": "macros/utils/literal.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_incremental_insert_overwrite_sql" + "unique_id": "macro.dbt.default__string_literal" }, - "macro.dbt.get_incremental_merge_sql": { + "macro.dbt.default__support_multiple_grantees_per_dcl_statement": { "arguments": [], - "created_at": 1696859933.379788, + "created_at": 1733768712.11417, "depends_on": { - "macros": [ - "macro.dbt.default__get_incremental_merge_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_incremental_merge_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_merge_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", + "macro_sql": "\n\n{%- macro default__support_multiple_grantees_per_dcl_statement() -%}\n {{ return(True) }}\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "get_incremental_merge_sql", - "original_file_path": "macros/materializations/models/incremental/strategies.sql", + "name": "default__support_multiple_grantees_per_dcl_statement", + "original_file_path": "macros/adapters/apply_grants.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/strategies.sql", + "path": "macros/adapters/apply_grants.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_incremental_merge_sql" + "unique_id": "macro.dbt.default__support_multiple_grantees_per_dcl_statement" }, - "macro.dbt.get_insert_into_sql": { + "macro.dbt.default__test_accepted_values": { "arguments": [], - "created_at": 1696859933.380807, + "created_at": 1733768712.076216, "depends_on": { - "macros": [ - "macro.dbt.get_quoted_csv" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_insert_into_sql(target_relation, temp_relation, dest_columns) %}\n\n {%- set dest_cols_csv = get_quoted_csv(dest_columns | map(attribute=\"name\")) -%}\n\n insert into {{ target_relation }} ({{ dest_cols_csv }})\n (\n select {{ dest_cols_csv }}\n from {{ temp_relation }}\n )\n\n{% endmacro %}", + "macro_sql": "{% macro default__test_accepted_values(model, column_name, values, quote=True) %}\n\nwith all_values as (\n\n select\n {{ column_name }} as value_field,\n count(*) as n_records\n\n from {{ model }}\n group by {{ column_name }}\n\n)\n\nselect *\nfrom all_values\nwhere value_field not in (\n {% for value in values -%}\n {% if quote -%}\n '{{ value }}'\n {%- else -%}\n {{ value }}\n {%- endif -%}\n {%- if not loop.last -%},{%- endif %}\n {%- endfor %}\n)\n\n{% endmacro %}", "meta": {}, - "name": "get_insert_into_sql", - "original_file_path": "macros/materializations/models/incremental/strategies.sql", + "name": "default__test_accepted_values", + "original_file_path": "macros/generic_test_sql/accepted_values.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/strategies.sql", + "path": "macros/generic_test_sql/accepted_values.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_insert_into_sql" + "unique_id": "macro.dbt.default__test_accepted_values" }, - "macro.dbt.get_insert_overwrite_merge_sql": { + "macro.dbt.default__test_not_null": { "arguments": [], - "created_at": 1696859933.377585, + "created_at": 1733768712.075467, "depends_on": { "macros": [ - "macro.dbt.default__get_insert_overwrite_merge_sql" + "macro.dbt.should_store_failures" ] }, "description": "", @@ -4106,71 +4521,67 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro get_insert_overwrite_merge_sql(target, source, dest_columns, predicates, include_sql_header=false) -%}\n {{ adapter.dispatch('get_insert_overwrite_merge_sql', 'dbt')(target, source, dest_columns, predicates, include_sql_header) }}\n{%- endmacro %}", + "macro_sql": "{% macro default__test_not_null(model, column_name) %}\n\n{% set column_list = '*' if should_store_failures() else column_name %}\n\nselect {{ column_list }}\nfrom {{ model }}\nwhere {{ column_name }} is null\n\n{% endmacro %}", "meta": {}, - "name": "get_insert_overwrite_merge_sql", - "original_file_path": "macros/materializations/models/incremental/merge.sql", + "name": "default__test_not_null", + "original_file_path": "macros/generic_test_sql/not_null.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/merge.sql", + "path": "macros/generic_test_sql/not_null.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_insert_overwrite_merge_sql" + "unique_id": "macro.dbt.default__test_not_null" }, - "macro.dbt.get_merge_sql": { + "macro.dbt.default__test_relationships": { "arguments": [], - "created_at": 1696859933.375341, + "created_at": 1733768712.0751932, "depends_on": { - "macros": [ - "macro.dbt.default__get_merge_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_merge_sql(target, source, unique_key, dest_columns, incremental_predicates=none) -%}\n -- back compat for old kwarg name\n {% set incremental_predicates = kwargs.get('predicates', incremental_predicates) %}\n {{ adapter.dispatch('get_merge_sql', 'dbt')(target, source, unique_key, dest_columns, incremental_predicates) }}\n{%- endmacro %}", + "macro_sql": "{% macro default__test_relationships(model, column_name, to, field) %}\n\nwith child as (\n select {{ column_name }} as from_field\n from {{ model }}\n where {{ column_name }} is not null\n),\n\nparent as (\n select {{ field }} as to_field\n from {{ to }}\n)\n\nselect\n from_field\n\nfrom child\nleft join parent\n on child.from_field = parent.to_field\n\nwhere parent.to_field is null\n\n{% endmacro %}", "meta": {}, - "name": "get_merge_sql", - "original_file_path": "macros/materializations/models/incremental/merge.sql", + "name": "default__test_relationships", + "original_file_path": "macros/generic_test_sql/relationships.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/merge.sql", + "path": "macros/generic_test_sql/relationships.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_merge_sql" + "unique_id": "macro.dbt.default__test_relationships" }, - "macro.dbt.get_merge_update_columns": { + "macro.dbt.default__test_unique": { "arguments": [], - "created_at": 1696859933.37009, + "created_at": 1733768712.075694, "depends_on": { - "macros": [ - "macro.dbt.default__get_merge_update_columns" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_merge_update_columns(merge_update_columns, merge_exclude_columns, dest_columns) %}\n {{ return(adapter.dispatch('get_merge_update_columns', 'dbt')(merge_update_columns, merge_exclude_columns, dest_columns)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__test_unique(model, column_name) %}\n\nselect\n {{ column_name }} as unique_field,\n count(*) as n_records\n\nfrom {{ model }}\nwhere {{ column_name }} is not null\ngroup by {{ column_name }}\nhaving count(*) > 1\n\n{% endmacro %}", "meta": {}, - "name": "get_merge_update_columns", - "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", + "name": "default__test_unique", + "original_file_path": "macros/generic_test_sql/unique.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/column_helpers.sql", + "path": "macros/generic_test_sql/unique.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_merge_update_columns" + "unique_id": "macro.dbt.default__test_unique" }, - "macro.dbt.get_or_create_relation": { + "macro.dbt.default__truncate_relation": { "arguments": [], - "created_at": 1696859933.431798, + "created_at": 1733768712.10983, "depends_on": { "macros": [ - "macro.dbt.default__get_or_create_relation" + "macro.dbt.statement" ] }, "description": "", @@ -4178,20 +4589,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro get_or_create_relation(database, schema, identifier, type) -%}\n {{ return(adapter.dispatch('get_or_create_relation', 'dbt')(database, schema, identifier, type)) }}\n{% endmacro %}", + "macro_sql": "{% macro default__truncate_relation(relation) -%}\n {% call statement('truncate_relation') -%}\n truncate table {{ relation.render() }}\n {%- endcall %}\n{% endmacro %}", "meta": {}, - "name": "get_or_create_relation", + "name": "default__truncate_relation", "original_file_path": "macros/adapters/relation.sql", "package_name": "dbt", "patch_path": null, "path": "macros/adapters/relation.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_or_create_relation" + "unique_id": "macro.dbt.default__truncate_relation" }, - "macro.dbt.get_quoted_csv": { + "macro.dbt.default__type_bigint": { "arguments": [], - "created_at": 1696859933.3690538, + "created_at": 1733768712.096638, "depends_on": { "macros": [] }, @@ -4200,44 +4611,42 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro get_quoted_csv(column_names) %}\n\n {% set quoted = [] %}\n {% for col in column_names -%}\n {%- do quoted.append(adapter.quote(col)) -%}\n {%- endfor %}\n\n {%- set dest_cols_csv = quoted | join(', ') -%}\n {{ return(dest_cols_csv) }}\n\n{% endmacro %}", + "macro_sql": "{% macro default__type_bigint() %}\n {{ return(api.Column.translate_type(\"bigint\")) }}\n{% endmacro %}", "meta": {}, - "name": "get_quoted_csv", - "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", + "name": "default__type_bigint", + "original_file_path": "macros/utils/data_types.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/column_helpers.sql", + "path": "macros/utils/data_types.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_quoted_csv" + "unique_id": "macro.dbt.default__type_bigint" }, - "macro.dbt.get_revoke_sql": { + "macro.dbt.default__type_boolean": { "arguments": [], - "created_at": 1696859933.435627, + "created_at": 1733768712.097211, "depends_on": { - "macros": [ - "macro.dbt.default__get_revoke_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_revoke_sql(relation, privilege, grantees) %}\n {{ return(adapter.dispatch('get_revoke_sql', 'dbt')(relation, privilege, grantees)) }}\n{% endmacro %}", + "macro_sql": "{%- macro default__type_boolean() -%}\n {{ return(api.Column.translate_type(\"boolean\")) }}\n{%- endmacro -%}\n\n", "meta": {}, - "name": "get_revoke_sql", - "original_file_path": "macros/adapters/apply_grants.sql", + "name": "default__type_boolean", + "original_file_path": "macros/utils/data_types.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/apply_grants.sql", + "path": "macros/utils/data_types.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_revoke_sql" + "unique_id": "macro.dbt.default__type_boolean" }, - "macro.dbt.get_seed_column_quoted_csv": { + "macro.dbt.default__type_float": { "arguments": [], - "created_at": 1696859933.4061, + "created_at": 1733768712.0960279, "depends_on": { "macros": [] }, @@ -4246,143 +4655,133 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro get_seed_column_quoted_csv(model, column_names) %}\n {%- set quote_seed_column = model['config'].get('quote_columns', None) -%}\n {% set quoted = [] %}\n {% for col in column_names -%}\n {%- do quoted.append(adapter.quote_seed_column(col, quote_seed_column)) -%}\n {%- endfor %}\n\n {%- set dest_cols_csv = quoted | join(', ') -%}\n {{ return(dest_cols_csv) }}\n{% endmacro %}", + "macro_sql": "{% macro default__type_float() %}\n {{ return(api.Column.translate_type(\"float\")) }}\n{% endmacro %}", "meta": {}, - "name": "get_seed_column_quoted_csv", - "original_file_path": "macros/materializations/seeds/helpers.sql", + "name": "default__type_float", + "original_file_path": "macros/utils/data_types.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seeds/helpers.sql", + "path": "macros/utils/data_types.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_seed_column_quoted_csv" + "unique_id": "macro.dbt.default__type_float" }, - "macro.dbt.get_show_grant_sql": { + "macro.dbt.default__type_int": { "arguments": [], - "created_at": 1696859933.435102, + "created_at": 1733768712.0969238, "depends_on": { - "macros": [ - "macro.dbt.default__get_show_grant_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_show_grant_sql(relation) %}\n {{ return(adapter.dispatch(\"get_show_grant_sql\", \"dbt\")(relation)) }}\n{% endmacro %}", + "macro_sql": "{%- macro default__type_int() -%}\n {{ return(api.Column.translate_type(\"integer\")) }}\n{%- endmacro -%}\n\n", "meta": {}, - "name": "get_show_grant_sql", - "original_file_path": "macros/adapters/apply_grants.sql", + "name": "default__type_int", + "original_file_path": "macros/utils/data_types.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/apply_grants.sql", + "path": "macros/utils/data_types.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_show_grant_sql" + "unique_id": "macro.dbt.default__type_int" }, - "macro.dbt.get_test_sql": { + "macro.dbt.default__type_numeric": { "arguments": [], - "created_at": 1696859933.367132, + "created_at": 1733768712.0963368, "depends_on": { - "macros": [ - "macro.dbt_sqlite.sqlite__get_test_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_test_sql(main_sql, fail_calc, warn_if, error_if, limit) -%}\n {{ adapter.dispatch('get_test_sql', 'dbt')(main_sql, fail_calc, warn_if, error_if, limit) }}\n{%- endmacro %}", + "macro_sql": "{% macro default__type_numeric() %}\n {{ return(api.Column.numeric_type(\"numeric\", 28, 6)) }}\n{% endmacro %}", "meta": {}, - "name": "get_test_sql", - "original_file_path": "macros/materializations/tests/helpers.sql", + "name": "default__type_numeric", + "original_file_path": "macros/utils/data_types.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/tests/helpers.sql", + "path": "macros/utils/data_types.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_test_sql" + "unique_id": "macro.dbt.default__type_numeric" }, - "macro.dbt.get_true_sql": { + "macro.dbt.default__type_string": { "arguments": [], - "created_at": 1696859933.3594182, + "created_at": 1733768712.095437, "depends_on": { - "macros": [ - "macro.dbt.default__get_true_sql" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_true_sql() %}\n {{ adapter.dispatch('get_true_sql', 'dbt')() }}\n{% endmacro %}", + "macro_sql": "{% macro default__type_string() %}\n {{ return(api.Column.translate_type(\"string\")) }}\n{% endmacro %}", "meta": {}, - "name": "get_true_sql", - "original_file_path": "macros/materializations/snapshots/helpers.sql", + "name": "default__type_string", + "original_file_path": "macros/utils/data_types.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/helpers.sql", + "path": "macros/utils/data_types.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_true_sql" + "unique_id": "macro.dbt.default__type_string" }, - "macro.dbt.get_where_subquery": { + "macro.dbt.default__type_timestamp": { "arguments": [], - "created_at": 1696859933.3676128, + "created_at": 1733768712.095736, "depends_on": { - "macros": [ - "macro.dbt.default__get_where_subquery" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro get_where_subquery(relation) -%}\n {% do return(adapter.dispatch('get_where_subquery', 'dbt')(relation)) %}\n{%- endmacro %}", + "macro_sql": "{% macro default__type_timestamp() %}\n {{ return(api.Column.translate_type(\"timestamp\")) }}\n{% endmacro %}", "meta": {}, - "name": "get_where_subquery", - "original_file_path": "macros/materializations/tests/where_subquery.sql", + "name": "default__type_timestamp", + "original_file_path": "macros/utils/data_types.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/tests/where_subquery.sql", + "path": "macros/utils/data_types.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.get_where_subquery" + "unique_id": "macro.dbt.default__type_timestamp" }, - "macro.dbt.handle_existing_table": { + "macro.dbt.default__validate_fixture_rows": { "arguments": [], - "created_at": 1696859933.3958871, + "created_at": 1733768712.14012, "depends_on": { - "macros": [ - "macro.dbt.default__handle_existing_table" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro handle_existing_table(full_refresh, old_relation) %}\n {{ adapter.dispatch('handle_existing_table', 'dbt')(full_refresh, old_relation) }}\n{% endmacro %}", + "macro_sql": "{%- macro default__validate_fixture_rows(rows, row_number) -%}\n {# This is an abstract method for adapter overrides as needed #}\n{%- endmacro -%}", "meta": {}, - "name": "handle_existing_table", - "original_file_path": "macros/materializations/models/view/helpers.sql", + "name": "default__validate_fixture_rows", + "original_file_path": "macros/unit_test_sql/get_fixture_sql.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/view/helpers.sql", + "path": "macros/unit_test_sql/get_fixture_sql.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.handle_existing_table" + "unique_id": "macro.dbt.default__validate_fixture_rows" }, - "macro.dbt.hash": { + "macro.dbt.default__validate_sql": { "arguments": [], - "created_at": 1696859933.41854, + "created_at": 1733768712.112152, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__hash" + "macro.dbt.statement" ] }, "description": "", @@ -4390,23 +4789,24 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro hash(field) -%}\n {{ return(adapter.dispatch('hash', 'dbt') (field)) }}\n{%- endmacro %}", + "macro_sql": "{% macro default__validate_sql(sql) -%}\n {% call statement('validate_sql') -%}\n explain {{ sql }}\n {% endcall %}\n {{ return(load_result('validate_sql')) }}\n{% endmacro %}", "meta": {}, - "name": "hash", - "original_file_path": "macros/utils/hash.sql", + "name": "default__validate_sql", + "original_file_path": "macros/adapters/validate_sql.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/hash.sql", + "path": "macros/adapters/validate_sql.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.hash" + "unique_id": "macro.dbt.default__validate_sql" }, - "macro.dbt.in_transaction": { + "macro.dbt.default_last_day": { "arguments": [], - "created_at": 1696859933.348566, + "created_at": 1733768712.098628, "depends_on": { "macros": [ - "macro.dbt.make_hook_config" + "macro.dbt.dateadd", + "macro.dbt.date_trunc" ] }, "description": "", @@ -4414,20 +4814,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro in_transaction(sql) %}\n {{ make_hook_config(sql, inside_transaction=True) }}\n{% endmacro %}", + "macro_sql": "\n\n{%- macro default_last_day(date, datepart) -%}\n cast(\n {{dbt.dateadd('day', '-1',\n dbt.dateadd(datepart, '1', dbt.date_trunc(datepart, date))\n )}}\n as date)\n{%- endmacro -%}\n\n", "meta": {}, - "name": "in_transaction", - "original_file_path": "macros/materializations/hooks.sql", + "name": "default_last_day", + "original_file_path": "macros/utils/last_day.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/hooks.sql", + "path": "macros/utils/last_day.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.in_transaction" + "unique_id": "macro.dbt.default_last_day" }, - "macro.dbt.incremental_validate_on_schema_change": { + "macro.dbt.diff_column_data_types": { "arguments": [], - "created_at": 1696859933.388559, + "created_at": 1733768711.971037, "depends_on": { "macros": [] }, @@ -4436,47 +4836,45 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro incremental_validate_on_schema_change(on_schema_change, default='ignore') %}\n\n {% if on_schema_change not in ['sync_all_columns', 'append_new_columns', 'fail', 'ignore'] %}\n\n {% set log_message = 'Invalid value for on_schema_change (%s) specified. Setting default value of %s.' % (on_schema_change, default) %}\n {% do log(log_message) %}\n\n {{ return(default) }}\n\n {% else %}\n\n {{ return(on_schema_change) }}\n\n {% endif %}\n\n{% endmacro %}", + "macro_sql": "{% macro diff_column_data_types(source_columns, target_columns) %}\n\n {% set result = [] %}\n {% for sc in source_columns %}\n {% set tc = target_columns | selectattr(\"name\", \"equalto\", sc.name) | list | first %}\n {% if tc %}\n {% if sc.data_type != tc.data_type and not sc.can_expand_to(other_column=tc) %}\n {{ result.append( { 'column_name': tc.name, 'new_type': sc.data_type } ) }}\n {% endif %}\n {% endif %}\n {% endfor %}\n\n {{ return(result) }}\n\n{% endmacro %}", "meta": {}, - "name": "incremental_validate_on_schema_change", - "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", + "name": "diff_column_data_types", + "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/on_schema_change.sql", + "path": "macros/materializations/models/incremental/column_helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.incremental_validate_on_schema_change" + "unique_id": "macro.dbt.diff_column_data_types" }, - "macro.dbt.information_schema_name": { + "macro.dbt.diff_columns": { "arguments": [], - "created_at": 1696859933.440643, + "created_at": 1733768711.970446, "depends_on": { - "macros": [ - "macro.dbt.default__information_schema_name" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro information_schema_name(database) %}\n {{ return(adapter.dispatch('information_schema_name', 'dbt')(database)) }}\n{% endmacro %}", + "macro_sql": "{% macro diff_columns(source_columns, target_columns) %}\n\n {% set result = [] %}\n {% set source_names = source_columns | map(attribute = 'column') | list %}\n {% set target_names = target_columns | map(attribute = 'column') | list %}\n\n {# --check whether the name attribute exists in the target - this does not perform a data type check #}\n {% for sc in source_columns %}\n {% if sc.name not in target_names %}\n {{ result.append(sc) }}\n {% endif %}\n {% endfor %}\n\n {{ return(result) }}\n\n{% endmacro %}", "meta": {}, - "name": "information_schema_name", - "original_file_path": "macros/adapters/metadata.sql", + "name": "diff_columns", + "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/metadata.sql", + "path": "macros/materializations/models/incremental/column_helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.information_schema_name" + "unique_id": "macro.dbt.diff_columns" }, - "macro.dbt.intersect": { + "macro.dbt.drop_materialized_view": { "arguments": [], - "created_at": 1696859933.4162948, + "created_at": 1733768712.059457, "depends_on": { "macros": [ - "macro.dbt.default__intersect" + "macro.dbt_postgres.postgres__drop_materialized_view" ] }, "description": "", @@ -4484,23 +4882,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro intersect() %}\n {{ return(adapter.dispatch('intersect', 'dbt')()) }}\n{% endmacro %}", + "macro_sql": "{% macro drop_materialized_view(relation) -%}\n {{- adapter.dispatch('drop_materialized_view', 'dbt')(relation) -}}\n{%- endmacro %}", "meta": {}, - "name": "intersect", - "original_file_path": "macros/utils/intersect.sql", + "name": "drop_materialized_view", + "original_file_path": "macros/relations/materialized_view/drop.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/intersect.sql", + "path": "macros/relations/materialized_view/drop.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.intersect" + "unique_id": "macro.dbt.drop_materialized_view" }, - "macro.dbt.is_incremental": { + "macro.dbt.drop_relation": { "arguments": [], - "created_at": 1696859933.378502, + "created_at": 1733768712.051589, "depends_on": { "macros": [ - "macro.dbt.should_full_refresh" + "macro.dbt.default__drop_relation" ] }, "description": "", @@ -4508,47 +4906,45 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro is_incremental() %}\n {#-- do not run introspective queries in parsing #}\n {% if not execute %}\n {{ return(False) }}\n {% else %}\n {% set relation = adapter.get_relation(this.database, this.schema, this.table) %}\n {{ return(relation is not none\n and relation.type == 'table'\n and model.config.materialized == 'incremental'\n and not should_full_refresh()) }}\n {% endif %}\n{% endmacro %}", + "macro_sql": "{% macro drop_relation(relation) -%}\n {{ return(adapter.dispatch('drop_relation', 'dbt')(relation)) }}\n{% endmacro %}", "meta": {}, - "name": "is_incremental", - "original_file_path": "macros/materializations/models/incremental/is_incremental.sql", + "name": "drop_relation", + "original_file_path": "macros/relations/drop.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/is_incremental.sql", + "path": "macros/relations/drop.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.is_incremental" + "unique_id": "macro.dbt.drop_relation" }, - "macro.dbt.last_day": { + "macro.dbt.drop_relation_if_exists": { "arguments": [], - "created_at": 1696859933.422722, + "created_at": 1733768712.051958, "depends_on": { - "macros": [ - "macro.dbt.default__last_day" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro last_day(date, datepart) %}\n {{ return(adapter.dispatch('last_day', 'dbt') (date, datepart)) }}\n{% endmacro %}", + "macro_sql": "{% macro drop_relation_if_exists(relation) %}\n {% if relation is not none %}\n {{ adapter.drop_relation(relation) }}\n {% endif %}\n{% endmacro %}", "meta": {}, - "name": "last_day", - "original_file_path": "macros/utils/last_day.sql", + "name": "drop_relation_if_exists", + "original_file_path": "macros/relations/drop.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/last_day.sql", + "path": "macros/relations/drop.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.last_day" + "unique_id": "macro.dbt.drop_relation_if_exists" }, - "macro.dbt.length": { + "macro.dbt.drop_schema": { "arguments": [], - "created_at": 1696859933.415703, + "created_at": 1733768712.101682, "depends_on": { "macros": [ - "macro.dbt.default__length" + "macro.dbt_postgres.postgres__drop_schema" ] }, "description": "", @@ -4556,23 +4952,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro length(expression) -%}\n {{ return(adapter.dispatch('length', 'dbt') (expression)) }}\n{% endmacro %}", + "macro_sql": "{% macro drop_schema(relation) -%}\n {{ adapter.dispatch('drop_schema', 'dbt')(relation) }}\n{% endmacro %}", "meta": {}, - "name": "length", - "original_file_path": "macros/utils/length.sql", + "name": "drop_schema", + "original_file_path": "macros/adapters/schema.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/length.sql", + "path": "macros/adapters/schema.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.length" + "unique_id": "macro.dbt.drop_schema" }, - "macro.dbt.list_relations_without_caching": { + "macro.dbt.drop_schema_named": { "arguments": [], - "created_at": 1696859933.4415529, + "created_at": 1733768712.054762, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__list_relations_without_caching" + "macro.dbt.default__drop_schema_named" ] }, "description": "", @@ -4580,23 +4976,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro list_relations_without_caching(schema_relation) %}\n {{ return(adapter.dispatch('list_relations_without_caching', 'dbt')(schema_relation)) }}\n{% endmacro %}", + "macro_sql": "{% macro drop_schema_named(schema_name) %}\n {{ return(adapter.dispatch('drop_schema_named', 'dbt') (schema_name)) }}\n{% endmacro %}", "meta": {}, - "name": "list_relations_without_caching", - "original_file_path": "macros/adapters/metadata.sql", + "name": "drop_schema_named", + "original_file_path": "macros/relations/schema.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/metadata.sql", + "path": "macros/relations/schema.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.list_relations_without_caching" + "unique_id": "macro.dbt.drop_schema_named" }, - "macro.dbt.list_schemas": { + "macro.dbt.drop_table": { "arguments": [], - "created_at": 1696859933.440877, + "created_at": 1733768712.066834, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__list_schemas" + "macro.dbt_postgres.postgres__drop_table" ] }, "description": "", @@ -4604,23 +5000,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro list_schemas(database) -%}\n {{ return(adapter.dispatch('list_schemas', 'dbt')(database)) }}\n{% endmacro %}", + "macro_sql": "{% macro drop_table(relation) -%}\n {{- adapter.dispatch('drop_table', 'dbt')(relation) -}}\n{%- endmacro %}", "meta": {}, - "name": "list_schemas", - "original_file_path": "macros/adapters/metadata.sql", + "name": "drop_table", + "original_file_path": "macros/relations/table/drop.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/metadata.sql", + "path": "macros/relations/table/drop.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.list_schemas" + "unique_id": "macro.dbt.drop_table" }, - "macro.dbt.listagg": { + "macro.dbt.drop_view": { "arguments": [], - "created_at": 1696859933.417399, + "created_at": 1733768712.0707982, "depends_on": { "macros": [ - "macro.dbt.default__listagg" + "macro.dbt_postgres.postgres__drop_view" ] }, "description": "", @@ -4628,45 +5024,47 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro listagg(measure, delimiter_text=\"','\", order_by_clause=none, limit_num=none) -%}\n {{ return(adapter.dispatch('listagg', 'dbt') (measure, delimiter_text, order_by_clause, limit_num)) }}\n{%- endmacro %}", + "macro_sql": "{% macro drop_view(relation) -%}\n {{- adapter.dispatch('drop_view', 'dbt')(relation) -}}\n{%- endmacro %}", "meta": {}, - "name": "listagg", - "original_file_path": "macros/utils/listagg.sql", + "name": "drop_view", + "original_file_path": "macros/relations/view/drop.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/listagg.sql", + "path": "macros/relations/view/drop.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.listagg" + "unique_id": "macro.dbt.drop_view" }, - "macro.dbt.load_cached_relation": { + "macro.dbt.escape_single_quotes": { "arguments": [], - "created_at": 1696859933.432352, + "created_at": 1733768712.0895271, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__escape_single_quotes" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro load_cached_relation(relation) %}\n {% do return(adapter.get_relation(\n database=relation.database,\n schema=relation.schema,\n identifier=relation.identifier\n )) -%}\n{% endmacro %}", + "macro_sql": "{% macro escape_single_quotes(expression) %}\n {{ return(adapter.dispatch('escape_single_quotes', 'dbt') (expression)) }}\n{% endmacro %}", "meta": {}, - "name": "load_cached_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "escape_single_quotes", + "original_file_path": "macros/utils/escape_single_quotes.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/utils/escape_single_quotes.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.load_cached_relation" + "unique_id": "macro.dbt.escape_single_quotes" }, - "macro.dbt.load_csv_rows": { + "macro.dbt.except": { "arguments": [], - "created_at": 1696859933.406237, + "created_at": 1733768712.0824928, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__load_csv_rows" + "macro.dbt.default__except" ] }, "description": "", @@ -4674,23 +5072,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro load_csv_rows(model, agate_table) -%}\n {{ adapter.dispatch('load_csv_rows', 'dbt')(model, agate_table) }}\n{%- endmacro %}", + "macro_sql": "{% macro except() %}\n {{ return(adapter.dispatch('except', 'dbt')()) }}\n{% endmacro %}", "meta": {}, - "name": "load_csv_rows", - "original_file_path": "macros/materializations/seeds/helpers.sql", + "name": "except", + "original_file_path": "macros/utils/except.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seeds/helpers.sql", + "path": "macros/utils/except.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.load_csv_rows" + "unique_id": "macro.dbt.except" }, - "macro.dbt.load_relation": { + "macro.dbt.format_columns": { "arguments": [], - "created_at": 1696859933.43245, + "created_at": 1733768712.066251, "depends_on": { "macros": [ - "macro.dbt.load_cached_relation" + "macro.dbt.default__format_column" ] }, "description": "", @@ -4698,23 +5096,25 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro load_relation(relation) %}\n {{ return(load_cached_relation(relation)) }}\n{% endmacro %}", + "macro_sql": "{% macro format_columns(columns) %}\n {% set formatted_columns = [] %}\n {% for column in columns %}\n {%- set formatted_column = adapter.dispatch('format_column', 'dbt')(column) -%}\n {%- do formatted_columns.append(formatted_column) -%}\n {% endfor %}\n {{ return(formatted_columns) }}\n{% endmacro %}", "meta": {}, - "name": "load_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "format_columns", + "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/relations/column/columns_spec_ddl.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.load_relation" + "unique_id": "macro.dbt.format_columns" }, - "macro.dbt.make_backup_relation": { + "macro.dbt.format_row": { "arguments": [], - "created_at": 1696859933.430537, + "created_at": 1733768712.139827, "depends_on": { "macros": [ - "macro.dbt.default__make_backup_relation" + "macro.dbt.string_literal", + "macro.dbt.escape_single_quotes", + "macro.dbt.safe_cast" ] }, "description": "", @@ -4722,45 +5122,47 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro make_backup_relation(base_relation, backup_relation_type, suffix='__dbt_backup') %}\n {{ return(adapter.dispatch('make_backup_relation', 'dbt')(base_relation, backup_relation_type, suffix)) }}\n{% endmacro %}", + "macro_sql": "\n\n{%- macro format_row(row, column_name_to_data_types) -%}\n {#-- generate case-insensitive formatted row --#}\n {% set formatted_row = {} %}\n {%- for column_name, column_value in row.items() -%}\n {% set column_name = column_name|lower %}\n\n {%- if column_name not in column_name_to_data_types %}\n {#-- if user-provided row contains column name that relation does not contain, raise an error --#}\n {% set fixture_name = \"expected output\" if model.resource_type == 'unit_test' else (\"'\" ~ model.name ~ \"'\") %}\n {{ exceptions.raise_compiler_error(\n \"Invalid column name: '\" ~ column_name ~ \"' in unit test fixture for \" ~ fixture_name ~ \".\"\n \"\\nAccepted columns for \" ~ fixture_name ~ \" are: \" ~ (column_name_to_data_types.keys()|list)\n ) }}\n {%- endif -%}\n\n {%- set column_type = column_name_to_data_types[column_name] %}\n\n {#-- sanitize column_value: wrap yaml strings in quotes, apply cast --#}\n {%- set column_value_clean = column_value -%}\n {%- if column_value is string -%}\n {%- set column_value_clean = dbt.string_literal(dbt.escape_single_quotes(column_value)) -%}\n {%- elif column_value is none -%}\n {%- set column_value_clean = 'null' -%}\n {%- endif -%}\n\n {%- set row_update = {column_name: safe_cast(column_value_clean, column_type) } -%}\n {%- do formatted_row.update(row_update) -%}\n {%- endfor -%}\n {{ return(formatted_row) }}\n{%- endmacro -%}\n\n", "meta": {}, - "name": "make_backup_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "format_row", + "original_file_path": "macros/unit_test_sql/get_fixture_sql.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/unit_test_sql/get_fixture_sql.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.make_backup_relation" + "unique_id": "macro.dbt.format_row" }, - "macro.dbt.make_hook_config": { + "macro.dbt.generate_alias_name": { "arguments": [], - "created_at": 1696859933.348366, + "created_at": 1733768712.048397, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__generate_alias_name" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro make_hook_config(sql, inside_transaction) %}\n {{ tojson({\"sql\": sql, \"transaction\": inside_transaction}) }}\n{% endmacro %}", + "macro_sql": "{% macro generate_alias_name(custom_alias_name=none, node=none) -%}\n {% do return(adapter.dispatch('generate_alias_name', 'dbt')(custom_alias_name, node)) %}\n{%- endmacro %}", "meta": {}, - "name": "make_hook_config", - "original_file_path": "macros/materializations/hooks.sql", + "name": "generate_alias_name", + "original_file_path": "macros/get_custom_name/get_custom_alias.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/hooks.sql", + "path": "macros/get_custom_name/get_custom_alias.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.make_hook_config" + "unique_id": "macro.dbt.generate_alias_name" }, - "macro.dbt.make_intermediate_relation": { + "macro.dbt.generate_database_name": { "arguments": [], - "created_at": 1696859933.429812, + "created_at": 1733768712.050146, "depends_on": { "macros": [ - "macro.dbt.default__make_intermediate_relation" + "macro.dbt.default__generate_database_name" ] }, "description": "", @@ -4768,23 +5170,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro make_intermediate_relation(base_relation, suffix='__dbt_tmp') %}\n {{ return(adapter.dispatch('make_intermediate_relation', 'dbt')(base_relation, suffix)) }}\n{% endmacro %}", + "macro_sql": "{% macro generate_database_name(custom_database_name=none, node=none) -%}\n {% do return(adapter.dispatch('generate_database_name', 'dbt')(custom_database_name, node)) %}\n{%- endmacro %}", "meta": {}, - "name": "make_intermediate_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "generate_database_name", + "original_file_path": "macros/get_custom_name/get_custom_database.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/get_custom_name/get_custom_database.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.make_intermediate_relation" + "unique_id": "macro.dbt.generate_database_name" }, - "macro.dbt.make_temp_relation": { + "macro.dbt.generate_schema_name": { "arguments": [], - "created_at": 1696859933.430153, + "created_at": 1733768712.049263, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__make_temp_relation" + "macro.dbt.default__generate_schema_name" ] }, "description": "", @@ -4792,74 +5194,45 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro make_temp_relation(base_relation, suffix='__dbt_tmp') %}\n {{ return(adapter.dispatch('make_temp_relation', 'dbt')(base_relation, suffix)) }}\n{% endmacro %}", + "macro_sql": "{% macro generate_schema_name(custom_schema_name=none, node=none) -%}\n {{ return(adapter.dispatch('generate_schema_name', 'dbt')(custom_schema_name, node)) }}\n{% endmacro %}", "meta": {}, - "name": "make_temp_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "generate_schema_name", + "original_file_path": "macros/get_custom_name/get_custom_schema.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/get_custom_name/get_custom_schema.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.make_temp_relation" + "unique_id": "macro.dbt.generate_schema_name" }, - "macro.dbt.materialization_incremental_default": { + "macro.dbt.generate_schema_name_for_env": { "arguments": [], - "created_at": 1696859933.384355, + "created_at": 1733768712.0497751, "depends_on": { - "macros": [ - "macro.dbt.load_cached_relation", - "macro.dbt.make_temp_relation", - "macro.dbt.make_intermediate_relation", - "macro.dbt.make_backup_relation", - "macro.dbt.should_full_refresh", - "macro.dbt.incremental_validate_on_schema_change", - "macro.dbt.drop_relation_if_exists", - "macro.dbt.run_hooks", - "macro.dbt.get_create_table_as_sql", - "macro.dbt.run_query", - "macro.dbt.process_schema_changes", - "macro.dbt.statement", - "macro.dbt.should_revoke", - "macro.dbt.apply_grants", - "macro.dbt.persist_docs", - "macro.dbt.create_indexes" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% materialization incremental, default -%}\n\n -- relations\n {%- set existing_relation = load_cached_relation(this) -%}\n {%- set target_relation = this.incorporate(type='table') -%}\n {%- set temp_relation = make_temp_relation(target_relation)-%}\n {%- set intermediate_relation = make_intermediate_relation(target_relation)-%}\n {%- set backup_relation_type = 'table' if existing_relation is none else existing_relation.type -%}\n {%- set backup_relation = make_backup_relation(target_relation, backup_relation_type) -%}\n\n -- configs\n {%- set unique_key = config.get('unique_key') -%}\n {%- set full_refresh_mode = (should_full_refresh() or existing_relation.is_view) -%}\n {%- set on_schema_change = incremental_validate_on_schema_change(config.get('on_schema_change'), default='ignore') -%}\n\n -- the temp_ and backup_ relations should not already exist in the database; get_relation\n -- will return None in that case. Otherwise, we get a relation that we can drop\n -- later, before we try to use this name for the current operation. This has to happen before\n -- BEGIN, in a separate transaction\n {%- set preexisting_intermediate_relation = load_cached_relation(intermediate_relation)-%}\n {%- set preexisting_backup_relation = load_cached_relation(backup_relation) -%}\n -- grab current tables grants config for comparison later on\n {% set grant_config = config.get('grants') %}\n {{ drop_relation_if_exists(preexisting_intermediate_relation) }}\n {{ drop_relation_if_exists(preexisting_backup_relation) }}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n {% set to_drop = [] %}\n\n {% if existing_relation is none %}\n {% set build_sql = get_create_table_as_sql(False, target_relation, sql) %}\n {% elif full_refresh_mode %}\n {% set build_sql = get_create_table_as_sql(False, intermediate_relation, sql) %}\n {% set need_swap = true %}\n {% else %}\n {% do run_query(get_create_table_as_sql(True, temp_relation, sql)) %}\n {% do adapter.expand_target_column_types(\n from_relation=temp_relation,\n to_relation=target_relation) %}\n {#-- Process schema changes. Returns dict of changes if successful. Use source columns for upserting/merging --#}\n {% set dest_columns = process_schema_changes(on_schema_change, temp_relation, existing_relation) %}\n {% if not dest_columns %}\n {% set dest_columns = adapter.get_columns_in_relation(existing_relation) %}\n {% endif %}\n\n {#-- Get the incremental_strategy, the macro to use for the strategy, and build the sql --#}\n {% set incremental_strategy = config.get('incremental_strategy') or 'default' %}\n {% set incremental_predicates = config.get('predicates', none) or config.get('incremental_predicates', none) %}\n {% set strategy_sql_macro_func = adapter.get_incremental_strategy_macro(context, incremental_strategy) %}\n {% set strategy_arg_dict = ({'target_relation': target_relation, 'temp_relation': temp_relation, 'unique_key': unique_key, 'dest_columns': dest_columns, 'incremental_predicates': incremental_predicates }) %}\n {% set build_sql = strategy_sql_macro_func(strategy_arg_dict) %}\n\n {% endif %}\n\n {% call statement(\"main\") %}\n {{ build_sql }}\n {% endcall %}\n\n {% if need_swap %}\n {% do adapter.rename_relation(target_relation, backup_relation) %}\n {% do adapter.rename_relation(intermediate_relation, target_relation) %}\n {% do to_drop.append(backup_relation) %}\n {% endif %}\n\n {% set should_revoke = should_revoke(existing_relation, full_refresh_mode) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {% do persist_docs(target_relation, model) %}\n\n {% if existing_relation is none or existing_relation.is_view or should_full_refresh() %}\n {% do create_indexes(target_relation) %}\n {% endif %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n -- `COMMIT` happens here\n {% do adapter.commit() %}\n\n {% for rel in to_drop %}\n {% do adapter.drop_relation(rel) %}\n {% endfor %}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{%- endmaterialization %}", + "macro_sql": "{% macro generate_schema_name_for_env(custom_schema_name, node) -%}\n\n {%- set default_schema = target.schema -%}\n {%- if target.name == 'prod' and custom_schema_name is not none -%}\n\n {{ custom_schema_name | trim }}\n\n {%- else -%}\n\n {{ default_schema }}\n\n {%- endif -%}\n\n{%- endmacro %}", "meta": {}, - "name": "materialization_incremental_default", - "original_file_path": "macros/materializations/models/incremental/incremental.sql", + "name": "generate_schema_name_for_env", + "original_file_path": "macros/get_custom_name/get_custom_schema.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/incremental.sql", + "path": "macros/get_custom_name/get_custom_schema.sql", "resource_type": "macro", - "supported_languages": [ - "sql" - ], - "unique_id": "macro.dbt.materialization_incremental_default" + "supported_languages": null, + "unique_id": "macro.dbt.generate_schema_name_for_env" }, - "macro.dbt.materialization_seed_default": { + "macro.dbt.generate_series": { "arguments": [], - "created_at": 1696859933.4001658, + "created_at": 1733768712.087168, "depends_on": { "macros": [ - "macro.dbt.should_full_refresh", - "macro.dbt.run_hooks", - "macro.dbt.reset_csv_table", - "macro.dbt.create_csv_table", - "macro.dbt.load_csv_rows", - "macro.dbt.noop_statement", - "macro.dbt.get_csv_sql", - "macro.dbt.should_revoke", - "macro.dbt.apply_grants", - "macro.dbt.persist_docs", - "macro.dbt.create_indexes" + "macro.dbt.default__generate_series" ] }, "description": "", @@ -4867,38 +5240,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% materialization seed, default %}\n\n {%- set identifier = model['alias'] -%}\n {%- set full_refresh_mode = (should_full_refresh()) -%}\n\n {%- set old_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) -%}\n\n {%- set exists_as_table = (old_relation is not none and old_relation.is_table) -%}\n {%- set exists_as_view = (old_relation is not none and old_relation.is_view) -%}\n\n {%- set grant_config = config.get('grants') -%}\n {%- set agate_table = load_agate_table() -%}\n -- grab current tables grants config for comparison later on\n\n {%- do store_result('agate_table', response='OK', agate_table=agate_table) -%}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n -- build model\n {% set create_table_sql = \"\" %}\n {% if exists_as_view %}\n {{ exceptions.raise_compiler_error(\"Cannot seed to '{}', it is a view\".format(old_relation)) }}\n {% elif exists_as_table %}\n {% set create_table_sql = reset_csv_table(model, full_refresh_mode, old_relation, agate_table) %}\n {% else %}\n {% set create_table_sql = create_csv_table(model, agate_table) %}\n {% endif %}\n\n {% set code = 'CREATE' if full_refresh_mode else 'INSERT' %}\n {% set rows_affected = (agate_table.rows | length) %}\n {% set sql = load_csv_rows(model, agate_table) %}\n\n {% call noop_statement('main', code ~ ' ' ~ rows_affected, code, rows_affected) %}\n {{ get_csv_sql(create_table_sql, sql) }};\n {% endcall %}\n\n {% set target_relation = this.incorporate(type='table') %}\n\n {% set should_revoke = should_revoke(old_relation, full_refresh_mode) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {% do persist_docs(target_relation, model) %}\n\n {% if full_refresh_mode or not exists_as_table %}\n {% do create_indexes(target_relation) %}\n {% endif %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n -- `COMMIT` happens here\n {{ adapter.commit() }}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{% endmaterialization %}", + "macro_sql": "{% macro generate_series(upper_bound) %}\n {{ return(adapter.dispatch('generate_series', 'dbt')(upper_bound)) }}\n{% endmacro %}", "meta": {}, - "name": "materialization_seed_default", - "original_file_path": "macros/materializations/seeds/seed.sql", + "name": "generate_series", + "original_file_path": "macros/utils/generate_series.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seeds/seed.sql", + "path": "macros/utils/generate_series.sql", "resource_type": "macro", - "supported_languages": [ - "sql" - ], - "unique_id": "macro.dbt.materialization_seed_default" + "supported_languages": null, + "unique_id": "macro.dbt.generate_series" }, - "macro.dbt.materialization_snapshot_default": { + "macro.dbt.get_alter_materialized_view_as_sql": { "arguments": [], - "created_at": 1696859933.365352, + "created_at": 1733768712.0616388, "depends_on": { "macros": [ - "macro.dbt.get_or_create_relation", - "macro.dbt.run_hooks", - "macro.dbt.strategy_dispatch", - "macro.dbt.build_snapshot_table", - "macro.dbt.create_table_as", - "macro.dbt.build_snapshot_staging_table", - "macro.dbt.create_columns", - "macro.dbt.snapshot_merge_sql", - "macro.dbt.statement", - "macro.dbt.should_revoke", - "macro.dbt.apply_grants", - "macro.dbt.persist_docs", - "macro.dbt.create_indexes", - "macro.dbt.post_snapshot" + "macro.dbt_postgres.postgres__get_alter_materialized_view_as_sql" ] }, "description": "", @@ -4906,35 +5264,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% materialization snapshot, default %}\n {%- set config = model['config'] -%}\n\n {%- set target_table = model.get('alias', model.get('name')) -%}\n\n {%- set strategy_name = config.get('strategy') -%}\n {%- set unique_key = config.get('unique_key') %}\n -- grab current tables grants config for comparison later on\n {%- set grant_config = config.get('grants') -%}\n\n {% set target_relation_exists, target_relation = get_or_create_relation(\n database=model.database,\n schema=model.schema,\n identifier=target_table,\n type='table') -%}\n\n {%- if not target_relation.is_table -%}\n {% do exceptions.relation_wrong_type(target_relation, 'table') %}\n {%- endif -%}\n\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n {% set strategy_macro = strategy_dispatch(strategy_name) %}\n {% set strategy = strategy_macro(model, \"snapshotted_data\", \"source_data\", config, target_relation_exists) %}\n\n {% if not target_relation_exists %}\n\n {% set build_sql = build_snapshot_table(strategy, model['compiled_code']) %}\n {% set final_sql = create_table_as(False, target_relation, build_sql) %}\n\n {% else %}\n\n {{ adapter.valid_snapshot_target(target_relation) }}\n\n {% set staging_table = build_snapshot_staging_table(strategy, sql, target_relation) %}\n\n -- this may no-op if the database does not require column expansion\n {% do adapter.expand_target_column_types(from_relation=staging_table,\n to_relation=target_relation) %}\n\n {% set missing_columns = adapter.get_missing_columns(staging_table, target_relation)\n | rejectattr('name', 'equalto', 'dbt_change_type')\n | rejectattr('name', 'equalto', 'DBT_CHANGE_TYPE')\n | rejectattr('name', 'equalto', 'dbt_unique_key')\n | rejectattr('name', 'equalto', 'DBT_UNIQUE_KEY')\n | list %}\n\n {% do create_columns(target_relation, missing_columns) %}\n\n {% set source_columns = adapter.get_columns_in_relation(staging_table)\n | rejectattr('name', 'equalto', 'dbt_change_type')\n | rejectattr('name', 'equalto', 'DBT_CHANGE_TYPE')\n | rejectattr('name', 'equalto', 'dbt_unique_key')\n | rejectattr('name', 'equalto', 'DBT_UNIQUE_KEY')\n | list %}\n\n {% set quoted_source_columns = [] %}\n {% for column in source_columns %}\n {% do quoted_source_columns.append(adapter.quote(column.name)) %}\n {% endfor %}\n\n {% set final_sql = snapshot_merge_sql(\n target = target_relation,\n source = staging_table,\n insert_cols = quoted_source_columns\n )\n %}\n\n {% endif %}\n\n {% call statement('main') %}\n {{ final_sql }}\n {% endcall %}\n\n {% set should_revoke = should_revoke(target_relation_exists, full_refresh_mode=False) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {% do persist_docs(target_relation, model) %}\n\n {% if not target_relation_exists %}\n {% do create_indexes(target_relation) %}\n {% endif %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n {{ adapter.commit() }}\n\n {% if staging_table is defined %}\n {% do post_snapshot(staging_table) %}\n {% endif %}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{% endmaterialization %}", + "macro_sql": "{% macro get_alter_materialized_view_as_sql(\n relation,\n configuration_changes,\n sql,\n existing_relation,\n backup_relation,\n intermediate_relation\n) %}\n {{- log('Applying ALTER to: ' ~ relation) -}}\n {{- adapter.dispatch('get_alter_materialized_view_as_sql', 'dbt')(\n relation,\n configuration_changes,\n sql,\n existing_relation,\n backup_relation,\n intermediate_relation\n ) -}}\n{% endmacro %}", "meta": {}, - "name": "materialization_snapshot_default", - "original_file_path": "macros/materializations/snapshots/snapshot.sql", + "name": "get_alter_materialized_view_as_sql", + "original_file_path": "macros/relations/materialized_view/alter.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/snapshot.sql", + "path": "macros/relations/materialized_view/alter.sql", "resource_type": "macro", - "supported_languages": [ - "sql" - ], - "unique_id": "macro.dbt.materialization_snapshot_default" + "supported_languages": null, + "unique_id": "macro.dbt.get_alter_materialized_view_as_sql" }, - "macro.dbt.materialization_table_default": { + "macro.dbt.get_assert_columns_equivalent": { "arguments": [], - "created_at": 1696859933.3927271, + "created_at": 1733768712.064451, "depends_on": { "macros": [ - "macro.dbt.load_cached_relation", - "macro.dbt.make_intermediate_relation", - "macro.dbt.make_backup_relation", - "macro.dbt.drop_relation_if_exists", - "macro.dbt.run_hooks", - "macro.dbt.statement", - "macro.dbt.get_create_table_as_sql", - "macro.dbt.create_indexes", - "macro.dbt.should_revoke", - "macro.dbt.apply_grants", - "macro.dbt.persist_docs" + "macro.dbt.default__get_assert_columns_equivalent" ] }, "description": "", @@ -4942,28 +5288,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% materialization table, default %}\n\n {%- set existing_relation = load_cached_relation(this) -%}\n {%- set target_relation = this.incorporate(type='table') %}\n {%- set intermediate_relation = make_intermediate_relation(target_relation) -%}\n -- the intermediate_relation should not already exist in the database; get_relation\n -- will return None in that case. Otherwise, we get a relation that we can drop\n -- later, before we try to use this name for the current operation\n {%- set preexisting_intermediate_relation = load_cached_relation(intermediate_relation) -%}\n /*\n See ../view/view.sql for more information about this relation.\n */\n {%- set backup_relation_type = 'table' if existing_relation is none else existing_relation.type -%}\n {%- set backup_relation = make_backup_relation(target_relation, backup_relation_type) -%}\n -- as above, the backup_relation should not already exist\n {%- set preexisting_backup_relation = load_cached_relation(backup_relation) -%}\n -- grab current tables grants config for comparison later on\n {% set grant_config = config.get('grants') %}\n\n -- drop the temp relations if they exist already in the database\n {{ drop_relation_if_exists(preexisting_intermediate_relation) }}\n {{ drop_relation_if_exists(preexisting_backup_relation) }}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n -- build model\n {% call statement('main') -%}\n {{ get_create_table_as_sql(False, intermediate_relation, sql) }}\n {%- endcall %}\n\n -- cleanup\n {% if existing_relation is not none %}\n {{ adapter.rename_relation(existing_relation, backup_relation) }}\n {% endif %}\n\n {{ adapter.rename_relation(intermediate_relation, target_relation) }}\n\n {% do create_indexes(target_relation) %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n {% set should_revoke = should_revoke(existing_relation, full_refresh_mode=True) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {% do persist_docs(target_relation, model) %}\n\n -- `COMMIT` happens here\n {{ adapter.commit() }}\n\n -- finally, drop the existing/backup relation after the commit\n {{ drop_relation_if_exists(backup_relation) }}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n{% endmaterialization %}", + "macro_sql": "\n\n{%- macro get_assert_columns_equivalent(sql) -%}\n {{ adapter.dispatch('get_assert_columns_equivalent', 'dbt')(sql) }}\n{%- endmacro -%}\n\n", "meta": {}, - "name": "materialization_table_default", - "original_file_path": "macros/materializations/models/table/table.sql", + "name": "get_assert_columns_equivalent", + "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/table/table.sql", + "path": "macros/relations/column/columns_spec_ddl.sql", "resource_type": "macro", - "supported_languages": [ - "sql" - ], - "unique_id": "macro.dbt.materialization_table_default" + "supported_languages": null, + "unique_id": "macro.dbt.get_assert_columns_equivalent" }, - "macro.dbt.materialization_test_default": { + "macro.dbt.get_batch_size": { "arguments": [], - "created_at": 1696859933.3668091, + "created_at": 1733768712.045829, "depends_on": { "macros": [ - "macro.dbt.should_store_failures", - "macro.dbt.statement", - "macro.dbt.create_table_as", - "macro.dbt.get_test_sql" + "macro.dbt.default__get_batch_size" ] }, "description": "", @@ -4971,34 +5312,23 @@ "node_color": null, "show": true }, - "macro_sql": "{%- materialization test, default -%}\n\n {% set relations = [] %}\n\n {% if should_store_failures() %}\n\n {% set identifier = model['alias'] %}\n {% set old_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) %}\n {% set target_relation = api.Relation.create(\n identifier=identifier, schema=schema, database=database, type='table') -%} %}\n\n {% if old_relation %}\n {% do adapter.drop_relation(old_relation) %}\n {% endif %}\n\n {% call statement(auto_begin=True) %}\n {{ create_table_as(False, target_relation, sql) }}\n {% endcall %}\n\n {% do relations.append(target_relation) %}\n\n {% set main_sql %}\n select *\n from {{ target_relation }}\n {% endset %}\n\n {{ adapter.commit() }}\n\n {% else %}\n\n {% set main_sql = sql %}\n\n {% endif %}\n\n {% set limit = config.get('limit') %}\n {% set fail_calc = config.get('fail_calc') %}\n {% set warn_if = config.get('warn_if') %}\n {% set error_if = config.get('error_if') %}\n\n {% call statement('main', fetch_result=True) -%}\n\n {{ get_test_sql(main_sql, fail_calc, warn_if, error_if, limit)}}\n\n {%- endcall %}\n\n {{ return({'relations': relations}) }}\n\n{%- endmaterialization -%}", + "macro_sql": "{% macro get_batch_size() -%}\n {{ return(adapter.dispatch('get_batch_size', 'dbt')()) }}\n{%- endmacro %}", "meta": {}, - "name": "materialization_test_default", - "original_file_path": "macros/materializations/tests/test.sql", + "name": "get_batch_size", + "original_file_path": "macros/materializations/seeds/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/tests/test.sql", + "path": "macros/materializations/seeds/helpers.sql", "resource_type": "macro", - "supported_languages": [ - "sql" - ], - "unique_id": "macro.dbt.materialization_test_default" + "supported_languages": null, + "unique_id": "macro.dbt.get_batch_size" }, - "macro.dbt.materialization_view_default": { + "macro.dbt.get_binding_char": { "arguments": [], - "created_at": 1696859933.3956711, + "created_at": 1733768712.045561, "depends_on": { "macros": [ - "macro.dbt.load_cached_relation", - "macro.dbt.make_intermediate_relation", - "macro.dbt.make_backup_relation", - "macro.dbt.run_hooks", - "macro.dbt.drop_relation_if_exists", - "macro.dbt.statement", - "macro.dbt.get_create_view_as_sql", - "macro.dbt.should_revoke", - "macro.dbt.apply_grants", - "macro.dbt.persist_docs" + "macro.dbt.default__get_binding_char" ] }, "description": "", @@ -5006,47 +5336,47 @@ "node_color": null, "show": true }, - "macro_sql": "{%- materialization view, default -%}\n\n {%- set existing_relation = load_cached_relation(this) -%}\n {%- set target_relation = this.incorporate(type='view') -%}\n {%- set intermediate_relation = make_intermediate_relation(target_relation) -%}\n\n -- the intermediate_relation should not already exist in the database; get_relation\n -- will return None in that case. Otherwise, we get a relation that we can drop\n -- later, before we try to use this name for the current operation\n {%- set preexisting_intermediate_relation = load_cached_relation(intermediate_relation) -%}\n /*\n This relation (probably) doesn't exist yet. If it does exist, it's a leftover from\n a previous run, and we're going to try to drop it immediately. At the end of this\n materialization, we're going to rename the \"existing_relation\" to this identifier,\n and then we're going to drop it. In order to make sure we run the correct one of:\n - drop view ...\n - drop table ...\n\n We need to set the type of this relation to be the type of the existing_relation, if it exists,\n or else \"view\" as a sane default if it does not. Note that if the existing_relation does not\n exist, then there is nothing to move out of the way and subsequentally drop. In that case,\n this relation will be effectively unused.\n */\n {%- set backup_relation_type = 'view' if existing_relation is none else existing_relation.type -%}\n {%- set backup_relation = make_backup_relation(target_relation, backup_relation_type) -%}\n -- as above, the backup_relation should not already exist\n {%- set preexisting_backup_relation = load_cached_relation(backup_relation) -%}\n -- grab current tables grants config for comparison later on\n {% set grant_config = config.get('grants') %}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n -- drop the temp relations if they exist already in the database\n {{ drop_relation_if_exists(preexisting_intermediate_relation) }}\n {{ drop_relation_if_exists(preexisting_backup_relation) }}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n -- build model\n {% call statement('main') -%}\n {{ get_create_view_as_sql(intermediate_relation, sql) }}\n {%- endcall %}\n\n -- cleanup\n -- move the existing view out of the way\n {% if existing_relation is not none %}\n {{ adapter.rename_relation(existing_relation, backup_relation) }}\n {% endif %}\n {{ adapter.rename_relation(intermediate_relation, target_relation) }}\n\n {% set should_revoke = should_revoke(existing_relation, full_refresh_mode=True) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {% do persist_docs(target_relation, model) %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n {{ adapter.commit() }}\n\n {{ drop_relation_if_exists(backup_relation) }}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{%- endmaterialization -%}", + "macro_sql": "{% macro get_binding_char() -%}\n {{ adapter.dispatch('get_binding_char', 'dbt')() }}\n{%- endmacro %}", "meta": {}, - "name": "materialization_view_default", - "original_file_path": "macros/materializations/models/view/view.sql", + "name": "get_binding_char", + "original_file_path": "macros/materializations/seeds/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/view/view.sql", + "path": "macros/materializations/seeds/helpers.sql", "resource_type": "macro", - "supported_languages": [ - "sql" - ], - "unique_id": "macro.dbt.materialization_view_default" + "supported_languages": null, + "unique_id": "macro.dbt.get_binding_char" }, - "macro.dbt.noop_statement": { + "macro.dbt.get_catalog": { "arguments": [], - "created_at": 1696859933.41152, + "created_at": 1733768712.125071, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt_postgres.postgres__get_catalog" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro noop_statement(name=None, message=None, code=None, rows_affected=None, res=None) -%}\n {%- set sql = caller() -%}\n\n {%- if name == 'main' -%}\n {{ log('Writing runtime SQL for node \"{}\"'.format(model['unique_id'])) }}\n {{ write(sql) }}\n {%- endif -%}\n\n {%- if name is not none -%}\n {{ store_raw_result(name, message=message, code=code, rows_affected=rows_affected, agate_table=res) }}\n {%- endif -%}\n\n{%- endmacro %}", + "macro_sql": "{% macro get_catalog(information_schema, schemas) -%}\n {{ return(adapter.dispatch('get_catalog', 'dbt')(information_schema, schemas)) }}\n{%- endmacro %}", "meta": {}, - "name": "noop_statement", - "original_file_path": "macros/etc/statement.sql", + "name": "get_catalog", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/etc/statement.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.noop_statement" + "unique_id": "macro.dbt.get_catalog" }, - "macro.dbt.partition_range": { + "macro.dbt.get_catalog_for_single_relation": { "arguments": [], - "created_at": 1696859933.414516, + "created_at": 1733768712.127008, "depends_on": { "macros": [ - "macro.dbt.dates_in_range" + "macro.dbt.default__get_catalog_for_single_relation" ] }, "description": "", @@ -5054,23 +5384,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro partition_range(raw_partition_date, date_fmt='%Y%m%d') %}\n {% set partition_range = (raw_partition_date | string).split(\",\") %}\n\n {% if (partition_range | length) == 1 %}\n {% set start_date = partition_range[0] %}\n {% set end_date = none %}\n {% elif (partition_range | length) == 2 %}\n {% set start_date = partition_range[0] %}\n {% set end_date = partition_range[1] %}\n {% else %}\n {{ exceptions.raise_compiler_error(\"Invalid partition time. Expected format: {Start Date}[,{End Date}]. Got: \" ~ raw_partition_date) }}\n {% endif %}\n\n {{ return(dates_in_range(start_date, end_date, in_fmt=date_fmt)) }}\n{% endmacro %}", + "macro_sql": "{% macro get_catalog_for_single_relation(relation) %}\n {{ return(adapter.dispatch('get_catalog_for_single_relation', 'dbt')(relation)) }}\n{% endmacro %}", "meta": {}, - "name": "partition_range", - "original_file_path": "macros/etc/datetime.sql", + "name": "get_catalog_for_single_relation", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/etc/datetime.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.partition_range" + "unique_id": "macro.dbt.get_catalog_for_single_relation" }, - "macro.dbt.persist_docs": { + "macro.dbt.get_catalog_relations": { "arguments": [], - "created_at": 1696859933.438844, + "created_at": 1733768712.12464, "depends_on": { "macros": [ - "macro.dbt.default__persist_docs" + "macro.dbt_postgres.postgres__get_catalog_relations" ] }, "description": "", @@ -5078,23 +5408,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro persist_docs(relation, model, for_relation=true, for_columns=true) -%}\n {{ return(adapter.dispatch('persist_docs', 'dbt')(relation, model, for_relation, for_columns)) }}\n{% endmacro %}", + "macro_sql": "{% macro get_catalog_relations(information_schema, relations) -%}\n {{ return(adapter.dispatch('get_catalog_relations', 'dbt')(information_schema, relations)) }}\n{%- endmacro %}", "meta": {}, - "name": "persist_docs", - "original_file_path": "macros/adapters/persist_docs.sql", + "name": "get_catalog_relations", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/persist_docs.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.persist_docs" + "unique_id": "macro.dbt.get_catalog_relations" }, - "macro.dbt.position": { + "macro.dbt.get_column_schema_from_query": { "arguments": [], - "created_at": 1696859933.419466, + "created_at": 1733768712.132643, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__position" + "macro.dbt.get_empty_subquery_sql" ] }, "description": "", @@ -5102,23 +5432,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro position(substring_text, string_text) -%}\n {{ return(adapter.dispatch('position', 'dbt') (substring_text, string_text)) }}\n{% endmacro %}", + "macro_sql": "{% macro get_column_schema_from_query(select_sql, select_sql_header=none) -%}\n {% set columns = [] %}\n {# -- Using an 'empty subquery' here to get the same schema as the given select_sql statement, without necessitating a data scan.#}\n {% set sql = get_empty_subquery_sql(select_sql, select_sql_header) %}\n {% set column_schema = adapter.get_column_schema_from_query(sql) %}\n {{ return(column_schema) }}\n{% endmacro %}", "meta": {}, - "name": "position", - "original_file_path": "macros/utils/position.sql", + "name": "get_column_schema_from_query", + "original_file_path": "macros/adapters/columns.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/position.sql", + "path": "macros/adapters/columns.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.position" + "unique_id": "macro.dbt.get_column_schema_from_query" }, - "macro.dbt.post_snapshot": { + "macro.dbt.get_columns_in_query": { "arguments": [], - "created_at": 1696859933.359251, + "created_at": 1733768712.132813, "depends_on": { "macros": [ - "macro.dbt.default__post_snapshot" + "macro.dbt.default__get_columns_in_query" ] }, "description": "", @@ -5126,24 +5456,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro post_snapshot(staging_relation) %}\n {{ adapter.dispatch('post_snapshot', 'dbt')(staging_relation) }}\n{% endmacro %}", + "macro_sql": "{% macro get_columns_in_query(select_sql) -%}\n {{ return(adapter.dispatch('get_columns_in_query', 'dbt')(select_sql)) }}\n{% endmacro %}", "meta": {}, - "name": "post_snapshot", - "original_file_path": "macros/materializations/snapshots/helpers.sql", + "name": "get_columns_in_query", + "original_file_path": "macros/adapters/columns.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/helpers.sql", + "path": "macros/adapters/columns.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.post_snapshot" + "unique_id": "macro.dbt.get_columns_in_query" }, - "macro.dbt.process_schema_changes": { + "macro.dbt.get_columns_in_relation": { "arguments": [], - "created_at": 1696859933.390868, + "created_at": 1733768712.130246, "depends_on": { "macros": [ - "macro.dbt.check_for_schema_changes", - "macro.dbt.sync_column_schemas" + "macro.dbt_postgres.postgres__get_columns_in_relation" ] }, "description": "", @@ -5151,71 +5480,71 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro process_schema_changes(on_schema_change, source_relation, target_relation) %}\n\n {% if on_schema_change == 'ignore' %}\n\n {{ return({}) }}\n\n {% else %}\n\n {% set schema_changes_dict = check_for_schema_changes(source_relation, target_relation) %}\n\n {% if schema_changes_dict['schema_changed'] %}\n\n {% if on_schema_change == 'fail' %}\n\n {% set fail_msg %}\n The source and target schemas on this incremental model are out of sync!\n They can be reconciled in several ways:\n - set the `on_schema_change` config to either append_new_columns or sync_all_columns, depending on your situation.\n - Re-run the incremental model with `full_refresh: True` to update the target schema.\n - update the schema manually and re-run the process.\n\n Additional troubleshooting context:\n Source columns not in target: {{ schema_changes_dict['source_not_in_target'] }}\n Target columns not in source: {{ schema_changes_dict['target_not_in_source'] }}\n New column types: {{ schema_changes_dict['new_target_types'] }}\n {% endset %}\n\n {% do exceptions.raise_compiler_error(fail_msg) %}\n\n {# -- unless we ignore, run the sync operation per the config #}\n {% else %}\n\n {% do sync_column_schemas(on_schema_change, target_relation, schema_changes_dict) %}\n\n {% endif %}\n\n {% endif %}\n\n {{ return(schema_changes_dict['source_columns']) }}\n\n {% endif %}\n\n{% endmacro %}", + "macro_sql": "{% macro get_columns_in_relation(relation) -%}\n {{ return(adapter.dispatch('get_columns_in_relation', 'dbt')(relation)) }}\n{% endmacro %}", "meta": {}, - "name": "process_schema_changes", - "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", + "name": "get_columns_in_relation", + "original_file_path": "macros/adapters/columns.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/on_schema_change.sql", + "path": "macros/adapters/columns.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.process_schema_changes" + "unique_id": "macro.dbt.get_columns_in_relation" }, - "macro.dbt.py_current_timestring": { + "macro.dbt.get_create_backup_sql": { "arguments": [], - "created_at": 1696859933.414689, + "created_at": 1733768712.0575302, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__get_create_backup_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro py_current_timestring() %}\n {% set dt = modules.datetime.datetime.now() %}\n {% do return(dt.strftime(\"%Y%m%d%H%M%S%f\")) %}\n{% endmacro %}", + "macro_sql": "{%- macro get_create_backup_sql(relation) -%}\n {{- log('Applying CREATE BACKUP to: ' ~ relation) -}}\n {{- adapter.dispatch('get_create_backup_sql', 'dbt')(relation) -}}\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "py_current_timestring", - "original_file_path": "macros/etc/datetime.sql", + "name": "get_create_backup_sql", + "original_file_path": "macros/relations/create_backup.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/etc/datetime.sql", + "path": "macros/relations/create_backup.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.py_current_timestring" + "unique_id": "macro.dbt.get_create_backup_sql" }, - "macro.dbt.py_script_comment": { + "macro.dbt.get_create_index_sql": { "arguments": [], - "created_at": 1696859933.447296, + "created_at": 1733768712.1046588, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt_postgres.postgres__get_create_index_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{%macro py_script_comment()%}\n{%endmacro%}", + "macro_sql": "{% macro get_create_index_sql(relation, index_dict) -%}\n {{ return(adapter.dispatch('get_create_index_sql', 'dbt')(relation, index_dict)) }}\n{% endmacro %}", "meta": {}, - "name": "py_script_comment", - "original_file_path": "macros/python_model/python.sql", + "name": "get_create_index_sql", + "original_file_path": "macros/adapters/indexes.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/python_model/python.sql", + "path": "macros/adapters/indexes.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.py_script_comment" + "unique_id": "macro.dbt.get_create_index_sql" }, - "macro.dbt.py_script_postfix": { + "macro.dbt.get_create_intermediate_sql": { "arguments": [], - "created_at": 1696859933.447246, + "created_at": 1733768712.05427, "depends_on": { "macros": [ - "macro.dbt.build_ref_function", - "macro.dbt.build_source_function", - "macro.dbt.build_config_dict", - "macro.dbt.is_incremental", - "macro.dbt.py_script_comment" + "macro.dbt.default__get_create_intermediate_sql" ] }, "description": "", @@ -5223,23 +5552,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro py_script_postfix(model) %}\n# This part is user provided model code\n# you will need to copy the next section to run the code\n# COMMAND ----------\n# this part is dbt logic for get ref work, do not modify\n\n{{ build_ref_function(model ) }}\n{{ build_source_function(model ) }}\n{{ build_config_dict(model) }}\n\nclass config:\n def __init__(self, *args, **kwargs):\n pass\n\n @staticmethod\n def get(key, default=None):\n return config_dict.get(key, default)\n\nclass this:\n \"\"\"dbt.this() or dbt.this.identifier\"\"\"\n database = '{{ this.database }}'\n schema = '{{ this.schema }}'\n identifier = '{{ this.identifier }}'\n def __repr__(self):\n return '{{ this }}'\n\n\nclass dbtObj:\n def __init__(self, load_df_function) -> None:\n self.source = lambda *args: source(*args, dbt_load_df_function=load_df_function)\n self.ref = lambda *args: ref(*args, dbt_load_df_function=load_df_function)\n self.config = config\n self.this = this()\n self.is_incremental = {{ is_incremental() }}\n\n# COMMAND ----------\n{{py_script_comment()}}\n{% endmacro %}", + "macro_sql": "{%- macro get_create_intermediate_sql(relation, sql) -%}\n {{- log('Applying CREATE INTERMEDIATE to: ' ~ relation) -}}\n {{- adapter.dispatch('get_create_intermediate_sql', 'dbt')(relation, sql) -}}\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "py_script_postfix", - "original_file_path": "macros/python_model/python.sql", + "name": "get_create_intermediate_sql", + "original_file_path": "macros/relations/create_intermediate.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/python_model/python.sql", + "path": "macros/relations/create_intermediate.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.py_script_postfix" + "unique_id": "macro.dbt.get_create_intermediate_sql" }, - "macro.dbt.rename_relation": { + "macro.dbt.get_create_materialized_view_as_sql": { "arguments": [], - "created_at": 1696859933.431423, + "created_at": 1733768712.062571, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__rename_relation" + "macro.dbt_postgres.postgres__get_create_materialized_view_as_sql" ] }, "description": "", @@ -5247,23 +5576,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro rename_relation(from_relation, to_relation) -%}\n {{ return(adapter.dispatch('rename_relation', 'dbt')(from_relation, to_relation)) }}\n{% endmacro %}", + "macro_sql": "{% macro get_create_materialized_view_as_sql(relation, sql) -%}\n {{- adapter.dispatch('get_create_materialized_view_as_sql', 'dbt')(relation, sql) -}}\n{%- endmacro %}", "meta": {}, - "name": "rename_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "get_create_materialized_view_as_sql", + "original_file_path": "macros/relations/materialized_view/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/relations/materialized_view/create.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.rename_relation" + "unique_id": "macro.dbt.get_create_materialized_view_as_sql" }, - "macro.dbt.replace": { + "macro.dbt.get_create_sql": { "arguments": [], - "created_at": 1696859933.415141, + "created_at": 1733768712.058231, "depends_on": { "macros": [ - "macro.dbt.default__replace" + "macro.dbt.default__get_create_sql" ] }, "description": "", @@ -5271,23 +5600,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro replace(field, old_chars, new_chars) -%}\n {{ return(adapter.dispatch('replace', 'dbt') (field, old_chars, new_chars)) }}\n{% endmacro %}", + "macro_sql": "{%- macro get_create_sql(relation, sql) -%}\n {{- log('Applying CREATE to: ' ~ relation) -}}\n {{- adapter.dispatch('get_create_sql', 'dbt')(relation, sql) -}}\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "replace", - "original_file_path": "macros/utils/replace.sql", + "name": "get_create_sql", + "original_file_path": "macros/relations/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/replace.sql", + "path": "macros/relations/create.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.replace" + "unique_id": "macro.dbt.get_create_sql" }, - "macro.dbt.reset_csv_table": { + "macro.dbt.get_create_table_as_sql": { "arguments": [], - "created_at": 1696859933.4047942, + "created_at": 1733768712.068589, "depends_on": { "macros": [ - "macro.dbt.default__reset_csv_table" + "macro.dbt.default__get_create_table_as_sql" ] }, "description": "", @@ -5295,23 +5624,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro reset_csv_table(model, full_refresh, old_relation, agate_table) -%}\n {{ adapter.dispatch('reset_csv_table', 'dbt')(model, full_refresh, old_relation, agate_table) }}\n{%- endmacro %}", + "macro_sql": "{% macro get_create_table_as_sql(temporary, relation, sql) -%}\n {{ adapter.dispatch('get_create_table_as_sql', 'dbt')(temporary, relation, sql) }}\n{%- endmacro %}", "meta": {}, - "name": "reset_csv_table", - "original_file_path": "macros/materializations/seeds/helpers.sql", + "name": "get_create_table_as_sql", + "original_file_path": "macros/relations/table/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seeds/helpers.sql", + "path": "macros/relations/table/create.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.reset_csv_table" + "unique_id": "macro.dbt.get_create_table_as_sql" }, - "macro.dbt.right": { + "macro.dbt.get_create_view_as_sql": { "arguments": [], - "created_at": 1696859933.416839, + "created_at": 1733768712.0741491, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__right" + "macro.dbt.default__get_create_view_as_sql" ] }, "description": "", @@ -5319,23 +5648,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro right(string_text, length_expression) -%}\n {{ return(adapter.dispatch('right', 'dbt') (string_text, length_expression)) }}\n{% endmacro %}", + "macro_sql": "{% macro get_create_view_as_sql(relation, sql) -%}\n {{ adapter.dispatch('get_create_view_as_sql', 'dbt')(relation, sql) }}\n{%- endmacro %}", "meta": {}, - "name": "right", - "original_file_path": "macros/utils/right.sql", + "name": "get_create_view_as_sql", + "original_file_path": "macros/relations/view/create.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/right.sql", + "path": "macros/relations/view/create.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.right" + "unique_id": "macro.dbt.get_create_view_as_sql" }, - "macro.dbt.run_hooks": { + "macro.dbt.get_csv_sql": { "arguments": [], - "created_at": 1696859933.348225, + "created_at": 1733768712.0452921, "depends_on": { "macros": [ - "macro.dbt.statement" + "macro.dbt.default__get_csv_sql" ] }, "description": "", @@ -5343,23 +5672,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro run_hooks(hooks, inside_transaction=True) %}\n {% for hook in hooks | selectattr('transaction', 'equalto', inside_transaction) %}\n {% if not inside_transaction and loop.first %}\n {% call statement(auto_begin=inside_transaction) %}\n commit;\n {% endcall %}\n {% endif %}\n {% set rendered = render(hook.get('sql')) | trim %}\n {% if (rendered | length) > 0 %}\n {% call statement(auto_begin=inside_transaction) %}\n {{ rendered }}\n {% endcall %}\n {% endif %}\n {% endfor %}\n{% endmacro %}", + "macro_sql": "{% macro get_csv_sql(create_or_truncate_sql, insert_sql) %}\n {{ adapter.dispatch('get_csv_sql', 'dbt')(create_or_truncate_sql, insert_sql) }}\n{% endmacro %}", "meta": {}, - "name": "run_hooks", - "original_file_path": "macros/materializations/hooks.sql", + "name": "get_csv_sql", + "original_file_path": "macros/materializations/seeds/helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/hooks.sql", + "path": "macros/materializations/seeds/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.run_hooks" + "unique_id": "macro.dbt.get_csv_sql" }, - "macro.dbt.run_query": { + "macro.dbt.get_dcl_statement_list": { "arguments": [], - "created_at": 1696859933.411741, + "created_at": 1733768712.116114, "depends_on": { "macros": [ - "macro.dbt.statement" + "macro.dbt.default__get_dcl_statement_list" ] }, "description": "", @@ -5367,23 +5696,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro run_query(sql) %}\n {% call statement(\"run_query_statement\", fetch_result=true, auto_begin=false) %}\n {{ sql }}\n {% endcall %}\n\n {% do return(load_result(\"run_query_statement\").table) %}\n{% endmacro %}", + "macro_sql": "{% macro get_dcl_statement_list(relation, grant_config, get_dcl_macro) %}\n {{ return(adapter.dispatch('get_dcl_statement_list', 'dbt')(relation, grant_config, get_dcl_macro)) }}\n{% endmacro %}", "meta": {}, - "name": "run_query", - "original_file_path": "macros/etc/statement.sql", + "name": "get_dcl_statement_list", + "original_file_path": "macros/adapters/apply_grants.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/etc/statement.sql", + "path": "macros/adapters/apply_grants.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.run_query" + "unique_id": "macro.dbt.get_dcl_statement_list" }, - "macro.dbt.safe_cast": { + "macro.dbt.get_delete_insert_merge_sql": { "arguments": [], - "created_at": 1696859933.4182541, + "created_at": 1733768711.980267, "depends_on": { "macros": [ - "macro.dbt.default__safe_cast" + "macro.dbt.default__get_delete_insert_merge_sql" ] }, "description": "", @@ -5391,67 +5720,71 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro safe_cast(field, type) %}\n {{ return(adapter.dispatch('safe_cast', 'dbt') (field, type)) }}\n{% endmacro %}", + "macro_sql": "{% macro get_delete_insert_merge_sql(target, source, unique_key, dest_columns, incremental_predicates) -%}\n {{ adapter.dispatch('get_delete_insert_merge_sql', 'dbt')(target, source, unique_key, dest_columns, incremental_predicates) }}\n{%- endmacro %}", "meta": {}, - "name": "safe_cast", - "original_file_path": "macros/utils/safe_cast.sql", + "name": "get_delete_insert_merge_sql", + "original_file_path": "macros/materializations/models/incremental/merge.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/safe_cast.sql", + "path": "macros/materializations/models/incremental/merge.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.safe_cast" + "unique_id": "macro.dbt.get_delete_insert_merge_sql" }, - "macro.dbt.set_sql_header": { + "macro.dbt.get_drop_backup_sql": { "arguments": [], - "created_at": 1696859933.3489301, + "created_at": 1733768712.055254, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__get_drop_backup_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro set_sql_header(config) -%}\n {{ config.set('sql_header', caller()) }}\n{%- endmacro %}", + "macro_sql": "{%- macro get_drop_backup_sql(relation) -%}\n {{- log('Applying DROP BACKUP to: ' ~ relation) -}}\n {{- adapter.dispatch('get_drop_backup_sql', 'dbt')(relation) -}}\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "set_sql_header", - "original_file_path": "macros/materializations/configs.sql", + "name": "get_drop_backup_sql", + "original_file_path": "macros/relations/drop_backup.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/configs.sql", + "path": "macros/relations/drop_backup.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.set_sql_header" + "unique_id": "macro.dbt.get_drop_backup_sql" }, - "macro.dbt.should_full_refresh": { + "macro.dbt.get_drop_index_sql": { "arguments": [], - "created_at": 1696859933.349144, + "created_at": 1733768712.105682, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt_postgres.postgres__get_drop_index_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro should_full_refresh() %}\n {% set config_full_refresh = config.get('full_refresh') %}\n {% if config_full_refresh is none %}\n {% set config_full_refresh = flags.FULL_REFRESH %}\n {% endif %}\n {% do return(config_full_refresh) %}\n{% endmacro %}", + "macro_sql": "{% macro get_drop_index_sql(relation, index_name) -%}\n {{ adapter.dispatch('get_drop_index_sql', 'dbt')(relation, index_name) }}\n{%- endmacro %}", "meta": {}, - "name": "should_full_refresh", - "original_file_path": "macros/materializations/configs.sql", + "name": "get_drop_index_sql", + "original_file_path": "macros/adapters/indexes.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/configs.sql", + "path": "macros/adapters/indexes.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.should_full_refresh" + "unique_id": "macro.dbt.get_drop_index_sql" }, - "macro.dbt.should_revoke": { + "macro.dbt.get_drop_sql": { "arguments": [], - "created_at": 1696859933.4349701, + "created_at": 1733768712.05106, "depends_on": { "macros": [ - "macro.dbt.copy_grants" + "macro.dbt.default__get_drop_sql" ] }, "description": "", @@ -5459,45 +5792,47 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro should_revoke(existing_relation, full_refresh_mode=True) %}\n\n {% if not existing_relation %}\n {#-- The table doesn't already exist, so no grants to copy over --#}\n {{ return(False) }}\n {% elif full_refresh_mode %}\n {#-- The object is being REPLACED -- whether grants are copied over depends on the value of user config --#}\n {{ return(copy_grants()) }}\n {% else %}\n {#-- The table is being merged/upserted/inserted -- grants will be carried over --#}\n {{ return(True) }}\n {% endif %}\n\n{% endmacro %}", + "macro_sql": "{%- macro get_drop_sql(relation) -%}\n {{- log('Applying DROP to: ' ~ relation) -}}\n {{- adapter.dispatch('get_drop_sql', 'dbt')(relation) -}}\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "should_revoke", - "original_file_path": "macros/adapters/apply_grants.sql", + "name": "get_drop_sql", + "original_file_path": "macros/relations/drop.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/apply_grants.sql", + "path": "macros/relations/drop.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.should_revoke" + "unique_id": "macro.dbt.get_drop_sql" }, - "macro.dbt.should_store_failures": { + "macro.dbt.get_empty_schema_sql": { "arguments": [], - "created_at": 1696859933.349358, + "created_at": 1733768712.131246, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__get_empty_schema_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro should_store_failures() %}\n {% set config_store_failures = config.get('store_failures') %}\n {% if config_store_failures is none %}\n {% set config_store_failures = flags.STORE_FAILURES %}\n {% endif %}\n {% do return(config_store_failures) %}\n{% endmacro %}", + "macro_sql": "{% macro get_empty_schema_sql(columns) -%}\n {{ return(adapter.dispatch('get_empty_schema_sql', 'dbt')(columns)) }}\n{% endmacro %}", "meta": {}, - "name": "should_store_failures", - "original_file_path": "macros/materializations/configs.sql", + "name": "get_empty_schema_sql", + "original_file_path": "macros/adapters/columns.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/configs.sql", + "path": "macros/adapters/columns.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.should_store_failures" + "unique_id": "macro.dbt.get_empty_schema_sql" }, - "macro.dbt.snapshot_check_all_get_existing_columns": { + "macro.dbt.get_empty_subquery_sql": { "arguments": [], - "created_at": 1696859933.354965, + "created_at": 1733768712.130889, "depends_on": { "macros": [ - "macro.dbt.get_columns_in_query" + "macro.dbt.default__get_empty_subquery_sql" ] }, "description": "", @@ -5505,26 +5840,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro snapshot_check_all_get_existing_columns(node, target_exists, check_cols_config) -%}\n {%- if not target_exists -%}\n {#-- no table yet -> return whatever the query does --#}\n {{ return((false, query_columns)) }}\n {%- endif -%}\n\n {#-- handle any schema changes --#}\n {%- set target_relation = adapter.get_relation(database=node.database, schema=node.schema, identifier=node.alias) -%}\n\n {% if check_cols_config == 'all' %}\n {%- set query_columns = get_columns_in_query(node['compiled_code']) -%}\n\n {% elif check_cols_config is iterable and (check_cols_config | length) > 0 %}\n {#-- query for proper casing/quoting, to support comparison below --#}\n {%- set select_check_cols_from_target -%}\n select {{ check_cols_config | join(', ') }} from ({{ node['compiled_code'] }}) subq\n {%- endset -%}\n {% set query_columns = get_columns_in_query(select_check_cols_from_target) %}\n\n {% else %}\n {% do exceptions.raise_compiler_error(\"Invalid value for 'check_cols': \" ~ check_cols_config) %}\n {% endif %}\n\n {%- set existing_cols = adapter.get_columns_in_relation(target_relation) | map(attribute = 'name') | list -%}\n {%- set ns = namespace() -%} {#-- handle for-loop scoping with a namespace --#}\n {%- set ns.column_added = false -%}\n\n {%- set intersection = [] -%}\n {%- for col in query_columns -%}\n {%- if col in existing_cols -%}\n {%- do intersection.append(adapter.quote(col)) -%}\n {%- else -%}\n {% set ns.column_added = true %}\n {%- endif -%}\n {%- endfor -%}\n {{ return((ns.column_added, intersection)) }}\n{%- endmacro %}", + "macro_sql": "{% macro get_empty_subquery_sql(select_sql, select_sql_header=none) -%}\n {{ return(adapter.dispatch('get_empty_subquery_sql', 'dbt')(select_sql, select_sql_header)) }}\n{% endmacro %}", "meta": {}, - "name": "snapshot_check_all_get_existing_columns", - "original_file_path": "macros/materializations/snapshots/strategies.sql", + "name": "get_empty_subquery_sql", + "original_file_path": "macros/adapters/columns.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/strategies.sql", + "path": "macros/adapters/columns.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.snapshot_check_all_get_existing_columns" + "unique_id": "macro.dbt.get_empty_subquery_sql" }, - "macro.dbt.snapshot_check_strategy": { + "macro.dbt.get_expected_sql": { "arguments": [], - "created_at": 1696859933.3558788, + "created_at": 1733768712.138807, "depends_on": { "macros": [ - "macro.dbt.snapshot_get_time", - "macro.dbt.snapshot_check_all_get_existing_columns", - "macro.dbt.get_true_sql", - "macro.dbt.snapshot_hash_arguments" + "macro.dbt.format_row" ] }, "description": "", @@ -5532,23 +5864,26 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro snapshot_check_strategy(node, snapshotted_rel, current_rel, config, target_exists) %}\n {% set check_cols_config = config['check_cols'] %}\n {% set primary_key = config['unique_key'] %}\n {% set invalidate_hard_deletes = config.get('invalidate_hard_deletes', false) %}\n {% set updated_at = config.get('updated_at', snapshot_get_time()) %}\n\n {% set column_added = false %}\n\n {% set column_added, check_cols = snapshot_check_all_get_existing_columns(node, target_exists, check_cols_config) %}\n\n {%- set row_changed_expr -%}\n (\n {%- if column_added -%}\n {{ get_true_sql() }}\n {%- else -%}\n {%- for col in check_cols -%}\n {{ snapshotted_rel }}.{{ col }} != {{ current_rel }}.{{ col }}\n or\n (\n (({{ snapshotted_rel }}.{{ col }} is null) and not ({{ current_rel }}.{{ col }} is null))\n or\n ((not {{ snapshotted_rel }}.{{ col }} is null) and ({{ current_rel }}.{{ col }} is null))\n )\n {%- if not loop.last %} or {% endif -%}\n {%- endfor -%}\n {%- endif -%}\n )\n {%- endset %}\n\n {% set scd_id_expr = snapshot_hash_arguments([primary_key, updated_at]) %}\n\n {% do return({\n \"unique_key\": primary_key,\n \"updated_at\": updated_at,\n \"row_changed\": row_changed_expr,\n \"scd_id\": scd_id_expr,\n \"invalidate_hard_deletes\": invalidate_hard_deletes\n }) %}\n{% endmacro %}", + "macro_sql": "{% macro get_expected_sql(rows, column_name_to_data_types) %}\n\n{%- if (rows | length) == 0 -%}\n select * from dbt_internal_unit_test_actual\n limit 0\n{%- else -%}\n{%- for row in rows -%}\n{%- set formatted_row = format_row(row, column_name_to_data_types) -%}\nselect\n{%- for column_name, column_value in formatted_row.items() %} {{ column_value }} as {{ column_name }}{% if not loop.last -%}, {%- endif %}\n{%- endfor %}\n{%- if not loop.last %}\nunion all\n{% endif %}\n{%- endfor -%}\n{%- endif -%}\n\n{% endmacro %}", "meta": {}, - "name": "snapshot_check_strategy", - "original_file_path": "macros/materializations/snapshots/strategies.sql", + "name": "get_expected_sql", + "original_file_path": "macros/unit_test_sql/get_fixture_sql.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/strategies.sql", + "path": "macros/unit_test_sql/get_fixture_sql.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.snapshot_check_strategy" + "unique_id": "macro.dbt.get_expected_sql" }, - "macro.dbt.snapshot_get_time": { + "macro.dbt.get_fixture_sql": { "arguments": [], - "created_at": 1696859933.425979, + "created_at": 1733768712.138287, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__snapshot_get_time" + "macro.dbt.load_relation", + "macro.dbt.safe_cast", + "macro.dbt.validate_fixture_rows", + "macro.dbt.format_row" ] }, "description": "", @@ -5556,23 +5891,23 @@ "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro snapshot_get_time() -%}\n {{ adapter.dispatch('snapshot_get_time', 'dbt')() }}\n{%- endmacro -%}\n\n", + "macro_sql": "{% macro get_fixture_sql(rows, column_name_to_data_types) %}\n-- Fixture for {{ model.name }}\n{% set default_row = {} %}\n\n{%- if not column_name_to_data_types -%}\n{#-- Use defer_relation IFF it is available in the manifest and 'this' is missing from the database --#}\n{%- set this_or_defer_relation = defer_relation if (defer_relation and not load_relation(this)) else this -%}\n{%- set columns_in_relation = adapter.get_columns_in_relation(this_or_defer_relation) -%}\n\n{%- set column_name_to_data_types = {} -%}\n{%- for column in columns_in_relation -%}\n{#-- This needs to be a case-insensitive comparison --#}\n{%- do column_name_to_data_types.update({column.name|lower: column.data_type}) -%}\n{%- endfor -%}\n{%- endif -%}\n\n{%- if not column_name_to_data_types -%}\n {{ exceptions.raise_compiler_error(\"Not able to get columns for unit test '\" ~ model.name ~ \"' from relation \" ~ this ~ \" because the relation doesn't exist\") }}\n{%- endif -%}\n\n{%- for column_name, column_type in column_name_to_data_types.items() -%}\n {%- do default_row.update({column_name: (safe_cast(\"null\", column_type) | trim )}) -%}\n{%- endfor -%}\n\n{{ validate_fixture_rows(rows, row_number) }}\n\n{%- for row in rows -%}\n{%- set formatted_row = format_row(row, column_name_to_data_types) -%}\n{%- set default_row_copy = default_row.copy() -%}\n{%- do default_row_copy.update(formatted_row) -%}\nselect\n{%- for column_name, column_value in default_row_copy.items() %} {{ column_value }} as {{ column_name }}{% if not loop.last -%}, {%- endif %}\n{%- endfor %}\n{%- if not loop.last %}\nunion all\n{% endif %}\n{%- endfor -%}\n\n{%- if (rows | length) == 0 -%}\n select\n {%- for column_name, column_value in default_row.items() %} {{ column_value }} as {{ column_name }}{% if not loop.last -%},{%- endif %}\n {%- endfor %}\n limit 0\n{%- endif -%}\n{% endmacro %}", "meta": {}, - "name": "snapshot_get_time", - "original_file_path": "macros/adapters/timestamps.sql", + "name": "get_fixture_sql", + "original_file_path": "macros/unit_test_sql/get_fixture_sql.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/timestamps.sql", + "path": "macros/unit_test_sql/get_fixture_sql.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.snapshot_get_time" + "unique_id": "macro.dbt.get_fixture_sql" }, - "macro.dbt.snapshot_hash_arguments": { + "macro.dbt.get_grant_sql": { "arguments": [], - "created_at": 1696859933.353062, + "created_at": 1733768712.115305, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__snapshot_hash_arguments" + "macro.dbt.default__get_grant_sql" ] }, "description": "", @@ -5580,23 +5915,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro snapshot_hash_arguments(args) -%}\n {{ adapter.dispatch('snapshot_hash_arguments', 'dbt')(args) }}\n{%- endmacro %}", + "macro_sql": "{% macro get_grant_sql(relation, privilege, grantees) %}\n {{ return(adapter.dispatch('get_grant_sql', 'dbt')(relation, privilege, grantees)) }}\n{% endmacro %}", "meta": {}, - "name": "snapshot_hash_arguments", - "original_file_path": "macros/materializations/snapshots/strategies.sql", + "name": "get_grant_sql", + "original_file_path": "macros/adapters/apply_grants.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/strategies.sql", + "path": "macros/adapters/apply_grants.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.snapshot_hash_arguments" + "unique_id": "macro.dbt.get_grant_sql" }, - "macro.dbt.snapshot_merge_sql": { + "macro.dbt.get_incremental_append_sql": { "arguments": [], - "created_at": 1696859933.349678, + "created_at": 1733768711.9837089, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__snapshot_merge_sql" + "macro.dbt.default__get_incremental_append_sql" ] }, "description": "", @@ -5604,23 +5939,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro snapshot_merge_sql(target, source, insert_cols) -%}\n {{ adapter.dispatch('snapshot_merge_sql', 'dbt')(target, source, insert_cols) }}\n{%- endmacro %}", + "macro_sql": "{% macro get_incremental_append_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_append_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", "meta": {}, - "name": "snapshot_merge_sql", - "original_file_path": "macros/materializations/snapshots/snapshot_merge.sql", + "name": "get_incremental_append_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/snapshot_merge.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.snapshot_merge_sql" + "unique_id": "macro.dbt.get_incremental_append_sql" }, - "macro.dbt.snapshot_staging_table": { + "macro.dbt.get_incremental_default_sql": { "arguments": [], - "created_at": 1696859933.359636, + "created_at": 1733768711.985472, "depends_on": { "macros": [ - "macro.dbt.default__snapshot_staging_table" + "macro.dbt_postgres.postgres__get_incremental_default_sql" ] }, "description": "", @@ -5628,23 +5963,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro snapshot_staging_table(strategy, source_sql, target_relation) -%}\n {{ adapter.dispatch('snapshot_staging_table', 'dbt')(strategy, source_sql, target_relation) }}\n{% endmacro %}", + "macro_sql": "{% macro get_incremental_default_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_default_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", "meta": {}, - "name": "snapshot_staging_table", - "original_file_path": "macros/materializations/snapshots/helpers.sql", + "name": "get_incremental_default_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/helpers.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.snapshot_staging_table" + "unique_id": "macro.dbt.get_incremental_default_sql" }, - "macro.dbt.snapshot_string_as_time": { + "macro.dbt.get_incremental_delete_insert_sql": { "arguments": [], - "created_at": 1696859933.3538601, + "created_at": 1733768711.984149, "depends_on": { "macros": [ - "macro.dbt_sqlite.sqlite__snapshot_string_as_time" + "macro.dbt.default__get_incremental_delete_insert_sql" ] }, "description": "", @@ -5652,23 +5987,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro snapshot_string_as_time(timestamp) -%}\n {{ adapter.dispatch('snapshot_string_as_time', 'dbt')(timestamp) }}\n{%- endmacro %}", + "macro_sql": "{% macro get_incremental_delete_insert_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_delete_insert_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", "meta": {}, - "name": "snapshot_string_as_time", - "original_file_path": "macros/materializations/snapshots/strategies.sql", + "name": "get_incremental_delete_insert_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/strategies.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.snapshot_string_as_time" + "unique_id": "macro.dbt.get_incremental_delete_insert_sql" }, - "macro.dbt.snapshot_timestamp_strategy": { + "macro.dbt.get_incremental_insert_overwrite_sql": { "arguments": [], - "created_at": 1696859933.3537412, + "created_at": 1733768711.9850519, "depends_on": { "macros": [ - "macro.dbt.snapshot_hash_arguments" + "macro.dbt.default__get_incremental_insert_overwrite_sql" ] }, "description": "", @@ -5676,23 +6011,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro snapshot_timestamp_strategy(node, snapshotted_rel, current_rel, config, target_exists) %}\n {% set primary_key = config['unique_key'] %}\n {% set updated_at = config['updated_at'] %}\n {% set invalidate_hard_deletes = config.get('invalidate_hard_deletes', false) %}\n\n {#/*\n The snapshot relation might not have an {{ updated_at }} value if the\n snapshot strategy is changed from `check` to `timestamp`. We\n should use a dbt-created column for the comparison in the snapshot\n table instead of assuming that the user-supplied {{ updated_at }}\n will be present in the historical data.\n\n See https://github.com/dbt-labs/dbt-core/issues/2350\n */ #}\n {% set row_changed_expr -%}\n ({{ snapshotted_rel }}.dbt_valid_from < {{ current_rel }}.{{ updated_at }})\n {%- endset %}\n\n {% set scd_id_expr = snapshot_hash_arguments([primary_key, updated_at]) %}\n\n {% do return({\n \"unique_key\": primary_key,\n \"updated_at\": updated_at,\n \"row_changed\": row_changed_expr,\n \"scd_id\": scd_id_expr,\n \"invalidate_hard_deletes\": invalidate_hard_deletes\n }) %}\n{% endmacro %}", + "macro_sql": "{% macro get_incremental_insert_overwrite_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_insert_overwrite_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", "meta": {}, - "name": "snapshot_timestamp_strategy", - "original_file_path": "macros/materializations/snapshots/strategies.sql", + "name": "get_incremental_insert_overwrite_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/strategies.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.snapshot_timestamp_strategy" + "unique_id": "macro.dbt.get_incremental_insert_overwrite_sql" }, - "macro.dbt.split_part": { + "macro.dbt.get_incremental_merge_sql": { "arguments": [], - "created_at": 1696859933.423462, + "created_at": 1733768711.984603, "depends_on": { "macros": [ - "macro.dbt.default__split_part" + "macro.dbt.default__get_incremental_merge_sql" ] }, "description": "", @@ -5700,89 +6035,95 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro split_part(string_text, delimiter_text, part_number) %}\n {{ return(adapter.dispatch('split_part', 'dbt') (string_text, delimiter_text, part_number)) }}\n{% endmacro %}", + "macro_sql": "{% macro get_incremental_merge_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_merge_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", "meta": {}, - "name": "split_part", - "original_file_path": "macros/utils/split_part.sql", + "name": "get_incremental_merge_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/split_part.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.split_part" + "unique_id": "macro.dbt.get_incremental_merge_sql" }, - "macro.dbt.sql_convert_columns_in_relation": { + "macro.dbt.get_incremental_microbatch_sql": { "arguments": [], - "created_at": 1696859933.443299, + "created_at": 1733768711.985783, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__get_incremental_microbatch_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sql_convert_columns_in_relation(table) -%}\n {% set columns = [] %}\n {% for row in table %}\n {% do columns.append(api.Column(*row)) %}\n {% endfor %}\n {{ return(columns) }}\n{% endmacro %}", + "macro_sql": "{% macro get_incremental_microbatch_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_microbatch_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", "meta": {}, - "name": "sql_convert_columns_in_relation", - "original_file_path": "macros/adapters/columns.sql", + "name": "get_incremental_microbatch_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/columns.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.sql_convert_columns_in_relation" + "unique_id": "macro.dbt.get_incremental_microbatch_sql" }, - "macro.dbt.statement": { + "macro.dbt.get_insert_into_sql": { "arguments": [], - "created_at": 1696859933.411077, + "created_at": 1733768711.986187, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.get_quoted_csv" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "\n{%- macro statement(name=None, fetch_result=False, auto_begin=True, language='sql') -%}\n {%- if execute: -%}\n {%- set compiled_code = caller() -%}\n\n {%- if name == 'main' -%}\n {{ log('Writing runtime {} for node \"{}\"'.format(language, model['unique_id'])) }}\n {{ write(compiled_code) }}\n {%- endif -%}\n {%- if language == 'sql'-%}\n {%- set res, table = adapter.execute(compiled_code, auto_begin=auto_begin, fetch=fetch_result) -%}\n {%- elif language == 'python' -%}\n {%- set res = submit_python_job(model, compiled_code) -%}\n {#-- TODO: What should table be for python models? --#}\n {%- set table = None -%}\n {%- else -%}\n {% do exceptions.raise_compiler_error(\"statement macro didn't get supported language\") %}\n {%- endif -%}\n\n {%- if name is not none -%}\n {{ store_result(name, response=res, agate_table=table) }}\n {%- endif -%}\n\n {%- endif -%}\n{%- endmacro %}", + "macro_sql": "{% macro get_insert_into_sql(target_relation, temp_relation, dest_columns) %}\n\n {%- set dest_cols_csv = get_quoted_csv(dest_columns | map(attribute=\"name\")) -%}\n\n insert into {{ target_relation }} ({{ dest_cols_csv }})\n (\n select {{ dest_cols_csv }}\n from {{ temp_relation }}\n )\n\n{% endmacro %}", "meta": {}, - "name": "statement", - "original_file_path": "macros/etc/statement.sql", + "name": "get_insert_into_sql", + "original_file_path": "macros/materializations/models/incremental/strategies.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/etc/statement.sql", + "path": "macros/materializations/models/incremental/strategies.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.statement" + "unique_id": "macro.dbt.get_insert_into_sql" }, - "macro.dbt.strategy_dispatch": { + "macro.dbt.get_insert_overwrite_merge_sql": { "arguments": [], - "created_at": 1696859933.3529348, + "created_at": 1733768711.9814389, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__get_insert_overwrite_merge_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro strategy_dispatch(name) -%}\n{% set original_name = name %}\n {% if '.' in name %}\n {% set package_name, name = name.split(\".\", 1) %}\n {% else %}\n {% set package_name = none %}\n {% endif %}\n\n {% if package_name is none %}\n {% set package_context = context %}\n {% elif package_name in context %}\n {% set package_context = context[package_name] %}\n {% else %}\n {% set error_msg %}\n Could not find package '{{package_name}}', called with '{{original_name}}'\n {% endset %}\n {{ exceptions.raise_compiler_error(error_msg | trim) }}\n {% endif %}\n\n {%- set search_name = 'snapshot_' ~ name ~ '_strategy' -%}\n\n {% if search_name not in package_context %}\n {% set error_msg %}\n The specified strategy macro '{{name}}' was not found in package '{{ package_name }}'\n {% endset %}\n {{ exceptions.raise_compiler_error(error_msg | trim) }}\n {% endif %}\n {{ return(package_context[search_name]) }}\n{%- endmacro %}", + "macro_sql": "{% macro get_insert_overwrite_merge_sql(target, source, dest_columns, predicates, include_sql_header=false) -%}\n {{ adapter.dispatch('get_insert_overwrite_merge_sql', 'dbt')(target, source, dest_columns, predicates, include_sql_header) }}\n{%- endmacro %}", "meta": {}, - "name": "strategy_dispatch", - "original_file_path": "macros/materializations/snapshots/strategies.sql", + "name": "get_insert_overwrite_merge_sql", + "original_file_path": "macros/materializations/models/incremental/merge.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshots/strategies.sql", + "path": "macros/materializations/models/incremental/merge.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.strategy_dispatch" + "unique_id": "macro.dbt.get_insert_overwrite_merge_sql" }, - "macro.dbt.string_literal": { + "macro.dbt.get_intervals_between": { "arguments": [], - "created_at": 1696859933.419734, + "created_at": 1733768712.0832698, "depends_on": { "macros": [ - "macro.dbt.default__string_literal" + "macro.dbt.default__get_intervals_between" ] }, "description": "", @@ -5790,23 +6131,23 @@ "node_color": null, "show": true }, - "macro_sql": "{%- macro string_literal(value) -%}\n {{ return(adapter.dispatch('string_literal', 'dbt') (value)) }}\n{%- endmacro -%}\n\n", + "macro_sql": "{% macro get_intervals_between(start_date, end_date, datepart) -%}\n {{ return(adapter.dispatch('get_intervals_between', 'dbt')(start_date, end_date, datepart)) }}\n{%- endmacro %}", "meta": {}, - "name": "string_literal", - "original_file_path": "macros/utils/literal.sql", + "name": "get_intervals_between", + "original_file_path": "macros/utils/date_spine.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/literal.sql", + "path": "macros/utils/date_spine.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.string_literal" + "unique_id": "macro.dbt.get_intervals_between" }, - "macro.dbt.support_multiple_grantees_per_dcl_statement": { + "macro.dbt.get_limit_subquery_sql": { "arguments": [], - "created_at": 1696859933.434651, + "created_at": 1733768712.119031, "depends_on": { "macros": [ - "macro.dbt.default__support_multiple_grantees_per_dcl_statement" + "macro.dbt.default__get_limit_sql" ] }, "description": "", @@ -5814,24 +6155,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro support_multiple_grantees_per_dcl_statement() %}\n {{ return(adapter.dispatch('support_multiple_grantees_per_dcl_statement', 'dbt')()) }}\n{% endmacro %}", + "macro_sql": "\n{%- macro get_limit_subquery_sql(sql, limit) -%}\n {{ adapter.dispatch('get_limit_sql', 'dbt')(sql, limit) }}\n{%- endmacro -%}\n\n", "meta": {}, - "name": "support_multiple_grantees_per_dcl_statement", - "original_file_path": "macros/adapters/apply_grants.sql", + "name": "get_limit_subquery_sql", + "original_file_path": "macros/adapters/show.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/apply_grants.sql", + "path": "macros/adapters/show.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.support_multiple_grantees_per_dcl_statement" + "unique_id": "macro.dbt.get_limit_subquery_sql" }, - "macro.dbt.sync_column_schemas": { + "macro.dbt.get_materialized_view_configuration_changes": { "arguments": [], - "created_at": 1696859933.39026, + "created_at": 1733768712.062151, "depends_on": { "macros": [ - "macro.dbt.alter_relation_add_remove_columns", - "macro.dbt.alter_column_type" + "macro.dbt_postgres.postgres__get_materialized_view_configuration_changes" ] }, "description": "", @@ -5839,23 +6179,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sync_column_schemas(on_schema_change, target_relation, schema_changes_dict) %}\n\n {%- set add_to_target_arr = schema_changes_dict['source_not_in_target'] -%}\n\n {%- if on_schema_change == 'append_new_columns'-%}\n {%- if add_to_target_arr | length > 0 -%}\n {%- do alter_relation_add_remove_columns(target_relation, add_to_target_arr, none) -%}\n {%- endif -%}\n\n {% elif on_schema_change == 'sync_all_columns' %}\n {%- set remove_from_target_arr = schema_changes_dict['target_not_in_source'] -%}\n {%- set new_target_types = schema_changes_dict['new_target_types'] -%}\n\n {% if add_to_target_arr | length > 0 or remove_from_target_arr | length > 0 %}\n {%- do alter_relation_add_remove_columns(target_relation, add_to_target_arr, remove_from_target_arr) -%}\n {% endif %}\n\n {% if new_target_types != [] %}\n {% for ntt in new_target_types %}\n {% set column_name = ntt['column_name'] %}\n {% set new_type = ntt['new_type'] %}\n {% do alter_column_type(target_relation, column_name, new_type) %}\n {% endfor %}\n {% endif %}\n\n {% endif %}\n\n {% set schema_change_message %}\n In {{ target_relation }}:\n Schema change approach: {{ on_schema_change }}\n Columns added: {{ add_to_target_arr }}\n Columns removed: {{ remove_from_target_arr }}\n Data types changed: {{ new_target_types }}\n {% endset %}\n\n {% do log(schema_change_message) %}\n\n{% endmacro %}", + "macro_sql": "{% macro get_materialized_view_configuration_changes(existing_relation, new_config) %}\n /* {#\n It's recommended that configuration changes be formatted as follows:\n {\"\": [{\"action\": \"\", \"context\": ...}]}\n\n For example:\n {\n \"indexes\": [\n {\"action\": \"drop\", \"context\": \"index_abc\"},\n {\"action\": \"create\", \"context\": {\"columns\": [\"column_1\", \"column_2\"], \"type\": \"hash\", \"unique\": True}},\n ],\n }\n\n Either way, `get_materialized_view_configuration_changes` needs to align with `get_alter_materialized_view_as_sql`.\n #} */\n {{- log('Determining configuration changes on: ' ~ existing_relation) -}}\n {%- do return(adapter.dispatch('get_materialized_view_configuration_changes', 'dbt')(existing_relation, new_config)) -%}\n{% endmacro %}", "meta": {}, - "name": "sync_column_schemas", - "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", + "name": "get_materialized_view_configuration_changes", + "original_file_path": "macros/relations/materialized_view/alter.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/models/incremental/on_schema_change.sql", + "path": "macros/relations/materialized_view/alter.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.sync_column_schemas" + "unique_id": "macro.dbt.get_materialized_view_configuration_changes" }, - "macro.dbt.test_accepted_values": { + "macro.dbt.get_merge_sql": { "arguments": [], - "created_at": 1696859933.448046, + "created_at": 1733768711.978434, "depends_on": { "macros": [ - "macro.dbt.default__test_accepted_values" + "macro.dbt.default__get_merge_sql" ] }, "description": "", @@ -5863,23 +6203,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% test accepted_values(model, column_name, values, quote=True) %}\n {% set macro = adapter.dispatch('test_accepted_values', 'dbt') %}\n {{ macro(model, column_name, values, quote) }}\n{% endtest %}", + "macro_sql": "{% macro get_merge_sql(target, source, unique_key, dest_columns, incremental_predicates=none) -%}\n -- back compat for old kwarg name\n {% set incremental_predicates = kwargs.get('predicates', incremental_predicates) %}\n {{ adapter.dispatch('get_merge_sql', 'dbt')(target, source, unique_key, dest_columns, incremental_predicates) }}\n{%- endmacro %}", "meta": {}, - "name": "test_accepted_values", - "original_file_path": "tests/generic/builtin.sql", + "name": "get_merge_sql", + "original_file_path": "macros/materializations/models/incremental/merge.sql", "package_name": "dbt", "patch_path": null, - "path": "tests/generic/builtin.sql", + "path": "macros/materializations/models/incremental/merge.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.test_accepted_values" + "unique_id": "macro.dbt.get_merge_sql" }, - "macro.dbt.test_not_null": { + "macro.dbt.get_merge_update_columns": { "arguments": [], - "created_at": 1696859933.447841, + "created_at": 1733768711.971263, "depends_on": { "macros": [ - "macro.dbt.default__test_not_null" + "macro.dbt.default__get_merge_update_columns" ] }, "description": "", @@ -5887,23 +6227,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% test not_null(model, column_name) %}\n {% set macro = adapter.dispatch('test_not_null', 'dbt') %}\n {{ macro(model, column_name) }}\n{% endtest %}", + "macro_sql": "{% macro get_merge_update_columns(merge_update_columns, merge_exclude_columns, dest_columns) %}\n {{ return(adapter.dispatch('get_merge_update_columns', 'dbt')(merge_update_columns, merge_exclude_columns, dest_columns)) }}\n{% endmacro %}", "meta": {}, - "name": "test_not_null", - "original_file_path": "tests/generic/builtin.sql", + "name": "get_merge_update_columns", + "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "tests/generic/builtin.sql", + "path": "macros/materializations/models/incremental/column_helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.test_not_null" + "unique_id": "macro.dbt.get_merge_update_columns" }, - "macro.dbt.test_relationships": { + "macro.dbt.get_or_create_relation": { "arguments": [], - "created_at": 1696859933.448239, + "created_at": 1733768712.110068, "depends_on": { "macros": [ - "macro.dbt.default__test_relationships" + "macro.dbt.default__get_or_create_relation" ] }, "description": "", @@ -5911,23 +6251,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% test relationships(model, column_name, to, field) %}\n {% set macro = adapter.dispatch('test_relationships', 'dbt') %}\n {{ macro(model, column_name, to, field) }}\n{% endtest %}", + "macro_sql": "{% macro get_or_create_relation(database, schema, identifier, type) -%}\n {{ return(adapter.dispatch('get_or_create_relation', 'dbt')(database, schema, identifier, type)) }}\n{% endmacro %}", "meta": {}, - "name": "test_relationships", - "original_file_path": "tests/generic/builtin.sql", + "name": "get_or_create_relation", + "original_file_path": "macros/adapters/relation.sql", "package_name": "dbt", "patch_path": null, - "path": "tests/generic/builtin.sql", + "path": "macros/adapters/relation.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.test_relationships" + "unique_id": "macro.dbt.get_or_create_relation" }, - "macro.dbt.test_unique": { + "macro.dbt.get_powers_of_two": { "arguments": [], - "created_at": 1696859933.447676, + "created_at": 1733768712.086598, "depends_on": { "macros": [ - "macro.dbt.default__test_unique" + "macro.dbt.default__get_powers_of_two" ] }, "description": "", @@ -5935,47 +6275,45 @@ "node_color": null, "show": true }, - "macro_sql": "{% test unique(model, column_name) %}\n {% set macro = adapter.dispatch('test_unique', 'dbt') %}\n {{ macro(model, column_name) }}\n{% endtest %}", + "macro_sql": "{% macro get_powers_of_two(upper_bound) %}\n {{ return(adapter.dispatch('get_powers_of_two', 'dbt')(upper_bound)) }}\n{% endmacro %}", "meta": {}, - "name": "test_unique", - "original_file_path": "tests/generic/builtin.sql", + "name": "get_powers_of_two", + "original_file_path": "macros/utils/generate_series.sql", "package_name": "dbt", "patch_path": null, - "path": "tests/generic/builtin.sql", + "path": "macros/utils/generate_series.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.test_unique" + "unique_id": "macro.dbt.get_powers_of_two" }, - "macro.dbt.truncate_relation": { + "macro.dbt.get_quoted_csv": { "arguments": [], - "created_at": 1696859933.4311721, + "created_at": 1733768711.969949, "depends_on": { - "macros": [ - "macro.dbt_sqlite.sqlite__truncate_relation" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro truncate_relation(relation) -%}\n {{ return(adapter.dispatch('truncate_relation', 'dbt')(relation)) }}\n{% endmacro %}", + "macro_sql": "{% macro get_quoted_csv(column_names) %}\n\n {% set quoted = [] %}\n {% for col in column_names -%}\n {%- do quoted.append(adapter.quote(col)) -%}\n {%- endfor %}\n\n {%- set dest_cols_csv = quoted | join(', ') -%}\n {{ return(dest_cols_csv) }}\n\n{% endmacro %}", "meta": {}, - "name": "truncate_relation", - "original_file_path": "macros/adapters/relation.sql", + "name": "get_quoted_csv", + "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/adapters/relation.sql", + "path": "macros/materializations/models/incremental/column_helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.truncate_relation" + "unique_id": "macro.dbt.get_quoted_csv" }, - "macro.dbt.type_bigint": { + "macro.dbt.get_relation_last_modified": { "arguments": [], - "created_at": 1696859933.4214149, + "created_at": 1733768712.127856, "depends_on": { "macros": [ - "macro.dbt.default__type_bigint" + "macro.dbt.default__get_relation_last_modified" ] }, "description": "", @@ -5983,23 +6321,23 @@ "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro type_bigint() -%}\n {{ return(adapter.dispatch('type_bigint', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "macro_sql": "{% macro get_relation_last_modified(information_schema, relations) %}\n {{ return(adapter.dispatch('get_relation_last_modified', 'dbt')(information_schema, relations)) }}\n{% endmacro %}", "meta": {}, - "name": "type_bigint", - "original_file_path": "macros/utils/data_types.sql", + "name": "get_relation_last_modified", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.type_bigint" + "unique_id": "macro.dbt.get_relation_last_modified" }, - "macro.dbt.type_boolean": { + "macro.dbt.get_relations": { "arguments": [], - "created_at": 1696859933.42184, + "created_at": 1733768712.127313, "depends_on": { "macros": [ - "macro.dbt.default__type_boolean" + "macro.dbt_postgres.postgres__get_relations" ] }, "description": "", @@ -6007,23 +6345,23 @@ "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro type_boolean() -%}\n {{ return(adapter.dispatch('type_boolean', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "macro_sql": "{% macro get_relations() %}\n {{ return(adapter.dispatch('get_relations', 'dbt')()) }}\n{% endmacro %}", "meta": {}, - "name": "type_boolean", - "original_file_path": "macros/utils/data_types.sql", + "name": "get_relations", + "original_file_path": "macros/adapters/metadata.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.type_boolean" + "unique_id": "macro.dbt.get_relations" }, - "macro.dbt.type_float": { + "macro.dbt.get_rename_intermediate_sql": { "arguments": [], - "created_at": 1696859933.420956, + "created_at": 1733768712.058996, "depends_on": { "macros": [ - "macro.dbt.default__type_float" + "macro.dbt.default__get_rename_intermediate_sql" ] }, "description": "", @@ -6031,23 +6369,23 @@ "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro type_float() -%}\n {{ return(adapter.dispatch('type_float', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "macro_sql": "{%- macro get_rename_intermediate_sql(relation) -%}\n {{- log('Applying RENAME INTERMEDIATE to: ' ~ relation) -}}\n {{- adapter.dispatch('get_rename_intermediate_sql', 'dbt')(relation) -}}\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "type_float", - "original_file_path": "macros/utils/data_types.sql", + "name": "get_rename_intermediate_sql", + "original_file_path": "macros/relations/rename_intermediate.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/relations/rename_intermediate.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.type_float" + "unique_id": "macro.dbt.get_rename_intermediate_sql" }, - "macro.dbt.type_int": { + "macro.dbt.get_rename_materialized_view_sql": { "arguments": [], - "created_at": 1696859933.4216309, + "created_at": 1733768712.060749, "depends_on": { "macros": [ - "macro.dbt.default__type_int" + "macro.dbt_postgres.postgres__get_rename_materialized_view_sql" ] }, "description": "", @@ -6055,23 +6393,23 @@ "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro type_int() -%}\n {{ return(adapter.dispatch('type_int', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "macro_sql": "{% macro get_rename_materialized_view_sql(relation, new_name) %}\n {{- adapter.dispatch('get_rename_materialized_view_sql', 'dbt')(relation, new_name) -}}\n{% endmacro %}", "meta": {}, - "name": "type_int", - "original_file_path": "macros/utils/data_types.sql", + "name": "get_rename_materialized_view_sql", + "original_file_path": "macros/relations/materialized_view/rename.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/relations/materialized_view/rename.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.type_int" + "unique_id": "macro.dbt.get_rename_materialized_view_sql" }, - "macro.dbt.type_numeric": { + "macro.dbt.get_rename_sql": { "arguments": [], - "created_at": 1696859933.421175, + "created_at": 1733768712.0562859, "depends_on": { "macros": [ - "macro.dbt.default__type_numeric" + "macro.dbt.default__get_rename_sql" ] }, "description": "", @@ -6079,23 +6417,23 @@ "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro type_numeric() -%}\n {{ return(adapter.dispatch('type_numeric', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "macro_sql": "{%- macro get_rename_sql(relation, new_name) -%}\n {{- log('Applying RENAME to: ' ~ relation) -}}\n {{- adapter.dispatch('get_rename_sql', 'dbt')(relation, new_name) -}}\n{%- endmacro -%}\n\n\n", "meta": {}, - "name": "type_numeric", - "original_file_path": "macros/utils/data_types.sql", + "name": "get_rename_sql", + "original_file_path": "macros/relations/rename.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/relations/rename.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.type_numeric" + "unique_id": "macro.dbt.get_rename_sql" }, - "macro.dbt.type_string": { + "macro.dbt.get_rename_table_sql": { "arguments": [], - "created_at": 1696859933.420512, + "created_at": 1733768712.067647, "depends_on": { "macros": [ - "macro.dbt.default__type_string" + "macro.dbt_postgres.postgres__get_rename_table_sql" ] }, "description": "", @@ -6103,23 +6441,23 @@ "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro type_string() -%}\n {{ return(adapter.dispatch('type_string', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "macro_sql": "{% macro get_rename_table_sql(relation, new_name) %}\n {{- adapter.dispatch('get_rename_table_sql', 'dbt')(relation, new_name) -}}\n{% endmacro %}", "meta": {}, - "name": "type_string", - "original_file_path": "macros/utils/data_types.sql", + "name": "get_rename_table_sql", + "original_file_path": "macros/relations/table/rename.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/relations/table/rename.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.type_string" + "unique_id": "macro.dbt.get_rename_table_sql" }, - "macro.dbt.type_timestamp": { + "macro.dbt.get_rename_view_sql": { "arguments": [], - "created_at": 1696859933.420735, + "created_at": 1733768712.073626, "depends_on": { "macros": [ - "macro.dbt.default__type_timestamp" + "macro.dbt_postgres.postgres__get_rename_view_sql" ] }, "description": "", @@ -6127,32 +6465,23 @@ "node_color": null, "show": true }, - "macro_sql": "\n\n{%- macro type_timestamp() -%}\n {{ return(adapter.dispatch('type_timestamp', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "macro_sql": "{% macro get_rename_view_sql(relation, new_name) %}\n {{- adapter.dispatch('get_rename_view_sql', 'dbt')(relation, new_name) -}}\n{% endmacro %}", "meta": {}, - "name": "type_timestamp", - "original_file_path": "macros/utils/data_types.sql", + "name": "get_rename_view_sql", + "original_file_path": "macros/relations/view/rename.sql", "package_name": "dbt", "patch_path": null, - "path": "macros/utils/data_types.sql", + "path": "macros/relations/view/rename.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt.type_timestamp" + "unique_id": "macro.dbt.get_rename_view_sql" }, - "macro.dbt_sqlite.materialization_incremental_sqlite": { + "macro.dbt.get_replace_materialized_view_sql": { "arguments": [], - "created_at": 1696859933.3433468, + "created_at": 1733768712.0598369, "depends_on": { "macros": [ - "macro.dbt.load_relation", - "macro.dbt.make_temp_relation", - "macro.dbt.run_hooks", - "macro.dbt.create_table_as", - "macro.dbt.should_full_refresh", - "macro.dbt.run_query", - "macro.dbt_sqlite.sqlite_incremental_upsert", - "macro.dbt.statement", - "macro.dbt.persist_docs", - "macro.dbt.create_indexes" + "macro.dbt.default__get_replace_materialized_view_sql" ] }, "description": "", @@ -6160,28 +6489,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% materialization incremental, adapter='sqlite' -%}\n\n {% set unique_key = config.get('unique_key') %}\n\n {% set target_relation = this.incorporate(type='table') %}\n {% set existing_relation = load_relation(this) %}\n {% set tmp_relation = make_temp_relation(this) %}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n {% set to_drop = [] %}\n {% if existing_relation is none %}\n {% set build_sql = create_table_as(False, target_relation, sql) %}\n {% elif existing_relation.is_view or should_full_refresh() %}\n {#-- Make sure the backup doesn't exist so we don't encounter issues with the rename below #}\n {% set backup_identifier = existing_relation.identifier ~ \"__dbt_backup\" %}\n {% set backup_relation = existing_relation.incorporate(path={\"identifier\": backup_identifier}) %}\n {% do adapter.drop_relation(backup_relation) %}\n\n {# this is simplified from macro in core: don't try to make a backup #}\n {% do adapter.drop_relation(existing_relation) %}\n\n {% set build_sql = create_table_as(False, target_relation, sql) %}\n {% else %}\n {% set tmp_relation = make_temp_relation(target_relation) %}\n {% do run_query(create_table_as(True, tmp_relation, sql)) %}\n {% do adapter.expand_target_column_types(\n from_relation=tmp_relation,\n to_relation=target_relation) %}\n {% set build_sql = sqlite_incremental_upsert(tmp_relation, target_relation, unique_key=unique_key) %}\n {% endif %}\n\n {% call statement(\"main\") %}\n {{ build_sql }}\n {% endcall %}\n\n {% do persist_docs(target_relation, model) %}\n\n {% if existing_relation is none or existing_relation.is_view or should_full_refresh() %}\n {% do create_indexes(target_relation) %}\n {% endif %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n -- `COMMIT` happens here\n {% do adapter.commit() %}\n\n {% for rel in to_drop %}\n {% do adapter.drop_relation(rel) %}\n {% endfor %}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{%- endmaterialization %}", + "macro_sql": "{% macro get_replace_materialized_view_sql(relation, sql) %}\n {{- adapter.dispatch('get_replace_materialized_view_sql', 'dbt')(relation, sql) -}}\n{% endmacro %}", "meta": {}, - "name": "materialization_incremental_sqlite", - "original_file_path": "macros/materializations/incremental/incremental.sql", - "package_name": "dbt_sqlite", + "name": "get_replace_materialized_view_sql", + "original_file_path": "macros/relations/materialized_view/replace.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/incremental/incremental.sql", + "path": "macros/relations/materialized_view/replace.sql", "resource_type": "macro", - "supported_languages": [ - "sql" - ], - "unique_id": "macro.dbt_sqlite.materialization_incremental_sqlite" + "supported_languages": null, + "unique_id": "macro.dbt.get_replace_materialized_view_sql" }, - "macro.dbt_sqlite.materialization_table_sqlite": { + "macro.dbt.get_replace_sql": { "arguments": [], - "created_at": 1696859933.3443909, + "created_at": 1733768712.052743, "depends_on": { "macros": [ - "macro.dbt.run_hooks", - "macro.dbt.statement", - "macro.dbt.create_table_as", - "macro.dbt.persist_docs" + "macro.dbt.default__get_replace_sql" ] }, "description": "", @@ -6189,28 +6513,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% materialization table, adapter='sqlite' %}\n {%- set identifier = model['alias'] -%}\n\n {%- set old_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) -%}\n {%- set target_relation = api.Relation.create(identifier=identifier,\n schema=schema,\n database=database,\n type='table') -%}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n {% if old_relation is not none %}\n {{ adapter.drop_relation(old_relation) }}\n {% endif %}\n\n -- build model\n {% call statement('main') -%}\n {{ create_table_as(False, target_relation, sql) }}\n {%- endcall %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n {% do persist_docs(target_relation, model) %}\n\n -- `COMMIT` happens here\n {{ adapter.commit() }}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n{% endmaterialization %}", + "macro_sql": "{% macro get_replace_sql(existing_relation, target_relation, sql) %}\n {{- log('Applying REPLACE to: ' ~ existing_relation) -}}\n {{- adapter.dispatch('get_replace_sql', 'dbt')(existing_relation, target_relation, sql) -}}\n{% endmacro %}", "meta": {}, - "name": "materialization_table_sqlite", - "original_file_path": "macros/materializations/table/table.sql", - "package_name": "dbt_sqlite", + "name": "get_replace_sql", + "original_file_path": "macros/relations/replace.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/table/table.sql", + "path": "macros/relations/replace.sql", "resource_type": "macro", - "supported_languages": [ - "sql" - ], - "unique_id": "macro.dbt_sqlite.materialization_table_sqlite" + "supported_languages": null, + "unique_id": "macro.dbt.get_replace_sql" }, - "macro.dbt_sqlite.materialization_view_sqlite": { + "macro.dbt.get_replace_table_sql": { "arguments": [], - "created_at": 1696859933.3453598, + "created_at": 1733768712.0672388, "depends_on": { "macros": [ - "macro.dbt.run_hooks", - "macro.dbt.statement", - "macro.dbt.create_view_as", - "macro.dbt.persist_docs" + "macro.dbt_postgres.postgres__get_replace_table_sql" ] }, "description": "", @@ -6218,25 +6537,23 @@ "node_color": null, "show": true }, - "macro_sql": "{%- materialization view, adapter='sqlite' -%}\n\n {%- set identifier = model['alias'] -%}\n\n {%- set old_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) -%}\n {%- set target_relation = api.Relation.create(identifier=identifier, schema=schema, database=database,\n type='view') -%}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n {% if old_relation is not none %}\n {{ adapter.drop_relation(old_relation) }}\n {% endif %}\n\n -- build model\n {% call statement('main') -%}\n {{ create_view_as(target_relation, sql) }}\n {%- endcall %}\n\n {% do persist_docs(target_relation, model) %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n {{ adapter.commit() }}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{%- endmaterialization -%}", + "macro_sql": "{% macro get_replace_table_sql(relation, sql) %}\n {{- adapter.dispatch('get_replace_table_sql', 'dbt')(relation, sql) -}}\n{% endmacro %}", "meta": {}, - "name": "materialization_view_sqlite", - "original_file_path": "macros/materializations/view/view.sql", - "package_name": "dbt_sqlite", + "name": "get_replace_table_sql", + "original_file_path": "macros/relations/table/replace.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/view/view.sql", + "path": "macros/relations/table/replace.sql", "resource_type": "macro", - "supported_languages": [ - "sql" - ], - "unique_id": "macro.dbt_sqlite.materialization_view_sqlite" + "supported_languages": null, + "unique_id": "macro.dbt.get_replace_table_sql" }, - "macro.dbt_sqlite.ref": { + "macro.dbt.get_replace_view_sql": { "arguments": [], - "created_at": 1696859933.3326359, + "created_at": 1733768712.071723, "depends_on": { "macros": [ - "macro.dbt_sqlite.ref" + "macro.dbt_postgres.postgres__get_replace_view_sql" ] }, "description": "", @@ -6244,23 +6561,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro ref(model_name) %}\n\n {# override to strip off database, and return only schema.table #}\n\n {% set rel = builtins.ref(model_name) %}\n {% do return(rel.include(database=False)) %}\n\n{% endmacro %}", + "macro_sql": "{% macro get_replace_view_sql(relation, sql) %}\n {{- adapter.dispatch('get_replace_view_sql', 'dbt')(relation, sql) -}}\n{% endmacro %}", "meta": {}, - "name": "ref", - "original_file_path": "macros/core_overrides.sql", - "package_name": "dbt_sqlite", + "name": "get_replace_view_sql", + "original_file_path": "macros/relations/view/replace.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/core_overrides.sql", + "path": "macros/relations/view/replace.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.ref" + "unique_id": "macro.dbt.get_replace_view_sql" }, - "macro.dbt_sqlite.source": { + "macro.dbt.get_revoke_sql": { "arguments": [], - "created_at": 1696859933.332862, + "created_at": 1733768712.1157131, "depends_on": { "macros": [ - "macro.dbt_sqlite.source" + "macro.dbt.default__get_revoke_sql" ] }, "description": "", @@ -6268,20 +6585,20 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro source(source_name, model_name) %}\n\n {# override to strip off database, and return only schema.table #}\n\n {% set rel = builtins.source(source_name, model_name) %}\n {% do return(rel.include(database=False)) %}\n\n{% endmacro %}", + "macro_sql": "{% macro get_revoke_sql(relation, privilege, grantees) %}\n {{ return(adapter.dispatch('get_revoke_sql', 'dbt')(relation, privilege, grantees)) }}\n{% endmacro %}", "meta": {}, - "name": "source", - "original_file_path": "macros/core_overrides.sql", - "package_name": "dbt_sqlite", + "name": "get_revoke_sql", + "original_file_path": "macros/adapters/apply_grants.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/core_overrides.sql", + "path": "macros/adapters/apply_grants.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.source" + "unique_id": "macro.dbt.get_revoke_sql" }, - "macro.dbt_sqlite.sqlite__any_value": { + "macro.dbt.get_seed_column_quoted_csv": { "arguments": [], - "created_at": 1696859933.34724, + "created_at": 1733768712.046391, "depends_on": { "macros": [] }, @@ -6290,68 +6607,71 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__any_value(expression) -%}\n\n min({{ expression }})\n\n{%- endmacro %}", + "macro_sql": "{% macro get_seed_column_quoted_csv(model, column_names) %}\n {%- set quote_seed_column = model['config'].get('quote_columns', None) -%}\n {% set quoted = [] %}\n {% for col in column_names -%}\n {%- do quoted.append(adapter.quote_seed_column(col, quote_seed_column)) -%}\n {%- endfor %}\n\n {%- set dest_cols_csv = quoted | join(', ') -%}\n {{ return(dest_cols_csv) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__any_value", - "original_file_path": "macros/utils/any_value.sql", - "package_name": "dbt_sqlite", + "name": "get_seed_column_quoted_csv", + "original_file_path": "macros/materializations/seeds/helpers.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/utils/any_value.sql", + "path": "macros/materializations/seeds/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__any_value" + "unique_id": "macro.dbt.get_seed_column_quoted_csv" }, - "macro.dbt_sqlite.sqlite__bool_or": { + "macro.dbt.get_select_subquery": { "arguments": [], - "created_at": 1696859933.347444, + "created_at": 1733768712.070401, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__get_select_subquery" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__bool_or(expression) -%}\n\n max({{ expression }})\n\n{%- endmacro %}", + "macro_sql": "{% macro get_select_subquery(sql) %}\n {{ return(adapter.dispatch('get_select_subquery', 'dbt')(sql)) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__bool_or", - "original_file_path": "macros/utils/bool_or.sql", - "package_name": "dbt_sqlite", + "name": "get_select_subquery", + "original_file_path": "macros/relations/table/create.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/utils/bool_or.sql", + "path": "macros/relations/table/create.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__bool_or" + "unique_id": "macro.dbt.get_select_subquery" }, - "macro.dbt_sqlite.sqlite__cast_bool_to_text": { + "macro.dbt.get_show_grant_sql": { "arguments": [], - "created_at": 1696859933.34715, + "created_at": 1733768712.1146529, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt_postgres.postgres__get_show_grant_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__cast_bool_to_text(field) %}\n case\n when {{ field }} = 0 then 'false'\n when {{ field }} = 1 then 'true' \n end\n{% endmacro %}", + "macro_sql": "{% macro get_show_grant_sql(relation) %}\n {{ return(adapter.dispatch(\"get_show_grant_sql\", \"dbt\")(relation)) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__cast_bool_to_text", - "original_file_path": "macros/utils/cast_bool_to_text.sql", - "package_name": "dbt_sqlite", + "name": "get_show_grant_sql", + "original_file_path": "macros/adapters/apply_grants.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/utils/cast_bool_to_text.sql", + "path": "macros/adapters/apply_grants.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__cast_bool_to_text" + "unique_id": "macro.dbt.get_show_grant_sql" }, - "macro.dbt_sqlite.sqlite__check_schema_exists": { + "macro.dbt.get_show_indexes_sql": { "arguments": [], - "created_at": 1696859933.336681, + "created_at": 1733768712.105977, "depends_on": { "macros": [ - "macro.dbt.list_schemas", - "macro.dbt.statement" + "macro.dbt_postgres.postgres__get_show_indexes_sql" ] }, "description": "", @@ -6359,23 +6679,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__check_schema_exists(information_schema, schema) -%}\n {% if schema in list_schemas(database).columns[0].values() %}\n {% call statement('check_schema_exists', fetch_result=True) %}\n SELECT 1 as schema_exist\n {% endcall %}\n {{ return(load_result('check_schema_exists').table) }}\n {% else %}\n {% call statement('check_schema_exists', fetch_result=True) %}\n SELECT 0 as schema_exist\n {% endcall %}\n {{ return(load_result('check_schema_exists').table) }}\n {% endif %}\n{% endmacro %}", + "macro_sql": "{% macro get_show_indexes_sql(relation) -%}\n {{ adapter.dispatch('get_show_indexes_sql', 'dbt')(relation) }}\n{%- endmacro %}", "meta": {}, - "name": "sqlite__check_schema_exists", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "get_show_indexes_sql", + "original_file_path": "macros/adapters/indexes.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/adapters/indexes.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__check_schema_exists" + "unique_id": "macro.dbt.get_show_indexes_sql" }, - "macro.dbt_sqlite.sqlite__create_schema": { + "macro.dbt.get_show_sql": { "arguments": [], - "created_at": 1696859933.3357031, + "created_at": 1733768712.118849, "depends_on": { "macros": [ - "macro.dbt.statement" + "macro.dbt.get_limit_subquery_sql" ] }, "description": "", @@ -6383,42 +6703,46 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__create_schema(relation, auto_begin=False) %}\n {% set path = [ adapter.config.credentials.schema_directory, relation.without_identifier().include(database=False) | string + '.db' ] | join('/') %}\n {%- call statement('create_schema') -%}\n attach database '{{ path }}' as {{ relation.without_identifier().include(database=False) }}\n {%- endcall -%}\n{% endmacro %}", + "macro_sql": "{% macro get_show_sql(compiled_code, sql_header, limit) -%}\n {%- if sql_header is not none -%}\n {{ sql_header }}\n {%- endif %}\n {{ get_limit_subquery_sql(compiled_code, limit) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__create_schema", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "get_show_sql", + "original_file_path": "macros/adapters/show.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/adapters/show.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__create_schema" + "unique_id": "macro.dbt.get_show_sql" }, - "macro.dbt_sqlite.sqlite__create_table_as": { + "macro.dbt.get_snapshot_get_time_data_type": { "arguments": [], - "created_at": 1696859933.337333, + "created_at": 1733768712.1033092, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.snapshot_get_time", + "macro.dbt_postgres.postgres__snapshot_get_time", + "macro.dbt.get_column_schema_from_query" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__create_table_as(temporary, relation, sql) -%}\n create {% if temporary -%}\n temporary\n {%- endif %} table {{ relation }}\n as\n {{ sql }}\n{% endmacro %}", + "macro_sql": "{% macro get_snapshot_get_time_data_type() %}\n {% set snapshot_time = adapter.dispatch('snapshot_get_time', 'dbt')() %}\n {% set time_data_type_sql = 'select ' ~ snapshot_time ~ ' as dbt_snapshot_time' %}\n {% set snapshot_time_column_schema = get_column_schema_from_query(time_data_type_sql) %}\n {% set time_data_type = snapshot_time_column_schema[0].dtype %}\n {{ return(time_data_type or none) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__create_table_as", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "get_snapshot_get_time_data_type", + "original_file_path": "macros/adapters/timestamps.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/adapters/timestamps.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__create_table_as" + "unique_id": "macro.dbt.get_snapshot_get_time_data_type" }, - "macro.dbt_sqlite.sqlite__create_view_as": { + "macro.dbt.get_snapshot_table_column_names": { "arguments": [], - "created_at": 1696859933.337445, + "created_at": 1733768711.939744, "depends_on": { "macros": [] }, @@ -6427,67 +6751,71 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__create_view_as(relation, sql, auto_begin=False) -%}\n create view {{ relation }} as\n {{ sql }};\n{%- endmacro %}", + "macro_sql": "{% macro get_snapshot_table_column_names() %}\n {{ return({'dbt_valid_to': 'dbt_valid_to', 'dbt_valid_from': 'dbt_valid_from', 'dbt_scd_id': 'dbt_scd_id', 'dbt_updated_at': 'dbt_updated_at'}) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__create_view_as", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "get_snapshot_table_column_names", + "original_file_path": "macros/materializations/snapshots/helpers.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/materializations/snapshots/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__create_view_as" + "unique_id": "macro.dbt.get_snapshot_table_column_names" }, - "macro.dbt_sqlite.sqlite__current_timestamp": { + "macro.dbt.get_table_columns_and_constraints": { "arguments": [], - "created_at": 1696859933.337995, + "created_at": 1733768712.063669, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__get_table_columns_and_constraints" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__current_timestamp() -%}\n datetime()\n{%- endmacro %}", + "macro_sql": "{%- macro get_table_columns_and_constraints() -%}\n {{ adapter.dispatch('get_table_columns_and_constraints', 'dbt')() }}\n{%- endmacro -%}\n\n", "meta": {}, - "name": "sqlite__current_timestamp", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "get_table_columns_and_constraints", + "original_file_path": "macros/relations/column/columns_spec_ddl.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/relations/column/columns_spec_ddl.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__current_timestamp" + "unique_id": "macro.dbt.get_table_columns_and_constraints" }, - "macro.dbt_sqlite.sqlite__dateadd": { + "macro.dbt.get_test_sql": { "arguments": [], - "created_at": 1696859933.345522, + "created_at": 1733768711.952082, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__get_test_sql" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__dateadd(datepart, interval, from_date_or_timestamp) %}\n\n date(\n {{ from_date_or_timestamp }},\n \"{{ datepart }} {{ datepart }}\"\n )\n\n{% endmacro %}", + "macro_sql": "{% macro get_test_sql(main_sql, fail_calc, warn_if, error_if, limit) -%}\n {{ adapter.dispatch('get_test_sql', 'dbt')(main_sql, fail_calc, warn_if, error_if, limit) }}\n{%- endmacro %}", "meta": {}, - "name": "sqlite__dateadd", - "original_file_path": "macros/utils/dateadd.sql", - "package_name": "dbt_sqlite", + "name": "get_test_sql", + "original_file_path": "macros/materializations/tests/helpers.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/utils/dateadd.sql", + "path": "macros/materializations/tests/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__dateadd" + "unique_id": "macro.dbt.get_test_sql" }, - "macro.dbt_sqlite.sqlite__datediff_broken": { + "macro.dbt.get_true_sql": { "arguments": [], - "created_at": 1696859933.346851, + "created_at": 1733768711.939211, "depends_on": { "macros": [ - "macro.dbt.datediff" + "macro.dbt.default__get_true_sql" ] }, "description": "", @@ -6495,23 +6823,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__datediff_broken(first_date, second_date, datepart) -%}\n\n {% if datepart == 'year' %}\n (strftime('%Y', {{second_date}}) - strftime('%Y', {{first_date}}))\n {#\n {% elif datepart == 'quarter' %}\n ({{ datediff(first_date, second_date, 'year') }} * 4 + date_part('quarter', ({{second_date}})::date) - date_part('quarter', ({{first_date}})::date))\n #}\n {% elif datepart == 'month' %}\n (({{ datediff(first_date, second_date, 'year') }} * 12 + strftime('%m', {{second_date}})) - strftime('%m', {{first_date}}))\n {% elif datepart == 'day' %}\n (floor(cast(strftime('%s', {{second_date}}) - strftime('%s', {{first_date}}) as real) / 86400) +\n case when {{second_date}} <= strftime('%Y-%m-%d 23:59:59.999999', {{first_date}}) then -1 else 0 end)\n {% elif datepart == 'week' %}\n ({{ datediff(first_date, second_date, 'day') }} / 7 + case\n when strftime('%w', {{first_date}}) <= strftime('%w', {{second_date}}) then\n case when {{first_date}} <= {{second_date}} then 0 else -1 end\n else\n case when {{first_date}} <= {{second_date}} then 1 else 0 end\n end)\n {% elif datepart == 'hour' %}\n {# ({{ datediff(first_date, second_date, 'day') }} * 24 + strftime(\"%H\", {{second_date}}) - strftime(\"%H\", {{first_date}})) #}\n (ceil(cast(strftime('%s', {{second_date}}) - strftime('%s', {{first_date}}) as real) / 3600))\n {% elif datepart == 'minute' %}\n {# ({{ datediff(first_date, second_date, 'hour') }} * 60 + strftime(\"%M\", {{second_date}}) - strftime(\"%M\", {{first_date}})) #}\n (ceil(cast(strftime('%s', {{second_date}}) - strftime('%s', {{first_date}}) as real) / 60))\n {% elif datepart == 'second' %}\n (strftime('%s', {{second_date}}) - strftime('%s', {{first_date}}))\n {#\n {% elif datepart == 'millisecond' %}\n ({{ datediff(first_date, second_date, 'minute') }} * 60000 + floor(date_part('millisecond', ({{second_date}})::timestamp)) - floor(date_part('millisecond', ({{first_date}})::timestamp)))\n {% elif datepart == 'microsecond' %}\n ({{ datediff(first_date, second_date, 'minute') }} * 60000000 + floor(date_part('microsecond', ({{second_date}})::timestamp)) - floor(date_part('microsecond', ({{first_date}})::timestamp)))\n #}\n {% else %}\n {{ exceptions.raise_compiler_error(\"Unsupported datepart for macro datediff in sqlite: {!r}\".format(datepart)) }}\n {% endif %}\n\n{%- endmacro %}", + "macro_sql": "{% macro get_true_sql() %}\n {{ adapter.dispatch('get_true_sql', 'dbt')() }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__datediff_broken", - "original_file_path": "macros/utils/datediff.sql", - "package_name": "dbt_sqlite", - "patch_path": null, - "path": "macros/utils/datediff.sql", + "name": "get_true_sql", + "original_file_path": "macros/materializations/snapshots/helpers.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__datediff_broken" + "unique_id": "macro.dbt.get_true_sql" }, - "macro.dbt_sqlite.sqlite__drop_relation": { + "macro.dbt.get_unit_test_sql": { "arguments": [], - "created_at": 1696859933.336141, + "created_at": 1733768711.952619, "depends_on": { "macros": [ - "macro.dbt.statement" + "macro.dbt.default__get_unit_test_sql" ] }, "description": "", @@ -6519,24 +6847,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__drop_relation(relation) -%}\n {% call statement('drop_relation', auto_begin=False) -%}\n drop {{ relation.type }} if exists {{ relation }}\n {%- endcall %}\n{% endmacro %}", + "macro_sql": "{% macro get_unit_test_sql(main_sql, expected_fixture_sql, expected_column_names) -%}\n {{ adapter.dispatch('get_unit_test_sql', 'dbt')(main_sql, expected_fixture_sql, expected_column_names) }}\n{%- endmacro %}", "meta": {}, - "name": "sqlite__drop_relation", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "get_unit_test_sql", + "original_file_path": "macros/materializations/tests/helpers.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/materializations/tests/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__drop_relation" + "unique_id": "macro.dbt.get_unit_test_sql" }, - "macro.dbt_sqlite.sqlite__drop_schema": { + "macro.dbt.get_updated_at_column_data_type": { "arguments": [], - "created_at": 1696859933.3359811, + "created_at": 1733768711.942471, "depends_on": { "macros": [ - "macro.dbt.list_relations_without_caching", - "macro.dbt.statement" + "macro.dbt.get_column_schema_from_query" ] }, "description": "", @@ -6544,136 +6871,141 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__drop_schema(relation) -%}\n {# drop all tables in the schema; detaching happens in the adapter class #}\n\n {% set relations_in_schema = list_relations_without_caching(relation.without_identifier()) %}\n\n {% for row in relations_in_schema %}\n {%- call statement('drop_relation_in_schema') -%}\n drop {{ row.data_type}} {{ row.schema }}.{{ row.name }}\n {%- endcall -%}\n {% endfor %}\n{% endmacro %}", + "macro_sql": "{% macro get_updated_at_column_data_type(snapshot_sql) %}\n {% set snapshot_sql_column_schema = get_column_schema_from_query(snapshot_sql) %}\n {% set dbt_updated_at_data_type = null %}\n {% set ns = namespace() -%} {#-- handle for-loop scoping with a namespace --#}\n {% set ns.dbt_updated_at_data_type = null -%}\n {% for column in snapshot_sql_column_schema %}\n {% if ((column.column == 'dbt_updated_at') or (column.column == 'DBT_UPDATED_AT')) %}\n {% set ns.dbt_updated_at_data_type = column.dtype %}\n {% endif %}\n {% endfor %}\n {{ return(ns.dbt_updated_at_data_type or none) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__drop_schema", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "get_updated_at_column_data_type", + "original_file_path": "macros/materializations/snapshots/helpers.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/materializations/snapshots/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__drop_schema" + "unique_id": "macro.dbt.get_updated_at_column_data_type" }, - "macro.dbt_sqlite.sqlite__get_binding_char": { + "macro.dbt.get_where_subquery": { "arguments": [], - "created_at": 1696859933.340817, + "created_at": 1733768711.953578, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__get_where_subquery" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__get_binding_char() %}\n {{ return('?') }}\n{% endmacro %}", + "macro_sql": "{% macro get_where_subquery(relation) -%}\n {% do return(adapter.dispatch('get_where_subquery', 'dbt')(relation)) %}\n{%- endmacro %}", "meta": {}, - "name": "sqlite__get_binding_char", - "original_file_path": "macros/materializations/seed/helpers.sql", - "package_name": "dbt_sqlite", + "name": "get_where_subquery", + "original_file_path": "macros/materializations/tests/where_subquery.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seed/helpers.sql", + "path": "macros/materializations/tests/where_subquery.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__get_binding_char" + "unique_id": "macro.dbt.get_where_subquery" }, - "macro.dbt_sqlite.sqlite__get_catalog": { + "macro.dbt.handle_existing_table": { "arguments": [], - "created_at": 1696859933.332984, + "created_at": 1733768712.073157, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__handle_existing_table" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__get_catalog(information_schema, schemas) -%}\n {# no-op #}\n {# see SQLiteAdapter._get_one_catalog() #}\n{% endmacro %}", + "macro_sql": "{% macro handle_existing_table(full_refresh, old_relation) %}\n {{ adapter.dispatch('handle_existing_table', 'dbt')(full_refresh, old_relation) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__get_catalog", - "original_file_path": "macros/catalog.sql", - "package_name": "dbt_sqlite", + "name": "handle_existing_table", + "original_file_path": "macros/relations/view/replace.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/catalog.sql", + "path": "macros/relations/view/replace.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__get_catalog" + "unique_id": "macro.dbt.handle_existing_table" }, - "macro.dbt_sqlite.sqlite__get_test_sql": { + "macro.dbt.hash": { "arguments": [], - "created_at": 1696859933.3383381, + "created_at": 1733768712.0923588, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__hash" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__get_test_sql(main_sql, fail_calc, warn_if, error_if, limit) -%}\n select\n {{ fail_calc }} as failures,\n case when {{ fail_calc }} {{ warn_if }}\n then 'true' else 'false' end as should_warn,\n case when {{ fail_calc }} {{ error_if }}\n then 'true' else 'false' end as should_error\n from (\n {{ main_sql }}\n {{ \"limit \" ~ limit if limit != none }}\n ) dbt_internal_test\n{%- endmacro %}", + "macro_sql": "{% macro hash(field) -%}\n {{ return(adapter.dispatch('hash', 'dbt') (field)) }}\n{%- endmacro %}", "meta": {}, - "name": "sqlite__get_test_sql", - "original_file_path": "macros/materializations/test.sql", - "package_name": "dbt_sqlite", + "name": "hash", + "original_file_path": "macros/utils/hash.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/test.sql", + "path": "macros/utils/hash.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__get_test_sql" + "unique_id": "macro.dbt.hash" }, - "macro.dbt_sqlite.sqlite__hash": { + "macro.dbt.in_transaction": { "arguments": [], - "created_at": 1696859933.347031, + "created_at": 1733768711.922199, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.make_hook_config" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__hash(field) -%}\n case \n when {{ field }} is not null \n then lower(hex(md5(cast({{ field }} as {{ api.Column.translate_type('string') }}))))\n end\n{%- endmacro %}", + "macro_sql": "{% macro in_transaction(sql) %}\n {{ make_hook_config(sql, inside_transaction=True) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__hash", - "original_file_path": "macros/utils/hash.sql", - "package_name": "dbt_sqlite", + "name": "in_transaction", + "original_file_path": "macros/materializations/hooks.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/utils/hash.sql", + "path": "macros/materializations/hooks.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__hash" + "unique_id": "macro.dbt.in_transaction" }, - "macro.dbt_sqlite.sqlite__list_relations_without_caching": { + "macro.dbt.incremental_validate_on_schema_change": { "arguments": [], - "created_at": 1696859933.33719, + "created_at": 1733768711.9970958, "depends_on": { - "macros": [ - "macro.dbt.list_schemas", - "macro.dbt.statement" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__list_relations_without_caching(schema_relation) %}\n\n {% set schemas = list_schemas(schema_relation.database).columns[0].values() %}\n\n {% if schema_relation.schema in schemas %}\n {% call statement('list_relations_without_caching', fetch_result=True) %}\n SELECT\n '{{ schema_relation.database }}' as database\n ,name\n ,'{{ schema_relation.schema }}' AS schema\n ,type as data_type\n FROM\n {{ schema_relation.schema }}.sqlite_master\n WHERE\n name NOT LIKE 'sqlite_%'\n {% endcall %}\n\n {{ return(load_result('list_relations_without_caching').table) }}\n {% else %}\n {% call statement('empty_table', fetch_result=True) %}\n SELECT null as database, null as name, null as schema, null as data_type WHERE 1=0\n {% endcall %}\n\n {{ return(load_result('empty_table').table) }}\n {% endif %}\n{% endmacro %}", + "macro_sql": "{% macro incremental_validate_on_schema_change(on_schema_change, default='ignore') %}\n\n {% if on_schema_change not in ['sync_all_columns', 'append_new_columns', 'fail', 'ignore'] %}\n\n {% set log_message = 'Invalid value for on_schema_change (%s) specified. Setting default value of %s.' % (on_schema_change, default) %}\n {% do log(log_message) %}\n\n {{ return(default) }}\n\n {% else %}\n\n {{ return(on_schema_change) }}\n\n {% endif %}\n\n{% endmacro %}", "meta": {}, - "name": "sqlite__list_relations_without_caching", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "incremental_validate_on_schema_change", + "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/materializations/models/incremental/on_schema_change.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__list_relations_without_caching" + "unique_id": "macro.dbt.incremental_validate_on_schema_change" }, - "macro.dbt_sqlite.sqlite__list_schemas": { + "macro.dbt.information_schema_name": { "arguments": [], - "created_at": 1696859933.335351, + "created_at": 1733768712.1254919, "depends_on": { "macros": [ - "macro.dbt.statement" + "macro.dbt_postgres.postgres__information_schema_name" ] }, "description": "", @@ -6681,24 +7013,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__list_schemas(database) %}\n {% call statement('list_schemas', fetch_result=True) %}\n pragma database_list\n {% endcall %}\n {% set results = load_result('list_schemas').table %}\n {{ return(results.select(['name']).rename(column_names = {'name': 'schema'})) }}\n{% endmacro %}", + "macro_sql": "{% macro information_schema_name(database) %}\n {{ return(adapter.dispatch('information_schema_name', 'dbt')(database)) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__list_schemas", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "information_schema_name", + "original_file_path": "macros/adapters/metadata.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__list_schemas" + "unique_id": "macro.dbt.information_schema_name" }, - "macro.dbt_sqlite.sqlite__load_csv_rows": { + "macro.dbt.intersect": { "arguments": [], - "created_at": 1696859933.340689, + "created_at": 1733768712.0892, "depends_on": { "macros": [ - "macro.dbt.get_seed_column_quoted_csv", - "macro.dbt.get_binding_char" + "macro.dbt.default__intersect" ] }, "description": "", @@ -6706,152 +7037,164 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__load_csv_rows(model, agate_table) %}\n {% set batch_size = 10000 %}\n {% set cols_sql = get_seed_column_quoted_csv(model, agate_table.column_names) %}\n {% set bindings = [] %}\n\n {% set statements = [] %}\n\n {% for chunk in agate_table.rows | batch(batch_size) %}\n {% set bindings = [] %}\n\n {% for row in chunk %}\n {# transform rows so sqlite is happy with data types #}\n {% set processed_row = adapter.transform_seed_row(row) %}\n {% do bindings.extend(processed_row) %}\n {% endfor %}\n\n {% set sql %}\n insert into {{ this.schema }}.{{ this.identifier}} ({{ cols_sql }}) values\n {% for row in chunk -%}\n ({%- for column in agate_table.column_names -%}\n {{ get_binding_char() }}\n {%- if not loop.last%},{%- endif %}\n {%- endfor -%})\n {%- if not loop.last%},{%- endif %}\n {%- endfor %}\n {% endset %}\n\n {% do adapter.add_query(sql, bindings=bindings, abridge_sql_log=True) %}\n\n {% if loop.index0 == 0 %}\n {% do statements.append(sql) %}\n {% endif %}\n {% endfor %}\n\n {# Return SQL so we can render it out into the compiled files #}\n {{ return(statements[0]) }}\n{% endmacro %}", + "macro_sql": "{% macro intersect() %}\n {{ return(adapter.dispatch('intersect', 'dbt')()) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__load_csv_rows", - "original_file_path": "macros/materializations/seed/seed.sql", - "package_name": "dbt_sqlite", + "name": "intersect", + "original_file_path": "macros/utils/intersect.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/seed/seed.sql", + "path": "macros/utils/intersect.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__load_csv_rows" + "unique_id": "macro.dbt.intersect" }, - "macro.dbt_sqlite.sqlite__make_temp_relation": { + "macro.dbt.is_incremental": { "arguments": [], - "created_at": 1696859933.3379378, + "created_at": 1733768711.982646, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.should_full_refresh" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__make_temp_relation(base_relation, suffix) %}\n {% set tmp_identifier = base_relation.identifier ~ suffix %}\n {% set tmp_relation = base_relation.incorporate(\n path={\"schema\": \"temp\", \"identifier\": tmp_identifier}) -%}\n\n {% do return(tmp_relation) %}\n{% endmacro %}", + "macro_sql": "{% macro is_incremental() %}\n {#-- do not run introspective queries in parsing #}\n {% if not execute %}\n {{ return(False) }}\n {% else %}\n {% set relation = adapter.get_relation(this.database, this.schema, this.table) %}\n {{ return(relation is not none\n and relation.type == 'table'\n and model.config.materialized == 'incremental'\n and not should_full_refresh()) }}\n {% endif %}\n{% endmacro %}", "meta": {}, - "name": "sqlite__make_temp_relation", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "is_incremental", + "original_file_path": "macros/materializations/models/incremental/is_incremental.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/materializations/models/incremental/is_incremental.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__make_temp_relation" + "unique_id": "macro.dbt.is_incremental" }, - "macro.dbt_sqlite.sqlite__position": { + "macro.dbt.last_day": { "arguments": [], - "created_at": 1696859933.3473558, + "created_at": 1733768712.098379, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt_postgres.postgres__last_day" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__position(substring_text, string_text) %}\n\n instr({{ string_text }}, {{ substring_text }})\n\n{%- endmacro -%}", + "macro_sql": "{% macro last_day(date, datepart) %}\n {{ return(adapter.dispatch('last_day', 'dbt') (date, datepart)) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__position", - "original_file_path": "macros/utils/position.sql", - "package_name": "dbt_sqlite", + "name": "last_day", + "original_file_path": "macros/utils/last_day.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/utils/position.sql", + "path": "macros/utils/last_day.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__position" + "unique_id": "macro.dbt.last_day" }, - "macro.dbt_sqlite.sqlite__rename_relation": { + "macro.dbt.length": { "arguments": [], - "created_at": 1696859933.3375208, + "created_at": 1733768712.087976, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__length" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__rename_relation(from_relation, to_relation) -%}\n {# no-op #} \n {# see SQLiteAdapter.rename_relation() #}\n{% endmacro %}", + "macro_sql": "{% macro length(expression) -%}\n {{ return(adapter.dispatch('length', 'dbt') (expression)) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__rename_relation", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "length", + "original_file_path": "macros/utils/length.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/utils/length.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__rename_relation" + "unique_id": "macro.dbt.length" }, - "macro.dbt_sqlite.sqlite__right": { + "macro.dbt.list_relations_without_caching": { "arguments": [], - "created_at": 1696859933.345681, + "created_at": 1733768712.126682, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt_postgres.postgres__list_relations_without_caching" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__right(string_text, length_expression) %}\n case\n when {{ length_expression }} <> 0 then \n substr(\n {{ string_text }},\n -1 * {{ length_expression }}\n )\n else ''\n end\n{%- endmacro -%}", + "macro_sql": "{% macro list_relations_without_caching(schema_relation) %}\n {{ return(adapter.dispatch('list_relations_without_caching', 'dbt')(schema_relation)) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__right", - "original_file_path": "macros/utils/right.sql", - "package_name": "dbt_sqlite", + "name": "list_relations_without_caching", + "original_file_path": "macros/adapters/metadata.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/utils/right.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__right" + "unique_id": "macro.dbt.list_relations_without_caching" }, - "macro.dbt_sqlite.sqlite__snapshot_get_time": { + "macro.dbt.list_schemas": { "arguments": [], - "created_at": 1696859933.3375769, + "created_at": 1733768712.125814, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt_postgres.postgres__list_schemas" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__snapshot_get_time() -%}\n datetime()\n{%- endmacro %}", + "macro_sql": "{% macro list_schemas(database) -%}\n {{ return(adapter.dispatch('list_schemas', 'dbt')(database)) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__snapshot_get_time", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "list_schemas", + "original_file_path": "macros/adapters/metadata.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/adapters/metadata.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__snapshot_get_time" + "unique_id": "macro.dbt.list_schemas" }, - "macro.dbt_sqlite.sqlite__snapshot_hash_arguments": { + "macro.dbt.listagg": { "arguments": [], - "created_at": 1696859933.33918, + "created_at": 1733768712.0906901, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt_postgres.postgres__listagg" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__snapshot_hash_arguments(args) -%}\n hex(md5({%- for arg in args -%}\n coalesce(cast({{ arg }} as varchar ), '')\n {% if not loop.last %} || '|' || {% endif %}\n {%- endfor -%}))\n{%- endmacro %}", + "macro_sql": "{% macro listagg(measure, delimiter_text=\"','\", order_by_clause=none, limit_num=none) -%}\n {{ return(adapter.dispatch('listagg', 'dbt') (measure, delimiter_text, order_by_clause, limit_num)) }}\n{%- endmacro %}", "meta": {}, - "name": "sqlite__snapshot_hash_arguments", - "original_file_path": "macros/materializations/snapshot/strategies.sql", - "package_name": "dbt_sqlite", + "name": "listagg", + "original_file_path": "macros/utils/listagg.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshot/strategies.sql", + "path": "macros/utils/listagg.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__snapshot_hash_arguments" + "unique_id": "macro.dbt.listagg" }, - "macro.dbt_sqlite.sqlite__snapshot_merge_sql": { + "macro.dbt.load_cached_relation": { "arguments": [], - "created_at": 1696859933.338964, + "created_at": 1733768712.1107929, "depends_on": { "macros": [] }, @@ -6860,45 +7203,47 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__snapshot_merge_sql(target, source, insert_cols) -%}\n {%- set insert_cols_csv = insert_cols | join(', ') -%}\n\n {% set update_sql %}\n update {{ target }}\n set dbt_valid_to = (\n SELECT\n DBT_INTERNAL_SOURCE.dbt_valid_to\n from {{ source }} as DBT_INTERNAL_SOURCE\n where DBT_INTERNAL_SOURCE.dbt_scd_id = {{ target }}.dbt_scd_id\n and DBT_INTERNAL_SOURCE.dbt_change_type = 'update'\n )\n WHERE dbt_valid_to is null;\n {% endset %}\n\n {#\n TODO: this is a hack: this macro is supposed to return a SQL string\n but we're executing a query here. this happens to work and it avoids having\n to override the snapshot_merge macro to properly execute two separate\n statements but it's horrible.\n #}\n {% do adapter.add_query(update_sql, auto_begin=False) %}\n\n insert into {{ target }} ({{ insert_cols_csv }})\n select {% for column in insert_cols -%}\n DBT_INTERNAL_SOURCE.{{ column }} {%- if not loop.last %}, {%- endif %}\n {%- endfor %}\n from {{ source }} as DBT_INTERNAL_SOURCE\n where DBT_INTERNAL_SOURCE.dbt_change_type = 'insert';\n\n{% endmacro %}", + "macro_sql": "{% macro load_cached_relation(relation) %}\n {% do return(adapter.get_relation(\n database=relation.database,\n schema=relation.schema,\n identifier=relation.identifier\n )) -%}\n{% endmacro %}", "meta": {}, - "name": "sqlite__snapshot_merge_sql", - "original_file_path": "macros/materializations/snapshot/snapshot_merge.sql", - "package_name": "dbt_sqlite", + "name": "load_cached_relation", + "original_file_path": "macros/adapters/relation.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/snapshot/snapshot_merge.sql", + "path": "macros/adapters/relation.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__snapshot_merge_sql" + "unique_id": "macro.dbt.load_cached_relation" }, - "macro.dbt_sqlite.sqlite__snapshot_string_as_time": { + "macro.dbt.load_csv_rows": { "arguments": [], - "created_at": 1696859933.337692, + "created_at": 1733768712.046595, "depends_on": { - "macros": [] + "macros": [ + "macro.dbt.default__load_csv_rows" + ] }, "description": "", "docs": { "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__snapshot_string_as_time(timestamp) -%}\n {# just return the string; SQLite doesn't have a timestamp data type per se #}\n {{ return(\"'\" + timestamp|string + \"'\") }}\n{%- endmacro %}", + "macro_sql": "{% macro load_csv_rows(model, agate_table) -%}\n {{ adapter.dispatch('load_csv_rows', 'dbt')(model, agate_table) }}\n{%- endmacro %}", "meta": {}, - "name": "sqlite__snapshot_string_as_time", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "load_csv_rows", + "original_file_path": "macros/materializations/seeds/helpers.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/materializations/seeds/helpers.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__snapshot_string_as_time" + "unique_id": "macro.dbt.load_csv_rows" }, - "macro.dbt_sqlite.sqlite__truncate_relation": { + "macro.dbt.load_relation": { "arguments": [], - "created_at": 1696859933.336266, + "created_at": 1733768712.1109262, "depends_on": { "macros": [ - "macro.dbt.statement" + "macro.dbt.load_cached_relation" ] }, "description": "", @@ -6906,23 +7251,23 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite__truncate_relation(relation) -%}\n {% call statement('truncate_relation') -%}\n delete from {{ relation }}\n {%- endcall %}\n{% endmacro %}", + "macro_sql": "{% macro load_relation(relation) %}\n {{ return(load_cached_relation(relation)) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite__truncate_relation", - "original_file_path": "macros/adapters.sql", - "package_name": "dbt_sqlite", + "name": "load_relation", + "original_file_path": "macros/adapters/relation.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/adapters.sql", + "path": "macros/adapters/relation.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite__truncate_relation" + "unique_id": "macro.dbt.load_relation" }, - "macro.dbt_sqlite.sqlite_incremental_upsert": { + "macro.dbt.make_backup_relation": { "arguments": [], - "created_at": 1696859933.341859, + "created_at": 1733768712.109196, "depends_on": { "macros": [ - "macro.dbt.statement" + "macro.dbt_postgres.postgres__make_backup_relation" ] }, "description": "", @@ -6930,147 +7275,8810 @@ "node_color": null, "show": true }, - "macro_sql": "{% macro sqlite_incremental_upsert(tmp_relation, target_relation, unique_key=none, statement_name=\"main\") %}\n {%- set dest_columns = adapter.get_columns_in_relation(target_relation) -%}\n {%- set dest_cols_csv = dest_columns | map(attribute='quoted') | join(', ') -%}\n\n {%- if unique_key is not none -%}\n {% call statement('sqlite_incremental_upsert') -%}\n delete\n from {{ target_relation }}\n where ({{ unique_key }}) in (\n select ({{ unique_key }})\n from {{ tmp_relation }}\n );\n {%- endcall %}\n {%- endif %}\n\n {# difference here is sqlite doesn't want parens around the select query #}\n insert into {{ target_relation }} ({{ dest_cols_csv }})\n select {{ dest_cols_csv }}\n from {{ tmp_relation }}\n ;\n{%- endmacro %}", + "macro_sql": "{% macro make_backup_relation(base_relation, backup_relation_type, suffix='__dbt_backup') %}\n {{ return(adapter.dispatch('make_backup_relation', 'dbt')(base_relation, backup_relation_type, suffix)) }}\n{% endmacro %}", "meta": {}, - "name": "sqlite_incremental_upsert", - "original_file_path": "macros/materializations/incremental/incremental.sql", - "package_name": "dbt_sqlite", + "name": "make_backup_relation", + "original_file_path": "macros/adapters/relation.sql", + "package_name": "dbt", "patch_path": null, - "path": "macros/materializations/incremental/incremental.sql", + "path": "macros/adapters/relation.sql", "resource_type": "macro", "supported_languages": null, - "unique_id": "macro.dbt_sqlite.sqlite_incremental_upsert" - } - }, - "metadata": { - "adapter_type": "sqlite", - "dbt_schema_version": "https://schemas.getdbt.com/dbt/manifest/v8.json", - "dbt_version": "1.4.0", - "env": {}, - "generated_at": "2023-10-13T13:58:46.591195Z", - "invocation_id": "4f4b6d15-b4ab-4683-bbe5-efd94824b1d9", - "project_id": "8dbdda48fb8748d6746f1965824e966a", - "send_anonymous_usage_stats": true, - "user_id": "4bdc3972-5c9f-4f16-90bd-3769a225fbe6" - }, - "metrics": {}, - "nodes": { - "model.simple.movies_ratings_simplified": { - "alias": "movies_ratings_simplified", - "build_path": null, - "checksum": { - "checksum": "4752bc3186c6cde761b592abdc827bed78aa1445dfa7af0fa09314ffe2d4d564", - "name": "sha256" - }, - "columns": {}, - "compiled_path": null, - "config": { - "alias": null, - "column_types": {}, - "database": null, - "docs": { - "node_color": null, - "show": true - }, - "enabled": true, - "full_refresh": null, - "grants": {}, - "incremental_strategy": null, - "materialized": "table", - "meta": {}, - "on_schema_change": "ignore", - "packages": [], - "persist_docs": {}, - "post-hook": [], - "pre-hook": [], - "quoting": {}, - "schema": null, - "tags": [], - "unique_key": null - }, - "created_at": 1697205180.9909241, - "database": "database", - "deferred": false, + "unique_id": "macro.dbt.make_backup_relation" + }, + "macro.dbt.make_hook_config": { + "arguments": [], + "created_at": 1733768711.921931, "depends_on": { - "macros": [], - "nodes": [ - "source.simple.main.movies_ratings" - ] + "macros": [] }, "description": "", "docs": { "node_color": null, "show": true }, - "fqn": [ - "simple", - "movies_ratings_simplified" - ], - "language": "sql", + "macro_sql": "{% macro make_hook_config(sql, inside_transaction) %}\n {{ tojson({\"sql\": sql, \"transaction\": inside_transaction}) }}\n{% endmacro %}", "meta": {}, - "metrics": [], - "name": "movies_ratings_simplified", - "original_file_path": "models/movies_ratings_simplified.sql", - "package_name": "simple", + "name": "make_hook_config", + "original_file_path": "macros/materializations/hooks.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/hooks.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.make_hook_config" + }, + "macro.dbt.make_intermediate_relation": { + "arguments": [], + "created_at": 1733768712.108265, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__make_intermediate_relation" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro make_intermediate_relation(base_relation, suffix='__dbt_tmp') %}\n {{ return(adapter.dispatch('make_intermediate_relation', 'dbt')(base_relation, suffix)) }}\n{% endmacro %}", + "meta": {}, + "name": "make_intermediate_relation", + "original_file_path": "macros/adapters/relation.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/adapters/relation.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.make_intermediate_relation" + }, + "macro.dbt.make_temp_relation": { + "arguments": [], + "created_at": 1733768712.108624, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__make_temp_relation" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro make_temp_relation(base_relation, suffix='__dbt_tmp') %}\n {{ return(adapter.dispatch('make_temp_relation', 'dbt')(base_relation, suffix)) }}\n{% endmacro %}", + "meta": {}, + "name": "make_temp_relation", + "original_file_path": "macros/adapters/relation.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/adapters/relation.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.make_temp_relation" + }, + "macro.dbt.materialization_clone_default": { + "arguments": [], + "created_at": 1733768712.033293, + "depends_on": { + "macros": [ + "macro.dbt.load_cached_relation", + "macro.dbt.can_clone_table", + "macro.dbt.drop_relation_if_exists", + "macro.dbt.statement", + "macro.dbt.create_or_replace_clone", + "macro.dbt.should_revoke", + "macro.dbt.apply_grants", + "macro.dbt.persist_docs" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- materialization clone, default -%}\n\n {%- set relations = {'relations': []} -%}\n\n {%- if not defer_relation -%}\n -- nothing to do\n {{ log(\"No relation found in state manifest for \" ~ model.unique_id, info=True) }}\n {{ return(relations) }}\n {%- endif -%}\n\n {%- set existing_relation = load_cached_relation(this) -%}\n\n {%- if existing_relation and not flags.FULL_REFRESH -%}\n -- noop!\n {{ log(\"Relation \" ~ existing_relation ~ \" already exists\", info=True) }}\n {{ return(relations) }}\n {%- endif -%}\n\n {%- set other_existing_relation = load_cached_relation(defer_relation) -%}\n\n -- If this is a database that can do zero-copy cloning of tables, and the other relation is a table, then this will be a table\n -- Otherwise, this will be a view\n\n {% set can_clone_table = can_clone_table() %}\n\n {%- if other_existing_relation and other_existing_relation.type == 'table' and can_clone_table -%}\n\n {%- set target_relation = this.incorporate(type='table') -%}\n {% if existing_relation is not none and not existing_relation.is_table %}\n {{ log(\"Dropping relation \" ~ existing_relation.render() ~ \" because it is of type \" ~ existing_relation.type) }}\n {{ drop_relation_if_exists(existing_relation) }}\n {% endif %}\n\n -- as a general rule, data platforms that can clone tables can also do atomic 'create or replace'\n {% call statement('main') %}\n {% if target_relation and defer_relation and target_relation == defer_relation %}\n {{ log(\"Target relation and defer relation are the same, skipping clone for relation: \" ~ target_relation.render()) }}\n {% else %}\n {{ create_or_replace_clone(target_relation, defer_relation) }}\n {% endif %}\n\n {% endcall %}\n\n {% set should_revoke = should_revoke(existing_relation, full_refresh_mode=True) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n {% do persist_docs(target_relation, model) %}\n\n {{ return({'relations': [target_relation]}) }}\n\n {%- else -%}\n\n {%- set target_relation = this.incorporate(type='view') -%}\n\n -- reuse the view materialization\n -- TODO: support actual dispatch for materialization macros\n -- Tracking ticket: https://github.com/dbt-labs/dbt-core/issues/7799\n {% set search_name = \"materialization_view_\" ~ adapter.type() %}\n {% if not search_name in context %}\n {% set search_name = \"materialization_view_default\" %}\n {% endif %}\n {% set materialization_macro = context[search_name] %}\n {% set relations = materialization_macro() %}\n {{ return(relations) }}\n\n {%- endif -%}\n\n{%- endmaterialization -%}", + "meta": {}, + "name": "materialization_clone_default", + "original_file_path": "macros/materializations/models/clone/clone.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/clone/clone.sql", + "resource_type": "macro", + "supported_languages": [ + "sql" + ], + "unique_id": "macro.dbt.materialization_clone_default" + }, + "macro.dbt.materialization_incremental_default": { + "arguments": [], + "created_at": 1733768711.991256, + "depends_on": { + "macros": [ + "macro.dbt.load_cached_relation", + "macro.dbt.make_temp_relation", + "macro.dbt.make_intermediate_relation", + "macro.dbt.make_backup_relation", + "macro.dbt.should_full_refresh", + "macro.dbt.incremental_validate_on_schema_change", + "macro.dbt.drop_relation_if_exists", + "macro.dbt.run_hooks", + "macro.dbt.get_create_table_as_sql", + "macro.dbt.run_query", + "macro.dbt.process_schema_changes", + "macro.dbt.statement", + "macro.dbt.should_revoke", + "macro.dbt.apply_grants", + "macro.dbt.persist_docs", + "macro.dbt.create_indexes" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% materialization incremental, default -%}\n\n -- relations\n {%- set existing_relation = load_cached_relation(this) -%}\n {%- set target_relation = this.incorporate(type='table') -%}\n {%- set temp_relation = make_temp_relation(target_relation)-%}\n {%- set intermediate_relation = make_intermediate_relation(target_relation)-%}\n {%- set backup_relation_type = 'table' if existing_relation is none else existing_relation.type -%}\n {%- set backup_relation = make_backup_relation(target_relation, backup_relation_type) -%}\n\n -- configs\n {%- set unique_key = config.get('unique_key') -%}\n {%- set full_refresh_mode = (should_full_refresh() or existing_relation.is_view) -%}\n {%- set on_schema_change = incremental_validate_on_schema_change(config.get('on_schema_change'), default='ignore') -%}\n\n -- the temp_ and backup_ relations should not already exist in the database; get_relation\n -- will return None in that case. Otherwise, we get a relation that we can drop\n -- later, before we try to use this name for the current operation. This has to happen before\n -- BEGIN, in a separate transaction\n {%- set preexisting_intermediate_relation = load_cached_relation(intermediate_relation)-%}\n {%- set preexisting_backup_relation = load_cached_relation(backup_relation) -%}\n -- grab current tables grants config for comparision later on\n {% set grant_config = config.get('grants') %}\n {{ drop_relation_if_exists(preexisting_intermediate_relation) }}\n {{ drop_relation_if_exists(preexisting_backup_relation) }}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n {% set to_drop = [] %}\n\n {% if existing_relation is none %}\n {% set build_sql = get_create_table_as_sql(False, target_relation, sql) %}\n {% elif full_refresh_mode %}\n {% set build_sql = get_create_table_as_sql(False, intermediate_relation, sql) %}\n {% set need_swap = true %}\n {% else %}\n {% do run_query(get_create_table_as_sql(True, temp_relation, sql)) %}\n {% set contract_config = config.get('contract') %}\n {% if not contract_config or not contract_config.enforced %}\n {% do adapter.expand_target_column_types(\n from_relation=temp_relation,\n to_relation=target_relation) %}\n {% endif %}\n {#-- Process schema changes. Returns dict of changes if successful. Use source columns for upserting/merging --#}\n {% set dest_columns = process_schema_changes(on_schema_change, temp_relation, existing_relation) %}\n {% if not dest_columns %}\n {% set dest_columns = adapter.get_columns_in_relation(existing_relation) %}\n {% endif %}\n\n {#-- Get the incremental_strategy, the macro to use for the strategy, and build the sql --#}\n {% set incremental_strategy = config.get('incremental_strategy') or 'default' %}\n {% set incremental_predicates = config.get('predicates', none) or config.get('incremental_predicates', none) %}\n {% set strategy_sql_macro_func = adapter.get_incremental_strategy_macro(context, incremental_strategy) %}\n {% set strategy_arg_dict = ({'target_relation': target_relation, 'temp_relation': temp_relation, 'unique_key': unique_key, 'dest_columns': dest_columns, 'incremental_predicates': incremental_predicates }) %}\n {% set build_sql = strategy_sql_macro_func(strategy_arg_dict) %}\n\n {% endif %}\n\n {% call statement(\"main\") %}\n {{ build_sql }}\n {% endcall %}\n\n {% if need_swap %}\n {% do adapter.rename_relation(target_relation, backup_relation) %}\n {% do adapter.rename_relation(intermediate_relation, target_relation) %}\n {% do to_drop.append(backup_relation) %}\n {% endif %}\n\n {% set should_revoke = should_revoke(existing_relation, full_refresh_mode) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {% do persist_docs(target_relation, model) %}\n\n {% if existing_relation is none or existing_relation.is_view or should_full_refresh() %}\n {% do create_indexes(target_relation) %}\n {% endif %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n -- `COMMIT` happens here\n {% do adapter.commit() %}\n\n {% for rel in to_drop %}\n {% do adapter.drop_relation(rel) %}\n {% endfor %}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{%- endmaterialization %}", + "meta": {}, + "name": "materialization_incremental_default", + "original_file_path": "macros/materializations/models/incremental/incremental.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/incremental/incremental.sql", + "resource_type": "macro", + "supported_languages": [ + "sql" + ], + "unique_id": "macro.dbt.materialization_incremental_default" + }, + "macro.dbt.materialization_materialized_view_default": { + "arguments": [], + "created_at": 1733768711.960275, + "depends_on": { + "macros": [ + "macro.dbt.load_cached_relation", + "macro.dbt.make_intermediate_relation", + "macro.dbt.make_backup_relation", + "macro.dbt.materialized_view_setup", + "macro.dbt.materialized_view_get_build_sql", + "macro.dbt.materialized_view_execute_no_op", + "macro.dbt.materialized_view_execute_build_sql", + "macro.dbt.materialized_view_teardown" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% materialization materialized_view, default %}\n {% set existing_relation = load_cached_relation(this) %}\n {% set target_relation = this.incorporate(type=this.MaterializedView) %}\n {% set intermediate_relation = make_intermediate_relation(target_relation) %}\n {% set backup_relation_type = target_relation.MaterializedView if existing_relation is none else existing_relation.type %}\n {% set backup_relation = make_backup_relation(target_relation, backup_relation_type) %}\n\n {{ materialized_view_setup(backup_relation, intermediate_relation, pre_hooks) }}\n\n {% set build_sql = materialized_view_get_build_sql(existing_relation, target_relation, backup_relation, intermediate_relation) %}\n\n {% if build_sql == '' %}\n {{ materialized_view_execute_no_op(target_relation) }}\n {% else %}\n {{ materialized_view_execute_build_sql(build_sql, existing_relation, target_relation, post_hooks) }}\n {% endif %}\n\n {{ materialized_view_teardown(backup_relation, intermediate_relation, post_hooks) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{% endmaterialization %}", + "meta": {}, + "name": "materialization_materialized_view_default", + "original_file_path": "macros/materializations/models/materialized_view.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/materialized_view.sql", + "resource_type": "macro", + "supported_languages": [ + "sql" + ], + "unique_id": "macro.dbt.materialization_materialized_view_default" + }, + "macro.dbt.materialization_seed_default": { + "arguments": [], + "created_at": 1733768712.036364, + "depends_on": { + "macros": [ + "macro.dbt.should_full_refresh", + "macro.dbt.run_hooks", + "macro.dbt.reset_csv_table", + "macro.dbt.create_csv_table", + "macro.dbt.load_csv_rows", + "macro.dbt.noop_statement", + "macro.dbt.get_csv_sql", + "macro.dbt.should_revoke", + "macro.dbt.apply_grants", + "macro.dbt.persist_docs", + "macro.dbt.create_indexes" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% materialization seed, default %}\n\n {%- set identifier = model['alias'] -%}\n {%- set full_refresh_mode = (should_full_refresh()) -%}\n\n {%- set old_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) -%}\n\n {%- set exists_as_table = (old_relation is not none and old_relation.is_table) -%}\n {%- set exists_as_view = (old_relation is not none and old_relation.is_view) -%}\n\n {%- set grant_config = config.get('grants') -%}\n {%- set agate_table = load_agate_table() -%}\n -- grab current tables grants config for comparison later on\n\n {%- do store_result('agate_table', response='OK', agate_table=agate_table) -%}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n -- build model\n {% set create_table_sql = \"\" %}\n {% if exists_as_view %}\n {{ exceptions.raise_compiler_error(\"Cannot seed to '{}', it is a view\".format(old_relation.render())) }}\n {% elif exists_as_table %}\n {% set create_table_sql = reset_csv_table(model, full_refresh_mode, old_relation, agate_table) %}\n {% else %}\n {% set create_table_sql = create_csv_table(model, agate_table) %}\n {% endif %}\n\n {% set code = 'CREATE' if full_refresh_mode else 'INSERT' %}\n {% set rows_affected = (agate_table.rows | length) %}\n {% set sql = load_csv_rows(model, agate_table) %}\n\n {% call noop_statement('main', code ~ ' ' ~ rows_affected, code, rows_affected) %}\n {{ get_csv_sql(create_table_sql, sql) }};\n {% endcall %}\n\n {% set target_relation = this.incorporate(type='table') %}\n\n {% set should_revoke = should_revoke(old_relation, full_refresh_mode) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {% do persist_docs(target_relation, model) %}\n\n {% if full_refresh_mode or not exists_as_table %}\n {% do create_indexes(target_relation) %}\n {% endif %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n -- `COMMIT` happens here\n {{ adapter.commit() }}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{% endmaterialization %}", + "meta": {}, + "name": "materialization_seed_default", + "original_file_path": "macros/materializations/seeds/seed.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/seeds/seed.sql", + "resource_type": "macro", + "supported_languages": [ + "sql" + ], + "unique_id": "macro.dbt.materialization_seed_default" + }, + "macro.dbt.materialization_snapshot_default": { + "arguments": [], + "created_at": 1733768711.948396, + "depends_on": { + "macros": [ + "macro.dbt.get_or_create_relation", + "macro.dbt.run_hooks", + "macro.dbt.strategy_dispatch", + "macro.dbt.build_snapshot_table", + "macro.dbt.create_table_as", + "macro.dbt.get_snapshot_table_column_names", + "macro.dbt.snapshot_staging_table", + "macro.dbt.build_snapshot_staging_table", + "macro.dbt.create_columns", + "macro.dbt.snapshot_merge_sql", + "macro.dbt.check_time_data_types", + "macro.dbt.statement", + "macro.dbt.should_revoke", + "macro.dbt.apply_grants", + "macro.dbt.persist_docs", + "macro.dbt.create_indexes", + "macro.dbt.post_snapshot" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% materialization snapshot, default %}\n\n {%- set target_table = model.get('alias', model.get('name')) -%}\n\n {%- set strategy_name = config.get('strategy') -%}\n {%- set unique_key = config.get('unique_key') %}\n -- grab current tables grants config for comparision later on\n {%- set grant_config = config.get('grants') -%}\n\n {% set target_relation_exists, target_relation = get_or_create_relation(\n database=model.database,\n schema=model.schema,\n identifier=target_table,\n type='table') -%}\n\n {%- if not target_relation.is_table -%}\n {% do exceptions.relation_wrong_type(target_relation, 'table') %}\n {%- endif -%}\n\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n {% set strategy_macro = strategy_dispatch(strategy_name) %}\n {# The model['config'] parameter below is no longer used, but passing anyway for compatibility #}\n {# It was a dictionary of config, instead of the config object from the context #}\n {% set strategy = strategy_macro(model, \"snapshotted_data\", \"source_data\", model['config'], target_relation_exists) %}\n\n {% if not target_relation_exists %}\n\n {% set build_sql = build_snapshot_table(strategy, model['compiled_code']) %}\n {% set build_or_select_sql = build_sql %}\n {% set final_sql = create_table_as(False, target_relation, build_sql) %}\n\n {% else %}\n\n {% set columns = config.get(\"snapshot_table_column_names\") or get_snapshot_table_column_names() %}\n\n {{ adapter.valid_snapshot_target(target_relation, columns) }}\n\n {% set build_or_select_sql = snapshot_staging_table(strategy, sql, target_relation) %}\n {% set staging_table = build_snapshot_staging_table(strategy, sql, target_relation) %}\n\n -- this may no-op if the database does not require column expansion\n {% do adapter.expand_target_column_types(from_relation=staging_table,\n to_relation=target_relation) %}\n\n {% set missing_columns = adapter.get_missing_columns(staging_table, target_relation)\n | rejectattr('name', 'equalto', 'dbt_change_type')\n | rejectattr('name', 'equalto', 'DBT_CHANGE_TYPE')\n | rejectattr('name', 'equalto', 'dbt_unique_key')\n | rejectattr('name', 'equalto', 'DBT_UNIQUE_KEY')\n | list %}\n\n {% do create_columns(target_relation, missing_columns) %}\n\n {% set source_columns = adapter.get_columns_in_relation(staging_table)\n | rejectattr('name', 'equalto', 'dbt_change_type')\n | rejectattr('name', 'equalto', 'DBT_CHANGE_TYPE')\n | rejectattr('name', 'equalto', 'dbt_unique_key')\n | rejectattr('name', 'equalto', 'DBT_UNIQUE_KEY')\n | list %}\n\n {% set quoted_source_columns = [] %}\n {% for column in source_columns %}\n {% do quoted_source_columns.append(adapter.quote(column.name)) %}\n {% endfor %}\n\n {% set final_sql = snapshot_merge_sql(\n target = target_relation,\n source = staging_table,\n insert_cols = quoted_source_columns\n )\n %}\n\n {% endif %}\n\n\n {{ check_time_data_types(build_or_select_sql) }}\n\n {% call statement('main') %}\n {{ final_sql }}\n {% endcall %}\n\n {% set should_revoke = should_revoke(target_relation_exists, full_refresh_mode=False) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {% do persist_docs(target_relation, model) %}\n\n {% if not target_relation_exists %}\n {% do create_indexes(target_relation) %}\n {% endif %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n {{ adapter.commit() }}\n\n {% if staging_table is defined %}\n {% do post_snapshot(staging_table) %}\n {% endif %}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{% endmaterialization %}", + "meta": {}, + "name": "materialization_snapshot_default", + "original_file_path": "macros/materializations/snapshots/snapshot.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/snapshot.sql", + "resource_type": "macro", + "supported_languages": [ + "sql" + ], + "unique_id": "macro.dbt.materialization_snapshot_default" + }, + "macro.dbt.materialization_table_default": { + "arguments": [], + "created_at": 1733768711.968425, + "depends_on": { + "macros": [ + "macro.dbt.load_cached_relation", + "macro.dbt.make_intermediate_relation", + "macro.dbt.make_backup_relation", + "macro.dbt.drop_relation_if_exists", + "macro.dbt.run_hooks", + "macro.dbt.statement", + "macro.dbt.get_create_table_as_sql", + "macro.dbt.create_indexes", + "macro.dbt.should_revoke", + "macro.dbt.apply_grants", + "macro.dbt.persist_docs" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% materialization table, default %}\n\n {%- set existing_relation = load_cached_relation(this) -%}\n {%- set target_relation = this.incorporate(type='table') %}\n {%- set intermediate_relation = make_intermediate_relation(target_relation) -%}\n -- the intermediate_relation should not already exist in the database; get_relation\n -- will return None in that case. Otherwise, we get a relation that we can drop\n -- later, before we try to use this name for the current operation\n {%- set preexisting_intermediate_relation = load_cached_relation(intermediate_relation) -%}\n /*\n See ../view/view.sql for more information about this relation.\n */\n {%- set backup_relation_type = 'table' if existing_relation is none else existing_relation.type -%}\n {%- set backup_relation = make_backup_relation(target_relation, backup_relation_type) -%}\n -- as above, the backup_relation should not already exist\n {%- set preexisting_backup_relation = load_cached_relation(backup_relation) -%}\n -- grab current tables grants config for comparision later on\n {% set grant_config = config.get('grants') %}\n\n -- drop the temp relations if they exist already in the database\n {{ drop_relation_if_exists(preexisting_intermediate_relation) }}\n {{ drop_relation_if_exists(preexisting_backup_relation) }}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n -- build model\n {% call statement('main') -%}\n {{ get_create_table_as_sql(False, intermediate_relation, sql) }}\n {%- endcall %}\n\n -- cleanup\n {% if existing_relation is not none %}\n /* Do the equivalent of rename_if_exists. 'existing_relation' could have been dropped\n since the variable was first set. */\n {% set existing_relation = load_cached_relation(existing_relation) %}\n {% if existing_relation is not none %}\n {{ adapter.rename_relation(existing_relation, backup_relation) }}\n {% endif %}\n {% endif %}\n\n {{ adapter.rename_relation(intermediate_relation, target_relation) }}\n\n {% do create_indexes(target_relation) %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n {% set should_revoke = should_revoke(existing_relation, full_refresh_mode=True) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {% do persist_docs(target_relation, model) %}\n\n -- `COMMIT` happens here\n {{ adapter.commit() }}\n\n -- finally, drop the existing/backup relation after the commit\n {{ drop_relation_if_exists(backup_relation) }}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n{% endmaterialization %}", + "meta": {}, + "name": "materialization_table_default", + "original_file_path": "macros/materializations/models/table.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/table.sql", + "resource_type": "macro", + "supported_languages": [ + "sql" + ], + "unique_id": "macro.dbt.materialization_table_default" + }, + "macro.dbt.materialization_test_default": { + "arguments": [], + "created_at": 1733768711.950998, + "depends_on": { + "macros": [ + "macro.dbt.should_store_failures", + "macro.dbt.statement", + "macro.dbt.get_create_sql", + "macro.dbt.get_test_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- materialization test, default -%}\n\n {% set relations = [] %}\n\n {% if should_store_failures() %}\n\n {% set identifier = model['alias'] %}\n {% set old_relation = adapter.get_relation(database=database, schema=schema, identifier=identifier) %}\n\n {% set store_failures_as = config.get('store_failures_as') %}\n -- if `--store-failures` is invoked via command line and `store_failures_as` is not set,\n -- config.get('store_failures_as', 'table') returns None, not 'table'\n {% if store_failures_as == none %}{% set store_failures_as = 'table' %}{% endif %}\n {% if store_failures_as not in ['table', 'view'] %}\n {{ exceptions.raise_compiler_error(\n \"'\" ~ store_failures_as ~ \"' is not a valid value for `store_failures_as`. \"\n \"Accepted values are: ['ephemeral', 'table', 'view']\"\n ) }}\n {% endif %}\n\n {% set target_relation = api.Relation.create(\n identifier=identifier, schema=schema, database=database, type=store_failures_as) -%} %}\n\n {% if old_relation %}\n {% do adapter.drop_relation(old_relation) %}\n {% endif %}\n\n {% call statement(auto_begin=True) %}\n {{ get_create_sql(target_relation, sql) }}\n {% endcall %}\n\n {% do relations.append(target_relation) %}\n\n {% set main_sql %}\n select *\n from {{ target_relation }}\n {% endset %}\n\n {{ adapter.commit() }}\n\n {% else %}\n\n {% set main_sql = sql %}\n\n {% endif %}\n\n {% set limit = config.get('limit') %}\n {% set fail_calc = config.get('fail_calc') %}\n {% set warn_if = config.get('warn_if') %}\n {% set error_if = config.get('error_if') %}\n\n {% call statement('main', fetch_result=True) -%}\n\n {{ get_test_sql(main_sql, fail_calc, warn_if, error_if, limit)}}\n\n {%- endcall %}\n\n {{ return({'relations': relations}) }}\n\n{%- endmaterialization -%}", + "meta": {}, + "name": "materialization_test_default", + "original_file_path": "macros/materializations/tests/test.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/tests/test.sql", + "resource_type": "macro", + "supported_languages": [ + "sql" + ], + "unique_id": "macro.dbt.materialization_test_default" + }, + "macro.dbt.materialization_unit_default": { + "arguments": [], + "created_at": 1733768711.9555762, + "depends_on": { + "macros": [ + "macro.dbt.get_columns_in_query", + "macro.dbt.make_temp_relation", + "macro.dbt.run_query", + "macro.dbt.get_create_table_as_sql", + "macro.dbt.get_empty_subquery_sql", + "macro.dbt.get_expected_sql", + "macro.dbt.get_unit_test_sql", + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- materialization unit, default -%}\n\n {% set relations = [] %}\n\n {% set expected_rows = config.get('expected_rows') %}\n {% set expected_sql = config.get('expected_sql') %}\n {% set tested_expected_column_names = expected_rows[0].keys() if (expected_rows | length ) > 0 else get_columns_in_query(sql) %} %}\n\n {%- set target_relation = this.incorporate(type='table') -%}\n {%- set temp_relation = make_temp_relation(target_relation)-%}\n {% do run_query(get_create_table_as_sql(True, temp_relation, get_empty_subquery_sql(sql))) %}\n {%- set columns_in_relation = adapter.get_columns_in_relation(temp_relation) -%}\n {%- set column_name_to_data_types = {} -%}\n {%- for column in columns_in_relation -%}\n {%- do column_name_to_data_types.update({column.name|lower: column.data_type}) -%}\n {%- endfor -%}\n\n {% if not expected_sql %}\n {% set expected_sql = get_expected_sql(expected_rows, column_name_to_data_types) %}\n {% endif %}\n {% set unit_test_sql = get_unit_test_sql(sql, expected_sql, tested_expected_column_names) %}\n\n {% call statement('main', fetch_result=True) -%}\n\n {{ unit_test_sql }}\n\n {%- endcall %}\n\n {% do adapter.drop_relation(temp_relation) %}\n\n {{ return({'relations': relations}) }}\n\n{%- endmaterialization -%}", + "meta": {}, + "name": "materialization_unit_default", + "original_file_path": "macros/materializations/tests/unit.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/tests/unit.sql", + "resource_type": "macro", + "supported_languages": [ + "sql" + ], + "unique_id": "macro.dbt.materialization_unit_default" + }, + "macro.dbt.materialization_view_default": { + "arguments": [], + "created_at": 1733768711.9657469, + "depends_on": { + "macros": [ + "macro.dbt.load_cached_relation", + "macro.dbt.make_intermediate_relation", + "macro.dbt.make_backup_relation", + "macro.dbt.run_hooks", + "macro.dbt.drop_relation_if_exists", + "macro.dbt.statement", + "macro.dbt.get_create_view_as_sql", + "macro.dbt.should_revoke", + "macro.dbt.apply_grants", + "macro.dbt.persist_docs" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- materialization view, default -%}\n\n {%- set existing_relation = load_cached_relation(this) -%}\n {%- set target_relation = this.incorporate(type='view') -%}\n {%- set intermediate_relation = make_intermediate_relation(target_relation) -%}\n\n -- the intermediate_relation should not already exist in the database; get_relation\n -- will return None in that case. Otherwise, we get a relation that we can drop\n -- later, before we try to use this name for the current operation\n {%- set preexisting_intermediate_relation = load_cached_relation(intermediate_relation) -%}\n /*\n This relation (probably) doesn't exist yet. If it does exist, it's a leftover from\n a previous run, and we're going to try to drop it immediately. At the end of this\n materialization, we're going to rename the \"existing_relation\" to this identifier,\n and then we're going to drop it. In order to make sure we run the correct one of:\n - drop view ...\n - drop table ...\n\n We need to set the type of this relation to be the type of the existing_relation, if it exists,\n or else \"view\" as a sane default if it does not. Note that if the existing_relation does not\n exist, then there is nothing to move out of the way and subsequentally drop. In that case,\n this relation will be effectively unused.\n */\n {%- set backup_relation_type = 'view' if existing_relation is none else existing_relation.type -%}\n {%- set backup_relation = make_backup_relation(target_relation, backup_relation_type) -%}\n -- as above, the backup_relation should not already exist\n {%- set preexisting_backup_relation = load_cached_relation(backup_relation) -%}\n -- grab current tables grants config for comparision later on\n {% set grant_config = config.get('grants') %}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n -- drop the temp relations if they exist already in the database\n {{ drop_relation_if_exists(preexisting_intermediate_relation) }}\n {{ drop_relation_if_exists(preexisting_backup_relation) }}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n -- build model\n {% call statement('main') -%}\n {{ get_create_view_as_sql(intermediate_relation, sql) }}\n {%- endcall %}\n\n -- cleanup\n -- move the existing view out of the way\n {% if existing_relation is not none %}\n /* Do the equivalent of rename_if_exists. 'existing_relation' could have been dropped\n since the variable was first set. */\n {% set existing_relation = load_cached_relation(existing_relation) %}\n {% if existing_relation is not none %}\n {{ adapter.rename_relation(existing_relation, backup_relation) }}\n {% endif %}\n {% endif %}\n {{ adapter.rename_relation(intermediate_relation, target_relation) }}\n\n {% set should_revoke = should_revoke(existing_relation, full_refresh_mode=True) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {% do persist_docs(target_relation, model) %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n {{ adapter.commit() }}\n\n {{ drop_relation_if_exists(backup_relation) }}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{%- endmaterialization -%}", + "meta": {}, + "name": "materialization_view_default", + "original_file_path": "macros/materializations/models/view.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/view.sql", + "resource_type": "macro", + "supported_languages": [ + "sql" + ], + "unique_id": "macro.dbt.materialization_view_default" + }, + "macro.dbt.materialized_view_execute_build_sql": { + "arguments": [], + "created_at": 1733768711.962951, + "depends_on": { + "macros": [ + "macro.dbt.run_hooks", + "macro.dbt.statement", + "macro.dbt.should_revoke", + "macro.dbt.apply_grants", + "macro.dbt.persist_docs" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro materialized_view_execute_build_sql(build_sql, existing_relation, target_relation, post_hooks) %}\n\n -- `BEGIN` happens here:\n {{ run_hooks(pre_hooks, inside_transaction=True) }}\n\n {% set grant_config = config.get('grants') %}\n\n {% call statement(name=\"main\") %}\n {{ build_sql }}\n {% endcall %}\n\n {% set should_revoke = should_revoke(existing_relation, full_refresh_mode=True) %}\n {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}\n\n {% do persist_docs(target_relation, model) %}\n\n {{ run_hooks(post_hooks, inside_transaction=True) }}\n\n {{ adapter.commit() }}\n\n{% endmacro %}", + "meta": {}, + "name": "materialized_view_execute_build_sql", + "original_file_path": "macros/materializations/models/materialized_view.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/materialized_view.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.materialized_view_execute_build_sql" + }, + "macro.dbt.materialized_view_execute_no_op": { + "arguments": [], + "created_at": 1733768711.962357, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro materialized_view_execute_no_op(target_relation) %}\n {% do store_raw_result(\n name=\"main\",\n message=\"skip \" ~ target_relation,\n code=\"skip\",\n rows_affected=\"-1\"\n ) %}\n{% endmacro %}", + "meta": {}, + "name": "materialized_view_execute_no_op", + "original_file_path": "macros/materializations/models/materialized_view.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/materialized_view.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.materialized_view_execute_no_op" + }, + "macro.dbt.materialized_view_get_build_sql": { + "arguments": [], + "created_at": 1733768711.962139, + "depends_on": { + "macros": [ + "macro.dbt.should_full_refresh", + "macro.dbt.get_create_materialized_view_as_sql", + "macro.dbt.get_replace_sql", + "macro.dbt.get_materialized_view_configuration_changes", + "macro.dbt.refresh_materialized_view", + "macro.dbt.get_alter_materialized_view_as_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro materialized_view_get_build_sql(existing_relation, target_relation, backup_relation, intermediate_relation) %}\n\n {% set full_refresh_mode = should_full_refresh() %}\n\n -- determine the scenario we're in: create, full_refresh, alter, refresh data\n {% if existing_relation is none %}\n {% set build_sql = get_create_materialized_view_as_sql(target_relation, sql) %}\n {% elif full_refresh_mode or not existing_relation.is_materialized_view %}\n {% set build_sql = get_replace_sql(existing_relation, target_relation, sql) %}\n {% else %}\n\n -- get config options\n {% set on_configuration_change = config.get('on_configuration_change') %}\n {% set configuration_changes = get_materialized_view_configuration_changes(existing_relation, config) %}\n\n {% if configuration_changes is none %}\n {% set build_sql = refresh_materialized_view(target_relation) %}\n\n {% elif on_configuration_change == 'apply' %}\n {% set build_sql = get_alter_materialized_view_as_sql(target_relation, configuration_changes, sql, existing_relation, backup_relation, intermediate_relation) %}\n {% elif on_configuration_change == 'continue' %}\n {% set build_sql = '' %}\n {{ exceptions.warn(\"Configuration changes were identified and `on_configuration_change` was set to `continue` for `\" ~ target_relation.render() ~ \"`\") }}\n {% elif on_configuration_change == 'fail' %}\n {{ exceptions.raise_fail_fast_error(\"Configuration changes were identified and `on_configuration_change` was set to `fail` for `\" ~ target_relation.render() ~ \"`\") }}\n\n {% else %}\n -- this only happens if the user provides a value other than `apply`, 'skip', 'fail'\n {{ exceptions.raise_compiler_error(\"Unexpected configuration scenario\") }}\n\n {% endif %}\n\n {% endif %}\n\n {% do return(build_sql) %}\n\n{% endmacro %}", + "meta": {}, + "name": "materialized_view_get_build_sql", + "original_file_path": "macros/materializations/models/materialized_view.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/materialized_view.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.materialized_view_get_build_sql" + }, + "macro.dbt.materialized_view_setup": { + "arguments": [], + "created_at": 1733768711.960649, + "depends_on": { + "macros": [ + "macro.dbt.load_cached_relation", + "macro.dbt.drop_relation_if_exists", + "macro.dbt.run_hooks" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro materialized_view_setup(backup_relation, intermediate_relation, pre_hooks) %}\n\n -- backup_relation and intermediate_relation should not already exist in the database\n -- it's possible these exist because of a previous run that exited unexpectedly\n {% set preexisting_backup_relation = load_cached_relation(backup_relation) %}\n {% set preexisting_intermediate_relation = load_cached_relation(intermediate_relation) %}\n\n -- drop the temp relations if they exist already in the database\n {{ drop_relation_if_exists(preexisting_backup_relation) }}\n {{ drop_relation_if_exists(preexisting_intermediate_relation) }}\n\n {{ run_hooks(pre_hooks, inside_transaction=False) }}\n\n{% endmacro %}", + "meta": {}, + "name": "materialized_view_setup", + "original_file_path": "macros/materializations/models/materialized_view.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/materialized_view.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.materialized_view_setup" + }, + "macro.dbt.materialized_view_teardown": { + "arguments": [], + "created_at": 1733768711.960883, + "depends_on": { + "macros": [ + "macro.dbt.drop_relation_if_exists", + "macro.dbt.run_hooks" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro materialized_view_teardown(backup_relation, intermediate_relation, post_hooks) %}\n\n -- drop the temp relations if they exist to leave the database clean for the next run\n {{ drop_relation_if_exists(backup_relation) }}\n {{ drop_relation_if_exists(intermediate_relation) }}\n\n {{ run_hooks(post_hooks, inside_transaction=False) }}\n\n{% endmacro %}", + "meta": {}, + "name": "materialized_view_teardown", + "original_file_path": "macros/materializations/models/materialized_view.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/materialized_view.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.materialized_view_teardown" + }, + "macro.dbt.noop_statement": { + "arguments": [], + "created_at": 1733768712.078182, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro noop_statement(name=None, message=None, code=None, rows_affected=None, res=None) -%}\n {%- set sql = caller() -%}\n\n {%- if name == 'main' -%}\n {{ log('Writing runtime SQL for node \"{}\"'.format(model['unique_id'])) }}\n {{ write(sql) }}\n {%- endif -%}\n\n {%- if name is not none -%}\n {{ store_raw_result(name, message=message, code=code, rows_affected=rows_affected, agate_table=res) }}\n {%- endif -%}\n\n{%- endmacro %}", + "meta": {}, + "name": "noop_statement", + "original_file_path": "macros/etc/statement.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/etc/statement.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.noop_statement" + }, + "macro.dbt.partition_range": { + "arguments": [], + "created_at": 1733768712.0820658, + "depends_on": { + "macros": [ + "macro.dbt.dates_in_range" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro partition_range(raw_partition_date, date_fmt='%Y%m%d') %}\n {% set partition_range = (raw_partition_date | string).split(\",\") %}\n\n {% if (partition_range | length) == 1 %}\n {% set start_date = partition_range[0] %}\n {% set end_date = none %}\n {% elif (partition_range | length) == 2 %}\n {% set start_date = partition_range[0] %}\n {% set end_date = partition_range[1] %}\n {% else %}\n {{ exceptions.raise_compiler_error(\"Invalid partition time. Expected format: {Start Date}[,{End Date}]. Got: \" ~ raw_partition_date) }}\n {% endif %}\n\n {{ return(dates_in_range(start_date, end_date, in_fmt=date_fmt)) }}\n{% endmacro %}", + "meta": {}, + "name": "partition_range", + "original_file_path": "macros/etc/datetime.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/etc/datetime.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.partition_range" + }, + "macro.dbt.persist_docs": { + "arguments": [], + "created_at": 1733768712.1206532, + "depends_on": { + "macros": [ + "macro.dbt.default__persist_docs" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro persist_docs(relation, model, for_relation=true, for_columns=true) -%}\n {{ return(adapter.dispatch('persist_docs', 'dbt')(relation, model, for_relation, for_columns)) }}\n{% endmacro %}", + "meta": {}, + "name": "persist_docs", + "original_file_path": "macros/adapters/persist_docs.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/adapters/persist_docs.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.persist_docs" + }, + "macro.dbt.position": { + "arguments": [], + "created_at": 1733768712.093984, + "depends_on": { + "macros": [ + "macro.dbt.default__position" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro position(substring_text, string_text) -%}\n {{ return(adapter.dispatch('position', 'dbt') (substring_text, string_text)) }}\n{% endmacro %}", + "meta": {}, + "name": "position", + "original_file_path": "macros/utils/position.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/position.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.position" + }, + "macro.dbt.post_snapshot": { + "arguments": [], + "created_at": 1733768711.9389849, + "depends_on": { + "macros": [ + "macro.dbt.default__post_snapshot" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro post_snapshot(staging_relation) %}\n {{ adapter.dispatch('post_snapshot', 'dbt')(staging_relation) }}\n{% endmacro %}", + "meta": {}, + "name": "post_snapshot", + "original_file_path": "macros/materializations/snapshots/helpers.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/helpers.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.post_snapshot" + }, + "macro.dbt.process_schema_changes": { + "arguments": [], + "created_at": 1733768712.000155, + "depends_on": { + "macros": [ + "macro.dbt.check_for_schema_changes", + "macro.dbt.sync_column_schemas" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro process_schema_changes(on_schema_change, source_relation, target_relation) %}\n\n {% if on_schema_change == 'ignore' %}\n\n {{ return({}) }}\n\n {% else %}\n\n {% set schema_changes_dict = check_for_schema_changes(source_relation, target_relation) %}\n\n {% if schema_changes_dict['schema_changed'] %}\n\n {% if on_schema_change == 'fail' %}\n\n {% set fail_msg %}\n The source and target schemas on this incremental model are out of sync!\n They can be reconciled in several ways:\n - set the `on_schema_change` config to either append_new_columns or sync_all_columns, depending on your situation.\n - Re-run the incremental model with `full_refresh: True` to update the target schema.\n - update the schema manually and re-run the process.\n\n Additional troubleshooting context:\n Source columns not in target: {{ schema_changes_dict['source_not_in_target'] }}\n Target columns not in source: {{ schema_changes_dict['target_not_in_source'] }}\n New column types: {{ schema_changes_dict['new_target_types'] }}\n {% endset %}\n\n {% do exceptions.raise_compiler_error(fail_msg) %}\n\n {# -- unless we ignore, run the sync operation per the config #}\n {% else %}\n\n {% do sync_column_schemas(on_schema_change, target_relation, schema_changes_dict) %}\n\n {% endif %}\n\n {% endif %}\n\n {{ return(schema_changes_dict['source_columns']) }}\n\n {% endif %}\n\n{% endmacro %}", + "meta": {}, + "name": "process_schema_changes", + "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/incremental/on_schema_change.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.process_schema_changes" + }, + "macro.dbt.py_current_timestring": { + "arguments": [], + "created_at": 1733768712.082279, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro py_current_timestring() %}\n {% set dt = modules.datetime.datetime.now() %}\n {% do return(dt.strftime(\"%Y%m%d%H%M%S%f\")) %}\n{% endmacro %}", + "meta": {}, + "name": "py_current_timestring", + "original_file_path": "macros/etc/datetime.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/etc/datetime.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.py_current_timestring" + }, + "macro.dbt.py_script_comment": { + "arguments": [], + "created_at": 1733768712.1440609, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%macro py_script_comment()%}\n{%endmacro%}", + "meta": {}, + "name": "py_script_comment", + "original_file_path": "macros/python_model/python.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/python_model/python.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.py_script_comment" + }, + "macro.dbt.py_script_postfix": { + "arguments": [], + "created_at": 1733768712.143991, + "depends_on": { + "macros": [ + "macro.dbt.build_ref_function", + "macro.dbt.build_source_function", + "macro.dbt.build_config_dict", + "macro.dbt.resolve_model_name", + "macro.dbt.is_incremental", + "macro.dbt.py_script_comment" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro py_script_postfix(model) %}\n# This part is user provided model code\n# you will need to copy the next section to run the code\n# COMMAND ----------\n# this part is dbt logic for get ref work, do not modify\n\n{{ build_ref_function(model ) }}\n{{ build_source_function(model ) }}\n{{ build_config_dict(model) }}\n\nclass config:\n def __init__(self, *args, **kwargs):\n pass\n\n @staticmethod\n def get(key, default=None):\n return config_dict.get(key, default)\n\nclass this:\n \"\"\"dbt.this() or dbt.this.identifier\"\"\"\n database = \"{{ this.database }}\"\n schema = \"{{ this.schema }}\"\n identifier = \"{{ this.identifier }}\"\n {% set this_relation_name = resolve_model_name(this) %}\n def __repr__(self):\n return '{{ this_relation_name }}'\n\n\nclass dbtObj:\n def __init__(self, load_df_function) -> None:\n self.source = lambda *args: source(*args, dbt_load_df_function=load_df_function)\n self.ref = lambda *args, **kwargs: ref(*args, **kwargs, dbt_load_df_function=load_df_function)\n self.config = config\n self.this = this()\n self.is_incremental = {{ is_incremental() }}\n\n# COMMAND ----------\n{{py_script_comment()}}\n{% endmacro %}", + "meta": {}, + "name": "py_script_postfix", + "original_file_path": "macros/python_model/python.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/python_model/python.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.py_script_postfix" + }, + "macro.dbt.refresh_materialized_view": { + "arguments": [], + "created_at": 1733768712.060362, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__refresh_materialized_view" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro refresh_materialized_view(relation) %}\n {{- log('Applying REFRESH to: ' ~ relation) -}}\n {{- adapter.dispatch('refresh_materialized_view', 'dbt')(relation) -}}\n{% endmacro %}", + "meta": {}, + "name": "refresh_materialized_view", + "original_file_path": "macros/relations/materialized_view/refresh.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/relations/materialized_view/refresh.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.refresh_materialized_view" + }, + "macro.dbt.rename_relation": { + "arguments": [], + "created_at": 1733768712.056898, + "depends_on": { + "macros": [ + "macro.dbt.default__rename_relation" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro rename_relation(from_relation, to_relation) -%}\n {{ return(adapter.dispatch('rename_relation', 'dbt')(from_relation, to_relation)) }}\n{% endmacro %}", + "meta": {}, + "name": "rename_relation", + "original_file_path": "macros/relations/rename.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/relations/rename.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.rename_relation" + }, + "macro.dbt.replace": { + "arguments": [], + "created_at": 1733768712.0852401, + "depends_on": { + "macros": [ + "macro.dbt.default__replace" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro replace(field, old_chars, new_chars) -%}\n {{ return(adapter.dispatch('replace', 'dbt') (field, old_chars, new_chars)) }}\n{% endmacro %}", + "meta": {}, + "name": "replace", + "original_file_path": "macros/utils/replace.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/replace.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.replace" + }, + "macro.dbt.reset_csv_table": { + "arguments": [], + "created_at": 1733768712.044626, + "depends_on": { + "macros": [ + "macro.dbt.default__reset_csv_table" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro reset_csv_table(model, full_refresh, old_relation, agate_table) -%}\n {{ adapter.dispatch('reset_csv_table', 'dbt')(model, full_refresh, old_relation, agate_table) }}\n{%- endmacro %}", + "meta": {}, + "name": "reset_csv_table", + "original_file_path": "macros/materializations/seeds/helpers.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/seeds/helpers.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.reset_csv_table" + }, + "macro.dbt.resolve_model_name": { + "arguments": [], + "created_at": 1733768712.141689, + "depends_on": { + "macros": [ + "macro.dbt.default__resolve_model_name" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro resolve_model_name(input_model_name) %}\n {{ return(adapter.dispatch('resolve_model_name', 'dbt')(input_model_name)) }}\n{% endmacro %}", + "meta": {}, + "name": "resolve_model_name", + "original_file_path": "macros/python_model/python.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/python_model/python.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.resolve_model_name" + }, + "macro.dbt.right": { + "arguments": [], + "created_at": 1733768712.089935, + "depends_on": { + "macros": [ + "macro.dbt.default__right" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro right(string_text, length_expression) -%}\n {{ return(adapter.dispatch('right', 'dbt') (string_text, length_expression)) }}\n{% endmacro %}", + "meta": {}, + "name": "right", + "original_file_path": "macros/utils/right.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/right.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.right" + }, + "macro.dbt.run_hooks": { + "arguments": [], + "created_at": 1733768711.9217432, + "depends_on": { + "macros": [ + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro run_hooks(hooks, inside_transaction=True) %}\n {% for hook in hooks | selectattr('transaction', 'equalto', inside_transaction) %}\n {% if not inside_transaction and loop.first %}\n {% call statement(auto_begin=inside_transaction) %}\n commit;\n {% endcall %}\n {% endif %}\n {% set rendered = render(hook.get('sql')) | trim %}\n {% if (rendered | length) > 0 %}\n {% call statement(auto_begin=inside_transaction) %}\n {{ rendered }}\n {% endcall %}\n {% endif %}\n {% endfor %}\n{% endmacro %}", + "meta": {}, + "name": "run_hooks", + "original_file_path": "macros/materializations/hooks.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/hooks.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.run_hooks" + }, + "macro.dbt.run_query": { + "arguments": [], + "created_at": 1733768712.078449, + "depends_on": { + "macros": [ + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro run_query(sql) %}\n {% call statement(\"run_query_statement\", fetch_result=true, auto_begin=false) %}\n {{ sql }}\n {% endcall %}\n\n {% do return(load_result(\"run_query_statement\").table) %}\n{% endmacro %}", + "meta": {}, + "name": "run_query", + "original_file_path": "macros/etc/statement.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/etc/statement.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.run_query" + }, + "macro.dbt.safe_cast": { + "arguments": [], + "created_at": 1733768712.091973, + "depends_on": { + "macros": [ + "macro.dbt.default__safe_cast" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro safe_cast(field, type) %}\n {{ return(adapter.dispatch('safe_cast', 'dbt') (field, type)) }}\n{% endmacro %}", + "meta": {}, + "name": "safe_cast", + "original_file_path": "macros/utils/safe_cast.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/safe_cast.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.safe_cast" + }, + "macro.dbt.set_sql_header": { + "arguments": [], + "created_at": 1733768711.923061, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro set_sql_header(config) -%}\n {{ config.set('sql_header', caller()) }}\n{%- endmacro %}", + "meta": {}, + "name": "set_sql_header", + "original_file_path": "macros/materializations/configs.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/configs.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.set_sql_header" + }, + "macro.dbt.should_full_refresh": { + "arguments": [], + "created_at": 1733768711.9233458, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro should_full_refresh() %}\n {% set config_full_refresh = config.get('full_refresh') %}\n {% if config_full_refresh is none %}\n {% set config_full_refresh = flags.FULL_REFRESH %}\n {% endif %}\n {% do return(config_full_refresh) %}\n{% endmacro %}", + "meta": {}, + "name": "should_full_refresh", + "original_file_path": "macros/materializations/configs.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/configs.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.should_full_refresh" + }, + "macro.dbt.should_revoke": { + "arguments": [], + "created_at": 1733768712.114482, + "depends_on": { + "macros": [ + "macro.dbt.copy_grants" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro should_revoke(existing_relation, full_refresh_mode=True) %}\n\n {% if not existing_relation %}\n {#-- The table doesn't already exist, so no grants to copy over --#}\n {{ return(False) }}\n {% elif full_refresh_mode %}\n {#-- The object is being REPLACED -- whether grants are copied over depends on the value of user config --#}\n {{ return(copy_grants()) }}\n {% else %}\n {#-- The table is being merged/upserted/inserted -- grants will be carried over --#}\n {{ return(True) }}\n {% endif %}\n\n{% endmacro %}", + "meta": {}, + "name": "should_revoke", + "original_file_path": "macros/adapters/apply_grants.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/adapters/apply_grants.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.should_revoke" + }, + "macro.dbt.should_store_failures": { + "arguments": [], + "created_at": 1733768711.923622, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro should_store_failures() %}\n {% set config_store_failures = config.get('store_failures') %}\n {% if config_store_failures is none %}\n {% set config_store_failures = flags.STORE_FAILURES %}\n {% endif %}\n {% do return(config_store_failures) %}\n{% endmacro %}", + "meta": {}, + "name": "should_store_failures", + "original_file_path": "macros/materializations/configs.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/configs.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.should_store_failures" + }, + "macro.dbt.snapshot_check_all_get_existing_columns": { + "arguments": [], + "created_at": 1733768711.930589, + "depends_on": { + "macros": [ + "macro.dbt.get_columns_in_query" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro snapshot_check_all_get_existing_columns(node, target_exists, check_cols_config) -%}\n {%- if not target_exists -%}\n {#-- no table yet -> return whatever the query does --#}\n {{ return((false, query_columns)) }}\n {%- endif -%}\n\n {#-- handle any schema changes --#}\n {%- set target_relation = adapter.get_relation(database=node.database, schema=node.schema, identifier=node.alias) -%}\n\n {% if check_cols_config == 'all' %}\n {%- set query_columns = get_columns_in_query(node['compiled_code']) -%}\n\n {% elif check_cols_config is iterable and (check_cols_config | length) > 0 %}\n {#-- query for proper casing/quoting, to support comparison below --#}\n {%- set select_check_cols_from_target -%}\n {#-- N.B. The whitespace below is necessary to avoid edge case issue with comments --#}\n {#-- See: https://github.com/dbt-labs/dbt-core/issues/6781 --#}\n select {{ check_cols_config | join(', ') }} from (\n {{ node['compiled_code'] }}\n ) subq\n {%- endset -%}\n {% set query_columns = get_columns_in_query(select_check_cols_from_target) %}\n\n {% else %}\n {% do exceptions.raise_compiler_error(\"Invalid value for 'check_cols': \" ~ check_cols_config) %}\n {% endif %}\n\n {%- set existing_cols = adapter.get_columns_in_relation(target_relation) | map(attribute = 'name') | list -%}\n {%- set ns = namespace() -%} {#-- handle for-loop scoping with a namespace --#}\n {%- set ns.column_added = false -%}\n\n {%- set intersection = [] -%}\n {%- for col in query_columns -%}\n {%- if col in existing_cols -%}\n {%- do intersection.append(adapter.quote(col)) -%}\n {%- else -%}\n {% set ns.column_added = true %}\n {%- endif -%}\n {%- endfor -%}\n {{ return((ns.column_added, intersection)) }}\n{%- endmacro %}", + "meta": {}, + "name": "snapshot_check_all_get_existing_columns", + "original_file_path": "macros/materializations/snapshots/strategies.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/strategies.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.snapshot_check_all_get_existing_columns" + }, + "macro.dbt.snapshot_check_strategy": { + "arguments": [], + "created_at": 1733768711.931838, + "depends_on": { + "macros": [ + "macro.dbt.snapshot_get_time", + "macro.dbt.snapshot_check_all_get_existing_columns", + "macro.dbt.get_true_sql", + "macro.dbt.snapshot_hash_arguments" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro snapshot_check_strategy(node, snapshotted_rel, current_rel, model_config, target_exists) %}\n {# The model_config parameter is no longer used, but is passed in anyway for compatibility. #}\n {% set check_cols_config = config.get('check_cols') %}\n {% set primary_key = config.get('unique_key') %}\n {% set invalidate_hard_deletes = config.get('invalidate_hard_deletes') or false %}\n {% set updated_at = config.get('updated_at') or snapshot_get_time() %}\n\n {% set column_added = false %}\n\n {% set column_added, check_cols = snapshot_check_all_get_existing_columns(node, target_exists, check_cols_config) %}\n\n {%- set row_changed_expr -%}\n (\n {%- if column_added -%}\n {{ get_true_sql() }}\n {%- else -%}\n {%- for col in check_cols -%}\n {{ snapshotted_rel }}.{{ col }} != {{ current_rel }}.{{ col }}\n or\n (\n (({{ snapshotted_rel }}.{{ col }} is null) and not ({{ current_rel }}.{{ col }} is null))\n or\n ((not {{ snapshotted_rel }}.{{ col }} is null) and ({{ current_rel }}.{{ col }} is null))\n )\n {%- if not loop.last %} or {% endif -%}\n {%- endfor -%}\n {%- endif -%}\n )\n {%- endset %}\n\n {% set scd_id_expr = snapshot_hash_arguments([primary_key, updated_at]) %}\n\n {% do return({\n \"unique_key\": primary_key,\n \"updated_at\": updated_at,\n \"row_changed\": row_changed_expr,\n \"scd_id\": scd_id_expr,\n \"invalidate_hard_deletes\": invalidate_hard_deletes\n }) %}\n{% endmacro %}", + "meta": {}, + "name": "snapshot_check_strategy", + "original_file_path": "macros/materializations/snapshots/strategies.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/strategies.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.snapshot_check_strategy" + }, + "macro.dbt.snapshot_get_time": { + "arguments": [], + "created_at": 1733768712.1028302, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__snapshot_get_time" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro snapshot_get_time() -%}\n {{ adapter.dispatch('snapshot_get_time', 'dbt')() }}\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "snapshot_get_time", + "original_file_path": "macros/adapters/timestamps.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/adapters/timestamps.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.snapshot_get_time" + }, + "macro.dbt.snapshot_hash_arguments": { + "arguments": [], + "created_at": 1733768711.9279811, + "depends_on": { + "macros": [ + "macro.dbt.default__snapshot_hash_arguments" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro snapshot_hash_arguments(args) -%}\n {{ adapter.dispatch('snapshot_hash_arguments', 'dbt')(args) }}\n{%- endmacro %}", + "meta": {}, + "name": "snapshot_hash_arguments", + "original_file_path": "macros/materializations/snapshots/strategies.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/strategies.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.snapshot_hash_arguments" + }, + "macro.dbt.snapshot_merge_sql": { + "arguments": [], + "created_at": 1733768711.924176, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__snapshot_merge_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro snapshot_merge_sql(target, source, insert_cols) -%}\n {{ adapter.dispatch('snapshot_merge_sql', 'dbt')(target, source, insert_cols) }}\n{%- endmacro %}", + "meta": {}, + "name": "snapshot_merge_sql", + "original_file_path": "macros/materializations/snapshots/snapshot_merge.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/snapshot_merge.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.snapshot_merge_sql" + }, + "macro.dbt.snapshot_staging_table": { + "arguments": [], + "created_at": 1733768711.93952, + "depends_on": { + "macros": [ + "macro.dbt.default__snapshot_staging_table" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro snapshot_staging_table(strategy, source_sql, target_relation) -%}\n {{ adapter.dispatch('snapshot_staging_table', 'dbt')(strategy, source_sql, target_relation) }}\n{% endmacro %}", + "meta": {}, + "name": "snapshot_staging_table", + "original_file_path": "macros/materializations/snapshots/helpers.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/helpers.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.snapshot_staging_table" + }, + "macro.dbt.snapshot_string_as_time": { + "arguments": [], + "created_at": 1733768711.929135, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__snapshot_string_as_time" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro snapshot_string_as_time(timestamp) -%}\n {{ adapter.dispatch('snapshot_string_as_time', 'dbt')(timestamp) }}\n{%- endmacro %}", + "meta": {}, + "name": "snapshot_string_as_time", + "original_file_path": "macros/materializations/snapshots/strategies.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/strategies.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.snapshot_string_as_time" + }, + "macro.dbt.snapshot_timestamp_strategy": { + "arguments": [], + "created_at": 1733768711.9289758, + "depends_on": { + "macros": [ + "macro.dbt.get_snapshot_table_column_names", + "macro.dbt.snapshot_hash_arguments" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro snapshot_timestamp_strategy(node, snapshotted_rel, current_rel, model_config, target_exists) %}\n {# The model_config parameter is no longer used, but is passed in anyway for compatibility. #}\n {% set primary_key = config.get('unique_key') %}\n {% set updated_at = config.get('updated_at') %}\n {% set invalidate_hard_deletes = config.get('invalidate_hard_deletes') or false %}\n {% set columns = config.get(\"snapshot_table_column_names\") or get_snapshot_table_column_names() %}\n\n {#/*\n The snapshot relation might not have an {{ updated_at }} value if the\n snapshot strategy is changed from `check` to `timestamp`. We\n should use a dbt-created column for the comparison in the snapshot\n table instead of assuming that the user-supplied {{ updated_at }}\n will be present in the historical data.\n\n See https://github.com/dbt-labs/dbt-core/issues/2350\n */ #}\n {% set row_changed_expr -%}\n ({{ snapshotted_rel }}.{{ columns.dbt_valid_from }} < {{ current_rel }}.{{ updated_at }})\n {%- endset %}\n\n {% set scd_id_expr = snapshot_hash_arguments([primary_key, updated_at]) %}\n\n {% do return({\n \"unique_key\": primary_key,\n \"updated_at\": updated_at,\n \"row_changed\": row_changed_expr,\n \"scd_id\": scd_id_expr,\n \"invalidate_hard_deletes\": invalidate_hard_deletes\n }) %}\n{% endmacro %}", + "meta": {}, + "name": "snapshot_timestamp_strategy", + "original_file_path": "macros/materializations/snapshots/strategies.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/strategies.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.snapshot_timestamp_strategy" + }, + "macro.dbt.split_part": { + "arguments": [], + "created_at": 1733768712.099272, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__split_part" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro split_part(string_text, delimiter_text, part_number) %}\n {{ return(adapter.dispatch('split_part', 'dbt') (string_text, delimiter_text, part_number)) }}\n{% endmacro %}", + "meta": {}, + "name": "split_part", + "original_file_path": "macros/utils/split_part.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/split_part.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.split_part" + }, + "macro.dbt.sql_convert_columns_in_relation": { + "arguments": [], + "created_at": 1733768712.130684, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro sql_convert_columns_in_relation(table) -%}\n {% set columns = [] %}\n {% for row in table %}\n {% do columns.append(api.Column(*row)) %}\n {% endfor %}\n {{ return(columns) }}\n{% endmacro %}", + "meta": {}, + "name": "sql_convert_columns_in_relation", + "original_file_path": "macros/adapters/columns.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/adapters/columns.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.sql_convert_columns_in_relation" + }, + "macro.dbt.statement": { + "arguments": [], + "created_at": 1733768712.077638, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n{%- macro statement(name=None, fetch_result=False, auto_begin=True, language='sql') -%}\n {%- if execute: -%}\n {%- set compiled_code = caller() -%}\n\n {%- if name == 'main' -%}\n {{ log('Writing runtime {} for node \"{}\"'.format(language, model['unique_id'])) }}\n {{ write(compiled_code) }}\n {%- endif -%}\n {%- if language == 'sql'-%}\n {%- set res, table = adapter.execute(compiled_code, auto_begin=auto_begin, fetch=fetch_result) -%}\n {%- elif language == 'python' -%}\n {%- set res = submit_python_job(model, compiled_code) -%}\n {#-- TODO: What should table be for python models? --#}\n {%- set table = None -%}\n {%- else -%}\n {% do exceptions.raise_compiler_error(\"statement macro didn't get supported language\") %}\n {%- endif -%}\n\n {%- if name is not none -%}\n {{ store_result(name, response=res, agate_table=table) }}\n {%- endif -%}\n\n {%- endif -%}\n{%- endmacro %}", + "meta": {}, + "name": "statement", + "original_file_path": "macros/etc/statement.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/etc/statement.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.statement" + }, + "macro.dbt.strategy_dispatch": { + "arguments": [], + "created_at": 1733768711.92782, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro strategy_dispatch(name) -%}\n{% set original_name = name %}\n {% if '.' in name %}\n {% set package_name, name = name.split(\".\", 1) %}\n {% else %}\n {% set package_name = none %}\n {% endif %}\n\n {% if package_name is none %}\n {% set package_context = context %}\n {% elif package_name in context %}\n {% set package_context = context[package_name] %}\n {% else %}\n {% set error_msg %}\n Could not find package '{{package_name}}', called with '{{original_name}}'\n {% endset %}\n {{ exceptions.raise_compiler_error(error_msg | trim) }}\n {% endif %}\n\n {%- set search_name = 'snapshot_' ~ name ~ '_strategy' -%}\n\n {% if search_name not in package_context %}\n {% set error_msg %}\n The specified strategy macro '{{name}}' was not found in package '{{ package_name }}'\n {% endset %}\n {{ exceptions.raise_compiler_error(error_msg | trim) }}\n {% endif %}\n {{ return(package_context[search_name]) }}\n{%- endmacro %}", + "meta": {}, + "name": "strategy_dispatch", + "original_file_path": "macros/materializations/snapshots/strategies.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/snapshots/strategies.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.strategy_dispatch" + }, + "macro.dbt.string_literal": { + "arguments": [], + "created_at": 1733768712.094341, + "depends_on": { + "macros": [ + "macro.dbt.default__string_literal" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- macro string_literal(value) -%}\n {{ return(adapter.dispatch('string_literal', 'dbt') (value)) }}\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "string_literal", + "original_file_path": "macros/utils/literal.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/literal.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.string_literal" + }, + "macro.dbt.support_multiple_grantees_per_dcl_statement": { + "arguments": [], + "created_at": 1733768712.114064, + "depends_on": { + "macros": [ + "macro.dbt.default__support_multiple_grantees_per_dcl_statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro support_multiple_grantees_per_dcl_statement() %}\n {{ return(adapter.dispatch('support_multiple_grantees_per_dcl_statement', 'dbt')()) }}\n{% endmacro %}", + "meta": {}, + "name": "support_multiple_grantees_per_dcl_statement", + "original_file_path": "macros/adapters/apply_grants.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/adapters/apply_grants.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.support_multiple_grantees_per_dcl_statement" + }, + "macro.dbt.sync_column_schemas": { + "arguments": [], + "created_at": 1733768711.9993448, + "depends_on": { + "macros": [ + "macro.dbt.alter_relation_add_remove_columns", + "macro.dbt.alter_column_type" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro sync_column_schemas(on_schema_change, target_relation, schema_changes_dict) %}\n\n {%- set add_to_target_arr = schema_changes_dict['source_not_in_target'] -%}\n\n {%- if on_schema_change == 'append_new_columns'-%}\n {%- if add_to_target_arr | length > 0 -%}\n {%- do alter_relation_add_remove_columns(target_relation, add_to_target_arr, none) -%}\n {%- endif -%}\n\n {% elif on_schema_change == 'sync_all_columns' %}\n {%- set remove_from_target_arr = schema_changes_dict['target_not_in_source'] -%}\n {%- set new_target_types = schema_changes_dict['new_target_types'] -%}\n\n {% if add_to_target_arr | length > 0 or remove_from_target_arr | length > 0 %}\n {%- do alter_relation_add_remove_columns(target_relation, add_to_target_arr, remove_from_target_arr) -%}\n {% endif %}\n\n {% if new_target_types != [] %}\n {% for ntt in new_target_types %}\n {% set column_name = ntt['column_name'] %}\n {% set new_type = ntt['new_type'] %}\n {% do alter_column_type(target_relation, column_name, new_type) %}\n {% endfor %}\n {% endif %}\n\n {% endif %}\n\n {% set schema_change_message %}\n In {{ target_relation }}:\n Schema change approach: {{ on_schema_change }}\n Columns added: {{ add_to_target_arr }}\n Columns removed: {{ remove_from_target_arr }}\n Data types changed: {{ new_target_types }}\n {% endset %}\n\n {% do log(schema_change_message) %}\n\n{% endmacro %}", + "meta": {}, + "name": "sync_column_schemas", + "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/materializations/models/incremental/on_schema_change.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.sync_column_schemas" + }, + "macro.dbt.table_columns_and_constraints": { + "arguments": [], + "created_at": 1733768712.0642922, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro table_columns_and_constraints() %}\n {# loop through user_provided_columns to create DDL with data types and constraints #}\n {%- set raw_column_constraints = adapter.render_raw_columns_constraints(raw_columns=model['columns']) -%}\n {%- set raw_model_constraints = adapter.render_raw_model_constraints(raw_constraints=model['constraints']) -%}\n (\n {% for c in raw_column_constraints -%}\n {{ c }}{{ \",\" if not loop.last or raw_model_constraints }}\n {% endfor %}\n {% for c in raw_model_constraints -%}\n {{ c }}{{ \",\" if not loop.last }}\n {% endfor -%}\n )\n{% endmacro %}", + "meta": {}, + "name": "table_columns_and_constraints", + "original_file_path": "macros/relations/column/columns_spec_ddl.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/relations/column/columns_spec_ddl.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.table_columns_and_constraints" + }, + "macro.dbt.test_accepted_values": { + "arguments": [], + "created_at": 1733768712.145065, + "depends_on": { + "macros": [ + "macro.dbt.default__test_accepted_values" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test accepted_values(model, column_name, values, quote=True) %}\n {% set macro = adapter.dispatch('test_accepted_values', 'dbt') %}\n {{ macro(model, column_name, values, quote) }}\n{% endtest %}", + "meta": {}, + "name": "test_accepted_values", + "original_file_path": "tests/generic/builtin.sql", + "package_name": "dbt", + "patch_path": null, + "path": "tests/generic/builtin.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.test_accepted_values" + }, + "macro.dbt.test_not_null": { + "arguments": [], + "created_at": 1733768712.144783, + "depends_on": { + "macros": [ + "macro.dbt.default__test_not_null" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test not_null(model, column_name) %}\n {% set macro = adapter.dispatch('test_not_null', 'dbt') %}\n {{ macro(model, column_name) }}\n{% endtest %}", + "meta": {}, + "name": "test_not_null", + "original_file_path": "tests/generic/builtin.sql", + "package_name": "dbt", + "patch_path": null, + "path": "tests/generic/builtin.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.test_not_null" + }, + "macro.dbt.test_relationships": { + "arguments": [], + "created_at": 1733768712.1453419, + "depends_on": { + "macros": [ + "macro.dbt.default__test_relationships" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test relationships(model, column_name, to, field) %}\n {% set macro = adapter.dispatch('test_relationships', 'dbt') %}\n {{ macro(model, column_name, to, field) }}\n{% endtest %}", + "meta": {}, + "name": "test_relationships", + "original_file_path": "tests/generic/builtin.sql", + "package_name": "dbt", + "patch_path": null, + "path": "tests/generic/builtin.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.test_relationships" + }, + "macro.dbt.test_unique": { + "arguments": [], + "created_at": 1733768712.144553, + "depends_on": { + "macros": [ + "macro.dbt.default__test_unique" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test unique(model, column_name) %}\n {% set macro = adapter.dispatch('test_unique', 'dbt') %}\n {{ macro(model, column_name) }}\n{% endtest %}", + "meta": {}, + "name": "test_unique", + "original_file_path": "tests/generic/builtin.sql", + "package_name": "dbt", + "patch_path": null, + "path": "tests/generic/builtin.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.test_unique" + }, + "macro.dbt.truncate_relation": { + "arguments": [], + "created_at": 1733768712.109659, + "depends_on": { + "macros": [ + "macro.dbt.default__truncate_relation" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro truncate_relation(relation) -%}\n {{ return(adapter.dispatch('truncate_relation', 'dbt')(relation)) }}\n{% endmacro %}", + "meta": {}, + "name": "truncate_relation", + "original_file_path": "macros/adapters/relation.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/adapters/relation.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.truncate_relation" + }, + "macro.dbt.type_bigint": { + "arguments": [], + "created_at": 1733768712.096499, + "depends_on": { + "macros": [ + "macro.dbt.default__type_bigint" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro type_bigint() -%}\n {{ return(adapter.dispatch('type_bigint', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "type_bigint", + "original_file_path": "macros/utils/data_types.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/data_types.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.type_bigint" + }, + "macro.dbt.type_boolean": { + "arguments": [], + "created_at": 1733768712.097076, + "depends_on": { + "macros": [ + "macro.dbt.default__type_boolean" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro type_boolean() -%}\n {{ return(adapter.dispatch('type_boolean', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "type_boolean", + "original_file_path": "macros/utils/data_types.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/data_types.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.type_boolean" + }, + "macro.dbt.type_float": { + "arguments": [], + "created_at": 1733768712.095885, + "depends_on": { + "macros": [ + "macro.dbt.default__type_float" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro type_float() -%}\n {{ return(adapter.dispatch('type_float', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "type_float", + "original_file_path": "macros/utils/data_types.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/data_types.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.type_float" + }, + "macro.dbt.type_int": { + "arguments": [], + "created_at": 1733768712.096789, + "depends_on": { + "macros": [ + "macro.dbt.default__type_int" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro type_int() -%}\n {{ return(adapter.dispatch('type_int', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "type_int", + "original_file_path": "macros/utils/data_types.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/data_types.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.type_int" + }, + "macro.dbt.type_numeric": { + "arguments": [], + "created_at": 1733768712.0961752, + "depends_on": { + "macros": [ + "macro.dbt.default__type_numeric" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro type_numeric() -%}\n {{ return(adapter.dispatch('type_numeric', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "type_numeric", + "original_file_path": "macros/utils/data_types.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/data_types.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.type_numeric" + }, + "macro.dbt.type_string": { + "arguments": [], + "created_at": 1733768712.095295, + "depends_on": { + "macros": [ + "macro.dbt.default__type_string" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro type_string() -%}\n {{ return(adapter.dispatch('type_string', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "type_string", + "original_file_path": "macros/utils/data_types.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/data_types.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.type_string" + }, + "macro.dbt.type_timestamp": { + "arguments": [], + "created_at": 1733768712.095593, + "depends_on": { + "macros": [ + "macro.dbt.default__type_timestamp" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro type_timestamp() -%}\n {{ return(adapter.dispatch('type_timestamp', 'dbt')()) }}\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "type_timestamp", + "original_file_path": "macros/utils/data_types.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/utils/data_types.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.type_timestamp" + }, + "macro.dbt.validate_fixture_rows": { + "arguments": [], + "created_at": 1733768712.1400268, + "depends_on": { + "macros": [ + "macro.dbt.default__validate_fixture_rows" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- macro validate_fixture_rows(rows, row_number) -%}\n {{ return(adapter.dispatch('validate_fixture_rows', 'dbt')(rows, row_number)) }}\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "validate_fixture_rows", + "original_file_path": "macros/unit_test_sql/get_fixture_sql.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/unit_test_sql/get_fixture_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.validate_fixture_rows" + }, + "macro.dbt.validate_sql": { + "arguments": [], + "created_at": 1733768712.1119502, + "depends_on": { + "macros": [ + "macro.dbt.default__validate_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro validate_sql(sql) -%}\n {{ return(adapter.dispatch('validate_sql', 'dbt')(sql)) }}\n{% endmacro %}", + "meta": {}, + "name": "validate_sql", + "original_file_path": "macros/adapters/validate_sql.sql", + "package_name": "dbt", + "patch_path": null, + "path": "macros/adapters/validate_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt.validate_sql" + }, + "macro.dbt_postgres.postgres__alter_column_comment": { + "arguments": [], + "created_at": 1733768711.9090261, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres_escape_comment" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__alter_column_comment(relation, column_dict) %}\n {% set existing_columns = adapter.get_columns_in_relation(relation) | map(attribute=\"name\") | list %}\n {% for column_name in column_dict if (column_name in existing_columns) %}\n {% set comment = column_dict[column_name]['description'] %}\n {% set escaped_comment = postgres_escape_comment(comment) %}\n comment on column {{ relation }}.{{ adapter.quote(column_name) if column_dict[column_name]['quote'] else column_name }} is {{ escaped_comment }};\n {% endfor %}\n{% endmacro %}", + "meta": {}, + "name": "postgres__alter_column_comment", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__alter_column_comment" + }, + "macro.dbt_postgres.postgres__alter_relation_comment": { + "arguments": [], + "created_at": 1733768711.9084852, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres_escape_comment" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__alter_relation_comment(relation, comment) %}\n {% set escaped_comment = postgres_escape_comment(comment) %}\n comment on {{ relation.type }} {{ relation }} is {{ escaped_comment }};\n{% endmacro %}", + "meta": {}, + "name": "postgres__alter_relation_comment", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__alter_relation_comment" + }, + "macro.dbt_postgres.postgres__any_value": { + "arguments": [], + "created_at": 1733768711.9198349, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__any_value(expression) -%}\n\n min({{ expression }})\n\n{%- endmacro %}", + "meta": {}, + "name": "postgres__any_value", + "original_file_path": "macros/utils/any_value.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/utils/any_value.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__any_value" + }, + "macro.dbt_postgres.postgres__check_schema_exists": { + "arguments": [], + "created_at": 1733768711.906323, + "depends_on": { + "macros": [ + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__check_schema_exists(information_schema, schema) -%}\n {% if information_schema.database -%}\n {{ adapter.verify_database(information_schema.database) }}\n {%- endif -%}\n {% call statement('check_schema_exists', fetch_result=True, auto_begin=False) %}\n select count(*) from pg_namespace where nspname = '{{ schema }}'\n {% endcall %}\n {{ return(load_result('check_schema_exists').table) }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__check_schema_exists", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__check_schema_exists" + }, + "macro.dbt_postgres.postgres__copy_grants": { + "arguments": [], + "created_at": 1733768711.909328, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__copy_grants() %}\n {{ return(False) }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__copy_grants", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__copy_grants" + }, + "macro.dbt_postgres.postgres__create_schema": { + "arguments": [], + "created_at": 1733768711.9043221, + "depends_on": { + "macros": [ + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__create_schema(relation) -%}\n {% if relation.database -%}\n {{ adapter.verify_database(relation.database) }}\n {%- endif -%}\n {%- call statement('create_schema') -%}\n create schema if not exists {{ relation.without_identifier().include(database=False) }}\n {%- endcall -%}\n{% endmacro %}", + "meta": {}, + "name": "postgres__create_schema", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__create_schema" + }, + "macro.dbt_postgres.postgres__create_table_as": { + "arguments": [], + "created_at": 1733768711.903402, + "depends_on": { + "macros": [ + "macro.dbt.get_assert_columns_equivalent", + "macro.dbt.get_table_columns_and_constraints", + "macro.dbt.default__get_column_names", + "macro.dbt.get_select_subquery" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__create_table_as(temporary, relation, sql) -%}\n {%- set unlogged = config.get('unlogged', default=false) -%}\n {%- set sql_header = config.get('sql_header', none) -%}\n\n {{ sql_header if sql_header is not none }}\n\n create {% if temporary -%}\n temporary\n {%- elif unlogged -%}\n unlogged\n {%- endif %} table {{ relation }}\n {% set contract_config = config.get('contract') %}\n {% if contract_config.enforced %}\n {{ get_assert_columns_equivalent(sql) }}\n {% endif -%}\n {% if contract_config.enforced and (not temporary) -%}\n {{ get_table_columns_and_constraints() }} ;\n insert into {{ relation }} (\n {{ adapter.dispatch('get_column_names', 'dbt')() }}\n )\n {%- set sql = get_select_subquery(sql) %}\n {% else %}\n as\n {% endif %}\n (\n {{ sql }}\n );\n{%- endmacro %}", + "meta": {}, + "name": "postgres__create_table_as", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__create_table_as" + }, + "macro.dbt_postgres.postgres__current_timestamp": { + "arguments": [], + "created_at": 1733768711.8904068, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__current_timestamp() -%}\n now()\n{%- endmacro %}", + "meta": {}, + "name": "postgres__current_timestamp", + "original_file_path": "macros/timestamps.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/timestamps.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__current_timestamp" + }, + "macro.dbt_postgres.postgres__current_timestamp_backcompat": { + "arguments": [], + "created_at": 1733768711.890817, + "depends_on": { + "macros": [ + "macro.dbt.type_timestamp" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__current_timestamp_backcompat() %}\n current_timestamp::{{ type_timestamp() }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__current_timestamp_backcompat", + "original_file_path": "macros/timestamps.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/timestamps.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__current_timestamp_backcompat" + }, + "macro.dbt_postgres.postgres__current_timestamp_in_utc_backcompat": { + "arguments": [], + "created_at": 1733768711.890965, + "depends_on": { + "macros": [ + "macro.dbt.type_timestamp" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__current_timestamp_in_utc_backcompat() %}\n (current_timestamp at time zone 'utc')::{{ type_timestamp() }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__current_timestamp_in_utc_backcompat", + "original_file_path": "macros/timestamps.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/timestamps.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__current_timestamp_in_utc_backcompat" + }, + "macro.dbt_postgres.postgres__dateadd": { + "arguments": [], + "created_at": 1733768711.9158762, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__dateadd(datepart, interval, from_date_or_timestamp) %}\n\n {{ from_date_or_timestamp }} + ((interval '1 {{ datepart }}') * ({{ interval }}))\n\n{% endmacro %}", + "meta": {}, + "name": "postgres__dateadd", + "original_file_path": "macros/utils/dateadd.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/utils/dateadd.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__dateadd" + }, + "macro.dbt_postgres.postgres__datediff": { + "arguments": [], + "created_at": 1733768711.919659, + "depends_on": { + "macros": [ + "macro.dbt.datediff" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__datediff(first_date, second_date, datepart) -%}\n\n {% if datepart == 'year' %}\n (date_part('year', ({{second_date}})::date) - date_part('year', ({{first_date}})::date))\n {% elif datepart == 'quarter' %}\n ({{ datediff(first_date, second_date, 'year') }} * 4 + date_part('quarter', ({{second_date}})::date) - date_part('quarter', ({{first_date}})::date))\n {% elif datepart == 'month' %}\n ({{ datediff(first_date, second_date, 'year') }} * 12 + date_part('month', ({{second_date}})::date) - date_part('month', ({{first_date}})::date))\n {% elif datepart == 'day' %}\n (({{second_date}})::date - ({{first_date}})::date)\n {% elif datepart == 'week' %}\n ({{ datediff(first_date, second_date, 'day') }} / 7 + case\n when date_part('dow', ({{first_date}})::timestamp) <= date_part('dow', ({{second_date}})::timestamp) then\n case when {{first_date}} <= {{second_date}} then 0 else -1 end\n else\n case when {{first_date}} <= {{second_date}} then 1 else 0 end\n end)\n {% elif datepart == 'hour' %}\n ({{ datediff(first_date, second_date, 'day') }} * 24 + date_part('hour', ({{second_date}})::timestamp) - date_part('hour', ({{first_date}})::timestamp))\n {% elif datepart == 'minute' %}\n ({{ datediff(first_date, second_date, 'hour') }} * 60 + date_part('minute', ({{second_date}})::timestamp) - date_part('minute', ({{first_date}})::timestamp))\n {% elif datepart == 'second' %}\n ({{ datediff(first_date, second_date, 'minute') }} * 60 + floor(date_part('second', ({{second_date}})::timestamp)) - floor(date_part('second', ({{first_date}})::timestamp)))\n {% elif datepart == 'millisecond' %}\n ({{ datediff(first_date, second_date, 'minute') }} * 60000 + floor(date_part('millisecond', ({{second_date}})::timestamp)) - floor(date_part('millisecond', ({{first_date}})::timestamp)))\n {% elif datepart == 'microsecond' %}\n ({{ datediff(first_date, second_date, 'minute') }} * 60000000 + floor(date_part('microsecond', ({{second_date}})::timestamp)) - floor(date_part('microsecond', ({{first_date}})::timestamp)))\n {% else %}\n {{ exceptions.raise_compiler_error(\"Unsupported datepart for macro datediff in postgres: {!r}\".format(datepart)) }}\n {% endif %}\n\n{%- endmacro %}", + "meta": {}, + "name": "postgres__datediff", + "original_file_path": "macros/utils/datediff.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/utils/datediff.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__datediff" + }, + "macro.dbt_postgres.postgres__describe_materialized_view": { + "arguments": [], + "created_at": 1733768711.9112089, + "depends_on": { + "macros": [ + "macro.dbt.run_query", + "macro.dbt.get_show_indexes_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__describe_materialized_view(relation) %}\n -- for now just get the indexes, we don't need the name or the query yet\n {% set _indexes = run_query(get_show_indexes_sql(relation)) %}\n {% do return({'indexes': _indexes}) %}\n{% endmacro %}", + "meta": {}, + "name": "postgres__describe_materialized_view", + "original_file_path": "macros/relations/materialized_view/describe.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/materialized_view/describe.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__describe_materialized_view" + }, + "macro.dbt_postgres.postgres__drop_materialized_view": { + "arguments": [], + "created_at": 1733768711.910935, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__drop_materialized_view(relation) -%}\n drop materialized view if exists {{ relation }} cascade\n{%- endmacro %}", + "meta": {}, + "name": "postgres__drop_materialized_view", + "original_file_path": "macros/relations/materialized_view/drop.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/materialized_view/drop.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__drop_materialized_view" + }, + "macro.dbt_postgres.postgres__drop_schema": { + "arguments": [], + "created_at": 1733768711.904623, + "depends_on": { + "macros": [ + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__drop_schema(relation) -%}\n {% if relation.database -%}\n {{ adapter.verify_database(relation.database) }}\n {%- endif -%}\n {%- call statement('drop_schema') -%}\n drop schema if exists {{ relation.without_identifier().include(database=False) }} cascade\n {%- endcall -%}\n{% endmacro %}", + "meta": {}, + "name": "postgres__drop_schema", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__drop_schema" + }, + "macro.dbt_postgres.postgres__drop_table": { + "arguments": [], + "created_at": 1733768711.9140658, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__drop_table(relation) -%}\n drop table if exists {{ relation }} cascade\n{%- endmacro %}", + "meta": {}, + "name": "postgres__drop_table", + "original_file_path": "macros/relations/table/drop.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/table/drop.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__drop_table" + }, + "macro.dbt_postgres.postgres__drop_view": { + "arguments": [], + "created_at": 1733768711.9150012, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__drop_view(relation) -%}\n drop view if exists {{ relation }} cascade\n{%- endmacro %}", + "meta": {}, + "name": "postgres__drop_view", + "original_file_path": "macros/relations/view/drop.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/view/drop.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__drop_view" + }, + "macro.dbt_postgres.postgres__get_alter_materialized_view_as_sql": { + "arguments": [], + "created_at": 1733768711.9124951, + "depends_on": { + "macros": [ + "macro.dbt.get_replace_sql", + "macro.dbt_postgres.postgres__update_indexes_on_materialized_view" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_alter_materialized_view_as_sql(\n relation,\n configuration_changes,\n sql,\n existing_relation,\n backup_relation,\n intermediate_relation\n) %}\n\n -- apply a full refresh immediately if needed\n {% if configuration_changes.requires_full_refresh %}\n\n {{ get_replace_sql(existing_relation, relation, sql) }}\n\n -- otherwise apply individual changes as needed\n {% else %}\n\n {{ postgres__update_indexes_on_materialized_view(relation, configuration_changes.indexes) }}\n\n {%- endif -%}\n\n{% endmacro %}", + "meta": {}, + "name": "postgres__get_alter_materialized_view_as_sql", + "original_file_path": "macros/relations/materialized_view/alter.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/materialized_view/alter.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_alter_materialized_view_as_sql" + }, + "macro.dbt_postgres.postgres__get_catalog": { + "arguments": [], + "created_at": 1733768711.892891, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__get_catalog_relations" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_catalog(information_schema, schemas) -%}\n {%- set relations = [] -%}\n {%- for schema in schemas -%}\n {%- set dummy = relations.append({'schema': schema}) -%}\n {%- endfor -%}\n {{ return(postgres__get_catalog_relations(information_schema, relations)) }}\n{%- endmacro %}", + "meta": {}, + "name": "postgres__get_catalog", + "original_file_path": "macros/catalog.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/catalog.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_catalog" + }, + "macro.dbt_postgres.postgres__get_catalog_relations": { + "arguments": [], + "created_at": 1733768711.892511, + "depends_on": { + "macros": [ + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_catalog_relations(information_schema, relations) -%}\n {%- call statement('catalog', fetch_result=True) -%}\n\n {#\n If the user has multiple databases set and the first one is wrong, this will fail.\n But we won't fail in the case where there are multiple quoting-difference-only dbs, which is better.\n #}\n {% set database = information_schema.database %}\n {{ adapter.verify_database(database) }}\n\n select\n '{{ database }}' as table_database,\n sch.nspname as table_schema,\n tbl.relname as table_name,\n case tbl.relkind\n when 'v' then 'VIEW'\n when 'm' then 'MATERIALIZED VIEW'\n else 'BASE TABLE'\n end as table_type,\n tbl_desc.description as table_comment,\n col.attname as column_name,\n col.attnum as column_index,\n pg_catalog.format_type(col.atttypid, col.atttypmod) as column_type,\n col_desc.description as column_comment,\n pg_get_userbyid(tbl.relowner) as table_owner\n\n from pg_catalog.pg_namespace sch\n join pg_catalog.pg_class tbl on tbl.relnamespace = sch.oid\n join pg_catalog.pg_attribute col on col.attrelid = tbl.oid\n left outer join pg_catalog.pg_description tbl_desc on (tbl_desc.objoid = tbl.oid and tbl_desc.objsubid = 0)\n left outer join pg_catalog.pg_description col_desc on (col_desc.objoid = tbl.oid and col_desc.objsubid = col.attnum)\n where (\n {%- for relation in relations -%}\n {%- if relation.identifier -%}\n (upper(sch.nspname) = upper('{{ relation.schema }}') and\n upper(tbl.relname) = upper('{{ relation.identifier }}'))\n {%- else-%}\n upper(sch.nspname) = upper('{{ relation.schema }}')\n {%- endif -%}\n {%- if not loop.last %} or {% endif -%}\n {%- endfor -%}\n )\n and not pg_is_other_temp_schema(sch.oid) -- not a temporary schema belonging to another session\n and tbl.relpersistence in ('p', 'u') -- [p]ermanent table or [u]nlogged table. Exclude [t]emporary tables\n and tbl.relkind in ('r', 'v', 'f', 'p', 'm') -- o[r]dinary table, [v]iew, [f]oreign table, [p]artitioned table, [m]aterialized view. Other values are [i]ndex, [S]equence, [c]omposite type, [t]OAST table\n and col.attnum > 0 -- negative numbers are used for system columns such as oid\n and not col.attisdropped -- column as not been dropped\n\n order by\n sch.nspname,\n tbl.relname,\n col.attnum\n\n {%- endcall -%}\n\n {{ return(load_result('catalog').table) }}\n{%- endmacro %}", + "meta": {}, + "name": "postgres__get_catalog_relations", + "original_file_path": "macros/catalog.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/catalog.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_catalog_relations" + }, + "macro.dbt_postgres.postgres__get_columns_in_relation": { + "arguments": [], + "created_at": 1733768711.905069, + "depends_on": { + "macros": [ + "macro.dbt.statement", + "macro.dbt.sql_convert_columns_in_relation" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_columns_in_relation(relation) -%}\n {% call statement('get_columns_in_relation', fetch_result=True) %}\n select\n column_name,\n data_type,\n character_maximum_length,\n numeric_precision,\n numeric_scale\n\n from {{ relation.information_schema('columns') }}\n where table_name = '{{ relation.identifier }}'\n {% if relation.schema %}\n and table_schema = '{{ relation.schema }}'\n {% endif %}\n order by ordinal_position\n\n {% endcall %}\n {% set table = load_result('get_columns_in_relation').table %}\n {{ return(sql_convert_columns_in_relation(table)) }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__get_columns_in_relation", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_columns_in_relation" + }, + "macro.dbt_postgres.postgres__get_create_index_sql": { + "arguments": [], + "created_at": 1733768711.904011, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_create_index_sql(relation, index_dict) -%}\n {%- set index_config = adapter.parse_index(index_dict) -%}\n {%- set comma_separated_columns = \", \".join(index_config.columns) -%}\n {%- set index_name = index_config.render(relation) -%}\n\n create {% if index_config.unique -%}\n unique\n {%- endif %} index if not exists\n \"{{ index_name }}\"\n on {{ relation }} {% if index_config.type -%}\n using {{ index_config.type }}\n {%- endif %}\n ({{ comma_separated_columns }})\n{%- endmacro %}", + "meta": {}, + "name": "postgres__get_create_index_sql", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_create_index_sql" + }, + "macro.dbt_postgres.postgres__get_create_materialized_view_as_sql": { + "arguments": [], + "created_at": 1733768711.913934, + "depends_on": { + "macros": [ + "macro.dbt.get_create_index_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_create_materialized_view_as_sql(relation, sql) %}\n create materialized view if not exists {{ relation }} as {{ sql }};\n\n {% for _index_dict in config.get('indexes', []) -%}\n {{- get_create_index_sql(relation, _index_dict) -}}{{ ';' if not loop.last else \"\" }}\n {%- endfor -%}\n\n{% endmacro %}", + "meta": {}, + "name": "postgres__get_create_materialized_view_as_sql", + "original_file_path": "macros/relations/materialized_view/create.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/materialized_view/create.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_create_materialized_view_as_sql" + }, + "macro.dbt_postgres.postgres__get_drop_index_sql": { + "arguments": [], + "created_at": 1733768711.909704, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n\n{%- macro postgres__get_drop_index_sql(relation, index_name) -%}\n drop index if exists \"{{ relation.schema }}\".\"{{ index_name }}\"\n{%- endmacro -%}", + "meta": {}, + "name": "postgres__get_drop_index_sql", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_drop_index_sql" + }, + "macro.dbt_postgres.postgres__get_incremental_default_sql": { + "arguments": [], + "created_at": 1733768711.910105, + "depends_on": { + "macros": [ + "macro.dbt.get_incremental_delete_insert_sql", + "macro.dbt.get_incremental_append_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_incremental_default_sql(arg_dict) %}\n\n {% if arg_dict[\"unique_key\"] %}\n {% do return(get_incremental_delete_insert_sql(arg_dict)) %}\n {% else %}\n {% do return(get_incremental_append_sql(arg_dict)) %}\n {% endif %}\n\n{% endmacro %}", + "meta": {}, + "name": "postgres__get_incremental_default_sql", + "original_file_path": "macros/materializations/incremental_strategies.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/materializations/incremental_strategies.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_incremental_default_sql" + }, + "macro.dbt_postgres.postgres__get_materialized_view_configuration_changes": { + "arguments": [], + "created_at": 1733768711.913514, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__describe_materialized_view" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_materialized_view_configuration_changes(existing_relation, new_config) %}\n {% set _existing_materialized_view = postgres__describe_materialized_view(existing_relation) %}\n {% set _configuration_changes = existing_relation.get_materialized_view_config_change_collection(_existing_materialized_view, new_config.model) %}\n {% do return(_configuration_changes) %}\n{% endmacro %}", + "meta": {}, + "name": "postgres__get_materialized_view_configuration_changes", + "original_file_path": "macros/relations/materialized_view/alter.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/materialized_view/alter.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_materialized_view_configuration_changes" + }, + "macro.dbt_postgres.postgres__get_relations": { + "arguments": [], + "created_at": 1733768711.8935528, + "depends_on": { + "macros": [ + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_relations() -%}\n\n {#\n -- in pg_depend, objid is the dependent, refobjid is the referenced object\n -- > a pg_depend entry indicates that the referenced object cannot be\n -- > dropped without also dropping the dependent object.\n #}\n\n {%- call statement('relations', fetch_result=True) -%}\n with relation as (\n select\n pg_rewrite.ev_class as class,\n pg_rewrite.oid as id\n from pg_rewrite\n ),\n class as (\n select\n oid as id,\n relname as name,\n relnamespace as schema,\n relkind as kind\n from pg_class\n ),\n dependency as (\n select distinct\n pg_depend.objid as id,\n pg_depend.refobjid as ref\n from pg_depend\n ),\n schema as (\n select\n pg_namespace.oid as id,\n pg_namespace.nspname as name\n from pg_namespace\n where nspname != 'information_schema' and nspname not like 'pg\\_%'\n ),\n referenced as (\n select\n relation.id AS id,\n referenced_class.name ,\n referenced_class.schema ,\n referenced_class.kind\n from relation\n join class as referenced_class on relation.class=referenced_class.id\n where referenced_class.kind in ('r', 'v', 'm')\n ),\n relationships as (\n select\n referenced.name as referenced_name,\n referenced.schema as referenced_schema_id,\n dependent_class.name as dependent_name,\n dependent_class.schema as dependent_schema_id,\n referenced.kind as kind\n from referenced\n join dependency on referenced.id=dependency.id\n join class as dependent_class on dependency.ref=dependent_class.id\n where\n (referenced.name != dependent_class.name or\n referenced.schema != dependent_class.schema)\n )\n\n select\n referenced_schema.name as referenced_schema,\n relationships.referenced_name as referenced_name,\n dependent_schema.name as dependent_schema,\n relationships.dependent_name as dependent_name\n from relationships\n join schema as dependent_schema on relationships.dependent_schema_id=dependent_schema.id\n join schema as referenced_schema on relationships.referenced_schema_id=referenced_schema.id\n group by referenced_schema, referenced_name, dependent_schema, dependent_name\n order by referenced_schema, referenced_name, dependent_schema, dependent_name;\n\n {%- endcall -%}\n\n {{ return(load_result('relations').table) }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__get_relations", + "original_file_path": "macros/relations.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_relations" + }, + "macro.dbt_postgres.postgres__get_rename_materialized_view_sql": { + "arguments": [], + "created_at": 1733768711.911511, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_rename_materialized_view_sql(relation, new_name) %}\n alter materialized view {{ relation }} rename to {{ new_name }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__get_rename_materialized_view_sql", + "original_file_path": "macros/relations/materialized_view/rename.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/materialized_view/rename.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_rename_materialized_view_sql" + }, + "macro.dbt_postgres.postgres__get_rename_table_sql": { + "arguments": [], + "created_at": 1733768711.9148731, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_rename_table_sql(relation, new_name) %}\n alter table {{ relation }} rename to {{ new_name }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__get_rename_table_sql", + "original_file_path": "macros/relations/table/rename.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/table/rename.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_rename_table_sql" + }, + "macro.dbt_postgres.postgres__get_rename_view_sql": { + "arguments": [], + "created_at": 1733768711.9156768, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_rename_view_sql(relation, new_name) %}\n alter view {{ relation }} rename to {{ new_name }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__get_rename_view_sql", + "original_file_path": "macros/relations/view/rename.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/view/rename.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_rename_view_sql" + }, + "macro.dbt_postgres.postgres__get_replace_table_sql": { + "arguments": [], + "created_at": 1733768711.914708, + "depends_on": { + "macros": [ + "macro.dbt.get_assert_columns_equivalent", + "macro.dbt.get_table_columns_and_constraints", + "macro.dbt.get_select_subquery" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_replace_table_sql(relation, sql) -%}\n\n {%- set sql_header = config.get('sql_header', none) -%}\n {{ sql_header if sql_header is not none }}\n\n create or replace table {{ relation }}\n {% set contract_config = config.get('contract') %}\n {% if contract_config.enforced %}\n {{ get_assert_columns_equivalent(sql) }}\n {{ get_table_columns_and_constraints() }}\n {%- set sql = get_select_subquery(sql) %}\n {% endif %}\n as (\n {{ sql }}\n );\n\n{%- endmacro %}", + "meta": {}, + "name": "postgres__get_replace_table_sql", + "original_file_path": "macros/relations/table/replace.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/table/replace.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_replace_table_sql" + }, + "macro.dbt_postgres.postgres__get_replace_view_sql": { + "arguments": [], + "created_at": 1733768711.915513, + "depends_on": { + "macros": [ + "macro.dbt.get_assert_columns_equivalent" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_replace_view_sql(relation, sql) -%}\n\n {%- set sql_header = config.get('sql_header', none) -%}\n {{ sql_header if sql_header is not none }}\n\n create or replace view {{ relation }}\n {% set contract_config = config.get('contract') %}\n {% if contract_config.enforced %}\n {{ get_assert_columns_equivalent(sql) }}\n {%- endif %}\n as (\n {{ sql }}\n );\n\n{%- endmacro %}", + "meta": {}, + "name": "postgres__get_replace_view_sql", + "original_file_path": "macros/relations/view/replace.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/view/replace.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_replace_view_sql" + }, + "macro.dbt_postgres.postgres__get_show_grant_sql": { + "arguments": [], + "created_at": 1733768711.9092171, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro postgres__get_show_grant_sql(relation) -%}\n select grantee, privilege_type\n from {{ relation.information_schema('role_table_grants') }}\n where grantor = current_role\n and grantee != current_role\n and table_schema = '{{ relation.schema }}'\n and table_name = '{{ relation.identifier }}'\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "postgres__get_show_grant_sql", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_show_grant_sql" + }, + "macro.dbt_postgres.postgres__get_show_indexes_sql": { + "arguments": [], + "created_at": 1733768711.909507, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_show_indexes_sql(relation) %}\n select\n i.relname as name,\n m.amname as method,\n ix.indisunique as \"unique\",\n array_to_string(array_agg(a.attname), ',') as column_names\n from pg_index ix\n join pg_class i\n on i.oid = ix.indexrelid\n join pg_am m\n on m.oid=i.relam\n join pg_class t\n on t.oid = ix.indrelid\n join pg_namespace n\n on n.oid = t.relnamespace\n join pg_attribute a\n on a.attrelid = t.oid\n and a.attnum = ANY(ix.indkey)\n where t.relname = '{{ relation.identifier }}'\n and n.nspname = '{{ relation.schema }}'\n and t.relkind in ('r', 'm')\n group by 1, 2, 3\n order by 1, 2, 3\n{% endmacro %}", + "meta": {}, + "name": "postgres__get_show_indexes_sql", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__get_show_indexes_sql" + }, + "macro.dbt_postgres.postgres__information_schema_name": { + "arguments": [], + "created_at": 1733768711.905647, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__information_schema_name(database) -%}\n {% if database_name -%}\n {{ adapter.verify_database(database_name) }}\n {%- endif -%}\n information_schema\n{%- endmacro %}", + "meta": {}, + "name": "postgres__information_schema_name", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__information_schema_name" + }, + "macro.dbt_postgres.postgres__last_day": { + "arguments": [], + "created_at": 1733768711.9203148, + "depends_on": { + "macros": [ + "macro.dbt.dateadd", + "macro.dbt.date_trunc", + "macro.dbt.default_last_day" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__last_day(date, datepart) -%}\n\n {%- if datepart == 'quarter' -%}\n -- postgres dateadd does not support quarter interval.\n cast(\n {{dbt.dateadd('day', '-1',\n dbt.dateadd('month', '3', dbt.date_trunc(datepart, date))\n )}}\n as date)\n {%- else -%}\n {{dbt.default_last_day(date, datepart)}}\n {%- endif -%}\n\n{%- endmacro %}", + "meta": {}, + "name": "postgres__last_day", + "original_file_path": "macros/utils/last_day.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/utils/last_day.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__last_day" + }, + "macro.dbt_postgres.postgres__list_relations_without_caching": { + "arguments": [], + "created_at": 1733768711.905483, + "depends_on": { + "macros": [ + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__list_relations_without_caching(schema_relation) %}\n {% call statement('list_relations_without_caching', fetch_result=True) -%}\n select\n '{{ schema_relation.database }}' as database,\n tablename as name,\n schemaname as schema,\n 'table' as type\n from pg_tables\n where schemaname ilike '{{ schema_relation.schema }}'\n union all\n select\n '{{ schema_relation.database }}' as database,\n viewname as name,\n schemaname as schema,\n 'view' as type\n from pg_views\n where schemaname ilike '{{ schema_relation.schema }}'\n union all\n select\n '{{ schema_relation.database }}' as database,\n matviewname as name,\n schemaname as schema,\n 'materialized_view' as type\n from pg_matviews\n where schemaname ilike '{{ schema_relation.schema }}'\n {% endcall %}\n {{ return(load_result('list_relations_without_caching').table) }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__list_relations_without_caching", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__list_relations_without_caching" + }, + "macro.dbt_postgres.postgres__list_schemas": { + "arguments": [], + "created_at": 1733768711.9059682, + "depends_on": { + "macros": [ + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__list_schemas(database) %}\n {% if database -%}\n {{ adapter.verify_database(database) }}\n {%- endif -%}\n {% call statement('list_schemas', fetch_result=True, auto_begin=False) %}\n select distinct nspname from pg_namespace\n {% endcall %}\n {{ return(load_result('list_schemas').table) }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__list_schemas", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__list_schemas" + }, + "macro.dbt_postgres.postgres__listagg": { + "arguments": [], + "created_at": 1733768711.916457, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__listagg(measure, delimiter_text, order_by_clause, limit_num) -%}\n\n {% if limit_num -%}\n array_to_string(\n (array_agg(\n {{ measure }}\n {% if order_by_clause -%}\n {{ order_by_clause }}\n {%- endif %}\n ))[1:{{ limit_num }}],\n {{ delimiter_text }}\n )\n {%- else %}\n string_agg(\n {{ measure }},\n {{ delimiter_text }}\n {% if order_by_clause -%}\n {{ order_by_clause }}\n {%- endif %}\n )\n {%- endif %}\n\n{%- endmacro %}", + "meta": {}, + "name": "postgres__listagg", + "original_file_path": "macros/utils/listagg.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/utils/listagg.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__listagg" + }, + "macro.dbt_postgres.postgres__make_backup_relation": { + "arguments": [], + "created_at": 1733768711.9078882, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__make_relation_with_suffix" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__make_backup_relation(base_relation, backup_relation_type, suffix) %}\n {% set backup_relation = postgres__make_relation_with_suffix(base_relation, suffix, dstring=False) %}\n {{ return(backup_relation.incorporate(type=backup_relation_type)) }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__make_backup_relation", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__make_backup_relation" + }, + "macro.dbt_postgres.postgres__make_intermediate_relation": { + "arguments": [], + "created_at": 1733768711.907339, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__make_relation_with_suffix" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__make_intermediate_relation(base_relation, suffix) %}\n {{ return(postgres__make_relation_with_suffix(base_relation, suffix, dstring=False)) }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__make_intermediate_relation", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__make_intermediate_relation" + }, + "macro.dbt_postgres.postgres__make_relation_with_suffix": { + "arguments": [], + "created_at": 1733768711.90715, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__make_relation_with_suffix(base_relation, suffix, dstring) %}\n {% if dstring %}\n {% set dt = modules.datetime.datetime.now() %}\n {% set dtstring = dt.strftime(\"%H%M%S%f\") %}\n {% set suffix = suffix ~ dtstring %}\n {% endif %}\n {% set suffix_length = suffix|length %}\n {% set relation_max_name_length = base_relation.relation_max_name_length() %}\n {% if suffix_length > relation_max_name_length %}\n {% do exceptions.raise_compiler_error('Relation suffix is too long (' ~ suffix_length ~ ' characters). Maximum length is ' ~ relation_max_name_length ~ ' characters.') %}\n {% endif %}\n {% set identifier = base_relation.identifier[:relation_max_name_length - suffix_length] ~ suffix %}\n\n {{ return(base_relation.incorporate(path={\"identifier\": identifier })) }}\n\n {% endmacro %}", + "meta": {}, + "name": "postgres__make_relation_with_suffix", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__make_relation_with_suffix" + }, + "macro.dbt_postgres.postgres__make_temp_relation": { + "arguments": [], + "created_at": 1733768711.907634, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__make_relation_with_suffix" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__make_temp_relation(base_relation, suffix) %}\n {% set temp_relation = postgres__make_relation_with_suffix(base_relation, suffix, dstring=True) %}\n {{ return(temp_relation.incorporate(path={\"schema\": none,\n \"database\": none})) }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__make_temp_relation", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__make_temp_relation" + }, + "macro.dbt_postgres.postgres__refresh_materialized_view": { + "arguments": [], + "created_at": 1733768711.911341, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__refresh_materialized_view(relation) %}\n refresh materialized view {{ relation }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__refresh_materialized_view", + "original_file_path": "macros/relations/materialized_view/refresh.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/materialized_view/refresh.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__refresh_materialized_view" + }, + "macro.dbt_postgres.postgres__snapshot_get_time": { + "arguments": [], + "created_at": 1733768711.89071, + "depends_on": { + "macros": [ + "macro.dbt.current_timestamp" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__snapshot_get_time() -%}\n {{ current_timestamp() }}::timestamp without time zone\n{%- endmacro %}", + "meta": {}, + "name": "postgres__snapshot_get_time", + "original_file_path": "macros/timestamps.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/timestamps.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__snapshot_get_time" + }, + "macro.dbt_postgres.postgres__snapshot_merge_sql": { + "arguments": [], + "created_at": 1733768711.910793, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__snapshot_merge_sql(target, source, insert_cols) -%}\n {%- set insert_cols_csv = insert_cols | join(', ') -%}\n\n update {{ target }}\n set dbt_valid_to = DBT_INTERNAL_SOURCE.dbt_valid_to\n from {{ source }} as DBT_INTERNAL_SOURCE\n where DBT_INTERNAL_SOURCE.dbt_scd_id::text = {{ target }}.dbt_scd_id::text\n and DBT_INTERNAL_SOURCE.dbt_change_type::text in ('update'::text, 'delete'::text)\n and {{ target }}.dbt_valid_to is null;\n\n insert into {{ target }} ({{ insert_cols_csv }})\n select {% for column in insert_cols -%}\n DBT_INTERNAL_SOURCE.{{ column }} {%- if not loop.last %}, {%- endif %}\n {%- endfor %}\n from {{ source }} as DBT_INTERNAL_SOURCE\n where DBT_INTERNAL_SOURCE.dbt_change_type::text = 'insert'::text;\n{% endmacro %}", + "meta": {}, + "name": "postgres__snapshot_merge_sql", + "original_file_path": "macros/materializations/snapshot_merge.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/materializations/snapshot_merge.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__snapshot_merge_sql" + }, + "macro.dbt_postgres.postgres__snapshot_string_as_time": { + "arguments": [], + "created_at": 1733768711.890605, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__snapshot_string_as_time(timestamp) -%}\n {%- set result = \"'\" ~ timestamp ~ \"'::timestamp without time zone\" -%}\n {{ return(result) }}\n{%- endmacro %}", + "meta": {}, + "name": "postgres__snapshot_string_as_time", + "original_file_path": "macros/timestamps.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/timestamps.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__snapshot_string_as_time" + }, + "macro.dbt_postgres.postgres__split_part": { + "arguments": [], + "created_at": 1733768711.920707, + "depends_on": { + "macros": [ + "macro.dbt.default__split_part", + "macro.dbt._split_part_negative" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__split_part(string_text, delimiter_text, part_number) %}\n\n {% if part_number >= 0 %}\n {{ dbt.default__split_part(string_text, delimiter_text, part_number) }}\n {% else %}\n {{ dbt._split_part_negative(string_text, delimiter_text, part_number) }}\n {% endif %}\n\n{% endmacro %}", + "meta": {}, + "name": "postgres__split_part", + "original_file_path": "macros/utils/split_part.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/utils/split_part.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__split_part" + }, + "macro.dbt_postgres.postgres__update_indexes_on_materialized_view": { + "arguments": [], + "created_at": 1733768711.913155, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__get_drop_index_sql", + "macro.dbt_postgres.postgres__get_create_index_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n\n{%- macro postgres__update_indexes_on_materialized_view(relation, index_changes) -%}\n {{- log(\"Applying UPDATE INDEXES to: \" ~ relation) -}}\n\n {%- for _index_change in index_changes -%}\n {%- set _index = _index_change.context -%}\n\n {%- if _index_change.action == \"drop\" -%}\n\n {{ postgres__get_drop_index_sql(relation, _index.name) }}\n\n {%- elif _index_change.action == \"create\" -%}\n\n {{ postgres__get_create_index_sql(relation, _index.as_node_config) }}\n\n {%- endif -%}\n\t{{ ';' if not loop.last else \"\" }}\n\n {%- endfor -%}\n\n{%- endmacro -%}\n\n\n", + "meta": {}, + "name": "postgres__update_indexes_on_materialized_view", + "original_file_path": "macros/relations/materialized_view/alter.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations/materialized_view/alter.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres__update_indexes_on_materialized_view" + }, + "macro.dbt_postgres.postgres_escape_comment": { + "arguments": [], + "created_at": 1733768711.908277, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres_escape_comment(comment) -%}\n {% if comment is not string %}\n {% do exceptions.raise_compiler_error('cannot escape a non-string: ' ~ comment) %}\n {% endif %}\n {%- set magic = '$dbt_comment_literal_block$' -%}\n {%- if magic in comment -%}\n {%- do exceptions.raise_compiler_error('The string ' ~ magic ~ ' is not allowed in comments.') -%}\n {%- endif -%}\n {{ magic }}{{ comment }}{{ magic }}\n{%- endmacro %}", + "meta": {}, + "name": "postgres_escape_comment", + "original_file_path": "macros/adapters.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/adapters.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres_escape_comment" + }, + "macro.dbt_postgres.postgres_get_relations": { + "arguments": [], + "created_at": 1733768711.893682, + "depends_on": { + "macros": [ + "macro.dbt_postgres.postgres__get_relations" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres_get_relations() %}\n {{ return(postgres__get_relations()) }}\n{% endmacro %}", + "meta": {}, + "name": "postgres_get_relations", + "original_file_path": "macros/relations.sql", + "package_name": "dbt_postgres", + "patch_path": null, + "path": "macros/relations.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_postgres.postgres_get_relations" + }, + "macro.dbt_utils._bigquery__get_matching_schemata": { + "arguments": [], + "created_at": 1733768712.202956, + "depends_on": { + "macros": [ + "macro.dbt.run_query" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro _bigquery__get_matching_schemata(schema_pattern, database) %}\n {% if execute %}\n\n {% set sql %}\n select schema_name from {{ adapter.quote(database) }}.INFORMATION_SCHEMA.SCHEMATA\n where lower(schema_name) like lower('{{ schema_pattern }}')\n {% endset %}\n\n {% set results=run_query(sql) %}\n\n {% set schemata=results.columns['schema_name'].values() %}\n\n {{ return(schemata) }}\n\n {% else %}\n\n {{ return([]) }}\n\n {% endif %}\n\n\n{% endmacro %}", + "meta": {}, + "name": "_bigquery__get_matching_schemata", + "original_file_path": "macros/sql/get_tables_by_pattern_sql.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_tables_by_pattern_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils._bigquery__get_matching_schemata" + }, + "macro.dbt_utils._is_ephemeral": { + "arguments": [], + "created_at": 1733768712.174357, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro _is_ephemeral(obj, macro) %}\n {%- if obj.is_cte -%}\n {% set ephemeral_prefix = api.Relation.add_ephemeral_prefix('') %}\n {% if obj.name.startswith(ephemeral_prefix) %}\n {% set model_name = obj.name[(ephemeral_prefix|length):] %}\n {% else %}\n {% set model_name = obj.name %}\n {%- endif -%}\n {% set error_message %}\nThe `{{ macro }}` macro cannot be used with ephemeral models, as it relies on the information schema.\n\n`{{ model_name }}` is an ephemeral model. Consider making it a view or table instead.\n {% endset %}\n {%- do exceptions.raise_compiler_error(error_message) -%}\n {%- endif -%}\n{% endmacro %}", + "meta": {}, + "name": "_is_ephemeral", + "original_file_path": "macros/jinja_helpers/_is_ephemeral.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/jinja_helpers/_is_ephemeral.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils._is_ephemeral" + }, + "macro.dbt_utils._is_relation": { + "arguments": [], + "created_at": 1733768712.172193, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro _is_relation(obj, macro) %}\n {%- if not (obj is mapping and obj.get('metadata', {}).get('type', '').endswith('Relation')) -%}\n {%- do exceptions.raise_compiler_error(\"Macro \" ~ macro ~ \" expected a Relation but received the value: \" ~ obj) -%}\n {%- endif -%}\n{% endmacro %}", + "meta": {}, + "name": "_is_relation", + "original_file_path": "macros/jinja_helpers/_is_relation.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/jinja_helpers/_is_relation.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils._is_relation" + }, + "macro.dbt_utils.bigquery__deduplicate": { + "arguments": [], + "created_at": 1733768712.197666, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n{%- macro bigquery__deduplicate(relation, partition_by, order_by) -%}\n\n select unique.*\n from (\n select\n array_agg (\n original\n order by {{ order_by }}\n limit 1\n )[offset(0)] unique\n from {{ relation }} original\n group by {{ partition_by }}\n )\n\n{%- endmacro -%}", + "meta": {}, + "name": "bigquery__deduplicate", + "original_file_path": "macros/sql/deduplicate.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/deduplicate.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.bigquery__deduplicate" + }, + "macro.dbt_utils.bigquery__get_tables_by_pattern_sql": { + "arguments": [], + "created_at": 1733768712.202496, + "depends_on": { + "macros": [ + "macro.dbt_utils._bigquery__get_matching_schemata", + "macro.dbt_utils.get_table_types_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro bigquery__get_tables_by_pattern_sql(schema_pattern, table_pattern, exclude='', database=target.database) %}\n\n {% if '%' in schema_pattern %}\n {% set schemata=dbt_utils._bigquery__get_matching_schemata(schema_pattern, database) %}\n {% else %}\n {% set schemata=[schema_pattern] %}\n {% endif %}\n\n {% set sql %}\n {% for schema in schemata %}\n select distinct\n table_schema,\n table_name,\n {{ dbt_utils.get_table_types_sql() }}\n\n from {{ adapter.quote(database) }}.{{ schema }}.INFORMATION_SCHEMA.TABLES\n where lower(table_name) like lower ('{{ table_pattern }}')\n and lower(table_name) not like lower ('{{ exclude }}')\n\n {% if not loop.last %} union all {% endif %}\n\n {% endfor %}\n {% endset %}\n\n {{ return(sql) }}\n\n{% endmacro %}", + "meta": {}, + "name": "bigquery__get_tables_by_pattern_sql", + "original_file_path": "macros/sql/get_tables_by_pattern_sql.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_tables_by_pattern_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.bigquery__get_tables_by_pattern_sql" + }, + "macro.dbt_utils.bigquery__haversine_distance": { + "arguments": [], + "created_at": 1733768712.216371, + "depends_on": { + "macros": [ + "macro.dbt_utils.degrees_to_radians" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro bigquery__haversine_distance(lat1, lon1, lat2, lon2, unit='mi') -%}\n{% set radians_lat1 = dbt_utils.degrees_to_radians(lat1) %}\n{% set radians_lat2 = dbt_utils.degrees_to_radians(lat2) %}\n{% set radians_lon1 = dbt_utils.degrees_to_radians(lon1) %}\n{% set radians_lon2 = dbt_utils.degrees_to_radians(lon2) %}\n{%- if unit == 'mi' %}\n {% set conversion_rate = 1 %}\n{% elif unit == 'km' %}\n {% set conversion_rate = 1.60934 %}\n{% else %}\n {{ exceptions.raise_compiler_error(\"unit input must be one of 'mi' or 'km'. Got \" ~ unit) }}\n{% endif %}\n 2 * 3961 * asin(sqrt(power(sin(({{ radians_lat2 }} - {{ radians_lat1 }}) / 2), 2) +\n cos({{ radians_lat1 }}) * cos({{ radians_lat2 }}) *\n power(sin(({{ radians_lon2 }} - {{ radians_lon1 }}) / 2), 2))) * {{ conversion_rate }}\n\n{%- endmacro %}", + "meta": {}, + "name": "bigquery__haversine_distance", + "original_file_path": "macros/sql/haversine_distance.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/haversine_distance.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.bigquery__haversine_distance" + }, + "macro.dbt_utils.databricks__get_table_types_sql": { + "arguments": [], + "created_at": 1733768712.212539, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro databricks__get_table_types_sql() %}\n case table_type\n when 'MANAGED' then 'table'\n when 'BASE TABLE' then 'table'\n when 'MATERIALIZED VIEW' then 'materializedview'\n else lower(table_type)\n end as {{ adapter.quote('table_type') }}\n{% endmacro %}", + "meta": {}, + "name": "databricks__get_table_types_sql", + "original_file_path": "macros/sql/get_table_types_sql.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_table_types_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.databricks__get_table_types_sql" + }, + "macro.dbt_utils.date_spine": { + "arguments": [], + "created_at": 1733768712.17577, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__date_spine" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro date_spine(datepart, start_date, end_date) %}\n {{ return(adapter.dispatch('date_spine', 'dbt_utils')(datepart, start_date, end_date)) }}\n{%- endmacro %}", + "meta": {}, + "name": "date_spine", + "original_file_path": "macros/sql/date_spine.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/date_spine.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.date_spine" + }, + "macro.dbt_utils.deduplicate": { + "arguments": [], + "created_at": 1733768712.1967769, + "depends_on": { + "macros": [ + "macro.dbt_utils.postgres__deduplicate" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- macro deduplicate(relation, partition_by, order_by) -%}\n {{ return(adapter.dispatch('deduplicate', 'dbt_utils')(relation, partition_by, order_by)) }}\n{% endmacro %}", + "meta": {}, + "name": "deduplicate", + "original_file_path": "macros/sql/deduplicate.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/deduplicate.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.deduplicate" + }, + "macro.dbt_utils.default__date_spine": { + "arguments": [], + "created_at": 1733768712.1761112, + "depends_on": { + "macros": [ + "macro.dbt_utils.generate_series", + "macro.dbt_utils.get_intervals_between", + "macro.dbt.dateadd" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__date_spine(datepart, start_date, end_date) %}\n\n\n{# call as follows:\n\ndate_spine(\n \"day\",\n \"to_date('01/01/2016', 'mm/dd/yyyy')\",\n \"dbt.dateadd(week, 1, current_date)\"\n) #}\n\n\nwith rawdata as (\n\n {{dbt_utils.generate_series(\n dbt_utils.get_intervals_between(start_date, end_date, datepart)\n )}}\n\n),\n\nall_periods as (\n\n select (\n {{\n dbt.dateadd(\n datepart,\n \"row_number() over (order by 1) - 1\",\n start_date\n )\n }}\n ) as date_{{datepart}}\n from rawdata\n\n),\n\nfiltered as (\n\n select *\n from all_periods\n where date_{{datepart}} <= {{ end_date }}\n\n)\n\nselect * from filtered\n\n{% endmacro %}", + "meta": {}, + "name": "default__date_spine", + "original_file_path": "macros/sql/date_spine.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/date_spine.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__date_spine" + }, + "macro.dbt_utils.default__deduplicate": { + "arguments": [], + "created_at": 1733768712.196984, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro default__deduplicate(relation, partition_by, order_by) -%}\n\n with row_numbered as (\n select\n _inner.*,\n row_number() over (\n partition by {{ partition_by }}\n order by {{ order_by }}\n ) as rn\n from {{ relation }} as _inner\n )\n\n select\n distinct data.*\n from {{ relation }} as data\n {#\n -- Not all DBs will support natural joins but the ones that do include:\n -- Oracle, MySQL, SQLite, Redshift, Teradata, Materialize, Databricks\n -- Apache Spark, SingleStore, Vertica\n -- Those that do not appear to support natural joins include:\n -- SQLServer, Trino, Presto, Rockset, Athena\n #}\n natural join row_numbered\n where row_numbered.rn = 1\n\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "default__deduplicate", + "original_file_path": "macros/sql/deduplicate.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/deduplicate.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__deduplicate" + }, + "macro.dbt_utils.default__generate_series": { + "arguments": [], + "created_at": 1733768712.1810062, + "depends_on": { + "macros": [ + "macro.dbt_utils.get_powers_of_two" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__generate_series(upper_bound) %}\n\n {% set n = dbt_utils.get_powers_of_two(upper_bound) %}\n\n with p as (\n select 0 as generated_number union all select 1\n ), unioned as (\n\n select\n\n {% for i in range(n) %}\n p{{i}}.generated_number * power(2, {{i}})\n {% if not loop.last %} + {% endif %}\n {% endfor %}\n + 1\n as generated_number\n\n from\n\n {% for i in range(n) %}\n p as p{{i}}\n {% if not loop.last %} cross join {% endif %}\n {% endfor %}\n\n )\n\n select *\n from unioned\n where generated_number <= {{upper_bound}}\n order by generated_number\n\n{% endmacro %}", + "meta": {}, + "name": "default__generate_series", + "original_file_path": "macros/sql/generate_series.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/generate_series.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__generate_series" + }, + "macro.dbt_utils.default__generate_surrogate_key": { + "arguments": [], + "created_at": 1733768712.2115998, + "depends_on": { + "macros": [ + "macro.dbt.type_string", + "macro.dbt.hash", + "macro.dbt.concat" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro default__generate_surrogate_key(field_list) -%}\n\n{%- if var('surrogate_key_treat_nulls_as_empty_strings', False) -%}\n {%- set default_null_value = \"\" -%}\n{%- else -%}\n {%- set default_null_value = '_dbt_utils_surrogate_key_null_' -%}\n{%- endif -%}\n\n{%- set fields = [] -%}\n\n{%- for field in field_list -%}\n\n {%- do fields.append(\n \"coalesce(cast(\" ~ field ~ \" as \" ~ dbt.type_string() ~ \"), '\" ~ default_null_value ~\"')\"\n ) -%}\n\n {%- if not loop.last %}\n {%- do fields.append(\"'-'\") -%}\n {%- endif -%}\n\n{%- endfor -%}\n\n{{ dbt.hash(dbt.concat(fields)) }}\n\n{%- endmacro -%}", + "meta": {}, + "name": "default__generate_surrogate_key", + "original_file_path": "macros/sql/generate_surrogate_key.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/generate_surrogate_key.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__generate_surrogate_key" + }, + "macro.dbt_utils.default__get_column_values": { + "arguments": [], + "created_at": 1733768712.205406, + "depends_on": { + "macros": [ + "macro.dbt_utils._is_ephemeral", + "macro.dbt.load_relation", + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_column_values(table, column, order_by='count(*) desc', max_records=none, default=none, where=none) -%}\n {#-- Prevent querying of db in parsing mode. This works because this macro does not create any new refs. #}\n {%- if not execute -%}\n {% set default = [] if not default %}\n {{ return(default) }}\n {% endif %}\n\n {%- do dbt_utils._is_ephemeral(table, 'get_column_values') -%}\n\n {# Not all relations are tables. Renaming for internal clarity without breaking functionality for anyone using named arguments #}\n {# TODO: Change the method signature in a future 0.x.0 release #}\n {%- set target_relation = table -%}\n\n {# adapter.load_relation is a convenience wrapper to avoid building a Relation when we already have one #}\n {% set relation_exists = (load_relation(target_relation)) is not none %}\n\n {%- call statement('get_column_values', fetch_result=true) %}\n\n {%- if not relation_exists and default is none -%}\n\n {{ exceptions.raise_compiler_error(\"In get_column_values(): relation \" ~ target_relation ~ \" does not exist and no default value was provided.\") }}\n\n {%- elif not relation_exists and default is not none -%}\n\n {{ log(\"Relation \" ~ target_relation ~ \" does not exist. Returning the default value: \" ~ default) }}\n\n {{ return(default) }}\n\n {%- else -%}\n\n\n select\n {{ column }} as value\n\n from {{ target_relation }}\n\n {% if where is not none %}\n where {{ where }}\n {% endif %}\n\n group by {{ column }}\n order by {{ order_by }}\n\n {% if max_records is not none %}\n limit {{ max_records }}\n {% endif %}\n\n {% endif %}\n\n {%- endcall -%}\n\n {%- set value_list = load_result('get_column_values') -%}\n\n {%- if value_list and value_list['data'] -%}\n {%- set values = value_list['data'] | map(attribute=0) | list %}\n {{ return(values) }}\n {%- else -%}\n {{ return(default) }}\n {%- endif -%}\n\n{%- endmacro %}", + "meta": {}, + "name": "default__get_column_values", + "original_file_path": "macros/sql/get_column_values.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_column_values.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_column_values" + }, + "macro.dbt_utils.default__get_filtered_columns_in_relation": { + "arguments": [], + "created_at": 1733768712.208271, + "depends_on": { + "macros": [ + "macro.dbt_utils._is_relation", + "macro.dbt_utils._is_ephemeral" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_filtered_columns_in_relation(from, except=[]) -%}\n {%- do dbt_utils._is_relation(from, 'get_filtered_columns_in_relation') -%}\n {%- do dbt_utils._is_ephemeral(from, 'get_filtered_columns_in_relation') -%}\n\n {# -- Prevent querying of db in parsing mode. This works because this macro does not create any new refs. #}\n {%- if not execute -%}\n {{ return('') }}\n {% endif %}\n\n {%- set include_cols = [] %}\n {%- set cols = adapter.get_columns_in_relation(from) -%}\n {%- set except = except | map(\"lower\") | list %}\n {%- for col in cols -%}\n {%- if col.column|lower not in except -%}\n {% do include_cols.append(col.column) %}\n {%- endif %}\n {%- endfor %}\n\n {{ return(include_cols) }}\n\n{%- endmacro %}", + "meta": {}, + "name": "default__get_filtered_columns_in_relation", + "original_file_path": "macros/sql/get_filtered_columns_in_relation.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_filtered_columns_in_relation.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_filtered_columns_in_relation" + }, + "macro.dbt_utils.default__get_intervals_between": { + "arguments": [], + "created_at": 1733768712.1755588, + "depends_on": { + "macros": [ + "macro.dbt.statement", + "macro.dbt.datediff" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_intervals_between(start_date, end_date, datepart) -%}\n {%- call statement('get_intervals_between', fetch_result=True) %}\n\n select {{ dbt.datediff(start_date, end_date, datepart) }}\n\n {%- endcall -%}\n\n {%- set value_list = load_result('get_intervals_between') -%}\n\n {%- if value_list and value_list['data'] -%}\n {%- set values = value_list['data'] | map(attribute=0) | list %}\n {{ return(values[0]) }}\n {%- else -%}\n {{ return(1) }}\n {%- endif -%}\n\n{%- endmacro %}", + "meta": {}, + "name": "default__get_intervals_between", + "original_file_path": "macros/sql/date_spine.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/date_spine.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_intervals_between" + }, + "macro.dbt_utils.default__get_powers_of_two": { + "arguments": [], + "created_at": 1733768712.1803598, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_powers_of_two(upper_bound) %}\n\n {% if upper_bound <= 0 %}\n {{ exceptions.raise_compiler_error(\"upper bound must be positive\") }}\n {% endif %}\n\n {% for _ in range(1, 100) %}\n {% if upper_bound <= 2 ** loop.index %}{{ return(loop.index) }}{% endif %}\n {% endfor %}\n\n{% endmacro %}", + "meta": {}, + "name": "default__get_powers_of_two", + "original_file_path": "macros/sql/generate_series.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/generate_series.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_powers_of_two" + }, + "macro.dbt_utils.default__get_query_results_as_dict": { + "arguments": [], + "created_at": 1733768712.210588, + "depends_on": { + "macros": [ + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_query_results_as_dict(query) %}\n\n{# This macro returns a dictionary of the form {column_name: (tuple_of_results)} #}\n\n {%- call statement('get_query_results', fetch_result=True,auto_begin=false) -%}\n\n {{ query }}\n\n {%- endcall -%}\n\n {% set sql_results={} %}\n\n {%- if execute -%}\n {% set sql_results_table = load_result('get_query_results').table.columns %}\n {% for column_name, column in sql_results_table.items() %}\n {% do sql_results.update({column_name: column.values()}) %}\n {% endfor %}\n {%- endif -%}\n\n {{ return(sql_results) }}\n\n{% endmacro %}", + "meta": {}, + "name": "default__get_query_results_as_dict", + "original_file_path": "macros/sql/get_query_results_as_dict.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_query_results_as_dict.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_query_results_as_dict" + }, + "macro.dbt_utils.default__get_relations_by_pattern": { + "arguments": [], + "created_at": 1733768712.179136, + "depends_on": { + "macros": [ + "macro.dbt.statement", + "macro.dbt_utils.get_tables_by_pattern_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_relations_by_pattern(schema_pattern, table_pattern, exclude='', database=target.database) %}\n\n {%- call statement('get_tables', fetch_result=True) %}\n\n {{ dbt_utils.get_tables_by_pattern_sql(schema_pattern, table_pattern, exclude, database) }}\n\n {%- endcall -%}\n\n {%- set table_list = load_result('get_tables') -%}\n\n {%- if table_list and table_list['table'] -%}\n {%- set tbl_relations = [] -%}\n {%- for row in table_list['table'] -%}\n {%- set tbl_relation = api.Relation.create(\n database=database,\n schema=row.table_schema,\n identifier=row.table_name,\n type=row.table_type\n ) -%}\n {%- do tbl_relations.append(tbl_relation) -%}\n {%- endfor -%}\n\n {{ return(tbl_relations) }}\n {%- else -%}\n {{ return([]) }}\n {%- endif -%}\n\n{% endmacro %}", + "meta": {}, + "name": "default__get_relations_by_pattern", + "original_file_path": "macros/sql/get_relations_by_pattern.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_relations_by_pattern.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_relations_by_pattern" + }, + "macro.dbt_utils.default__get_relations_by_prefix": { + "arguments": [], + "created_at": 1733768712.182445, + "depends_on": { + "macros": [ + "macro.dbt.statement", + "macro.dbt_utils.get_tables_by_prefix_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_relations_by_prefix(schema, prefix, exclude='', database=target.database) %}\n\n {%- call statement('get_tables', fetch_result=True) %}\n\n {{ dbt_utils.get_tables_by_prefix_sql(schema, prefix, exclude, database) }}\n\n {%- endcall -%}\n\n {%- set table_list = load_result('get_tables') -%}\n\n {%- if table_list and table_list['table'] -%}\n {%- set tbl_relations = [] -%}\n {%- for row in table_list['table'] -%}\n {%- set tbl_relation = api.Relation.create(\n database=database,\n schema=row.table_schema,\n identifier=row.table_name,\n type=row.table_type\n ) -%}\n {%- do tbl_relations.append(tbl_relation) -%}\n {%- endfor -%}\n\n {{ return(tbl_relations) }}\n {%- else -%}\n {{ return([]) }}\n {%- endif -%}\n\n{% endmacro %}", + "meta": {}, + "name": "default__get_relations_by_prefix", + "original_file_path": "macros/sql/get_relations_by_prefix.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_relations_by_prefix.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_relations_by_prefix" + }, + "macro.dbt_utils.default__get_single_value": { + "arguments": [], + "created_at": 1733768712.2137752, + "depends_on": { + "macros": [ + "macro.dbt.statement" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_single_value(query, default) %}\n\n{# This macro returns the (0, 0) record in a query, i.e. the first row of the first column #}\n\n {%- call statement('get_query_result', fetch_result=True, auto_begin=false) -%}\n\n {{ query }}\n\n {%- endcall -%}\n\n {%- if execute -%}\n\n {% set r = load_result('get_query_result').table.columns[0].values() %}\n {% if r | length == 0 %}\n {% do print('Query `' ~ query ~ '` returned no rows. Using the default value: ' ~ default) %}\n {% set sql_result = default %}\n {% else %}\n {% set sql_result = r[0] %}\n {% endif %}\n \n {%- else -%}\n \n {% set sql_result = default %}\n \n {%- endif -%}\n\n {% do return(sql_result) %}\n\n{% endmacro %}", + "meta": {}, + "name": "default__get_single_value", + "original_file_path": "macros/sql/get_single_value.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_single_value.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_single_value" + }, + "macro.dbt_utils.default__get_table_types_sql": { + "arguments": [], + "created_at": 1733768712.212277, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_table_types_sql() %}\n case table_type\n when 'BASE TABLE' then 'table'\n when 'EXTERNAL TABLE' then 'external'\n when 'MATERIALIZED VIEW' then 'materializedview'\n else lower(table_type)\n end as {{ adapter.quote('table_type') }}\n{% endmacro %}", + "meta": {}, + "name": "default__get_table_types_sql", + "original_file_path": "macros/sql/get_table_types_sql.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_table_types_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_table_types_sql" + }, + "macro.dbt_utils.default__get_tables_by_pattern_sql": { + "arguments": [], + "created_at": 1733768712.201783, + "depends_on": { + "macros": [ + "macro.dbt_utils.get_table_types_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_tables_by_pattern_sql(schema_pattern, table_pattern, exclude='', database=target.database) %}\n\n select distinct\n table_schema as {{ adapter.quote('table_schema') }},\n table_name as {{ adapter.quote('table_name') }},\n {{ dbt_utils.get_table_types_sql() }}\n from {{ database }}.information_schema.tables\n where table_schema ilike '{{ schema_pattern }}'\n and table_name ilike '{{ table_pattern }}'\n and table_name not ilike '{{ exclude }}'\n\n{% endmacro %}", + "meta": {}, + "name": "default__get_tables_by_pattern_sql", + "original_file_path": "macros/sql/get_tables_by_pattern_sql.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_tables_by_pattern_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_tables_by_pattern_sql" + }, + "macro.dbt_utils.default__get_tables_by_prefix_sql": { + "arguments": [], + "created_at": 1733768712.1830761, + "depends_on": { + "macros": [ + "macro.dbt_utils.get_tables_by_pattern_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_tables_by_prefix_sql(schema, prefix, exclude='', database=target.database) %}\n\n {{ dbt_utils.get_tables_by_pattern_sql(\n schema_pattern = schema,\n table_pattern = prefix ~ '%',\n exclude = exclude,\n database = database\n ) }}\n \n{% endmacro %}", + "meta": {}, + "name": "default__get_tables_by_prefix_sql", + "original_file_path": "macros/sql/get_tables_by_prefix_sql.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_tables_by_prefix_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_tables_by_prefix_sql" + }, + "macro.dbt_utils.default__get_url_host": { + "arguments": [], + "created_at": 1733768712.146198, + "depends_on": { + "macros": [ + "macro.dbt.split_part", + "macro.dbt.replace", + "macro.dbt.safe_cast", + "macro.dbt.type_string" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_url_host(field) -%}\n\n{%- set parsed =\n dbt.split_part(\n dbt.split_part(\n dbt.replace(\n dbt.replace(\n dbt.replace(field, \"'android-app://'\", \"''\"\n ), \"'http://'\", \"''\"\n ), \"'https://'\", \"''\"\n ), \"'/'\", 1\n ), \"'?'\", 1\n )\n\n-%}\n\n\n {{ dbt.safe_cast(\n parsed,\n dbt.type_string()\n )}}\n\n{%- endmacro %}", + "meta": {}, + "name": "default__get_url_host", + "original_file_path": "macros/web/get_url_host.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/web/get_url_host.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_url_host" + }, + "macro.dbt_utils.default__get_url_parameter": { + "arguments": [], + "created_at": 1733768712.1479151, + "depends_on": { + "macros": [ + "macro.dbt.split_part" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_url_parameter(field, url_parameter) -%}\n\n{%- set formatted_url_parameter = \"'\" + url_parameter + \"='\" -%}\n\n{%- set split = dbt.split_part(dbt.split_part(field, formatted_url_parameter, 2), \"'&'\", 1) -%}\n\nnullif({{ split }},'')\n\n{%- endmacro %}", + "meta": {}, + "name": "default__get_url_parameter", + "original_file_path": "macros/web/get_url_parameter.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/web/get_url_parameter.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_url_parameter" + }, + "macro.dbt_utils.default__get_url_path": { + "arguments": [], + "created_at": 1733768712.147267, + "depends_on": { + "macros": [ + "macro.dbt.replace", + "macro.dbt.position", + "macro.dbt.split_part", + "macro.dbt.right", + "macro.dbt.length", + "macro.dbt.safe_cast", + "macro.dbt.type_string" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__get_url_path(field) -%}\n\n {%- set stripped_url =\n dbt.replace(\n dbt.replace(field, \"'http://'\", \"''\"), \"'https://'\", \"''\")\n -%}\n\n {%- set first_slash_pos -%}\n coalesce(\n nullif({{ dbt.position(\"'/'\", stripped_url) }}, 0),\n {{ dbt.position(\"'?'\", stripped_url) }} - 1\n )\n {%- endset -%}\n\n {%- set parsed_path =\n dbt.split_part(\n dbt.right(\n stripped_url,\n dbt.length(stripped_url) ~ \"-\" ~ first_slash_pos\n ),\n \"'?'\", 1\n )\n -%}\n\n {{ dbt.safe_cast(\n parsed_path,\n dbt.type_string()\n )}}\n\n{%- endmacro %}", + "meta": {}, + "name": "default__get_url_path", + "original_file_path": "macros/web/get_url_path.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/web/get_url_path.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__get_url_path" + }, + "macro.dbt_utils.default__group_by": { + "arguments": [], + "created_at": 1733768712.19604, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro default__group_by(n) -%}\n\n group by {% for i in range(1, n + 1) -%}\n {{ i }}{{ ',' if not loop.last }} \n {%- endfor -%}\n\n{%- endmacro -%}", + "meta": {}, + "name": "default__group_by", + "original_file_path": "macros/sql/groupby.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/groupby.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__group_by" + }, + "macro.dbt_utils.default__haversine_distance": { + "arguments": [], + "created_at": 1733768712.215644, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__haversine_distance(lat1, lon1, lat2, lon2, unit='mi') -%}\n{%- if unit == 'mi' %}\n {% set conversion_rate = 1 %}\n{% elif unit == 'km' %}\n {% set conversion_rate = 1.60934 %}\n{% else %}\n {{ exceptions.raise_compiler_error(\"unit input must be one of 'mi' or 'km'. Got \" ~ unit) }}\n{% endif %}\n\n 2 * 3961 * asin(sqrt(power((sin(radians(({{ lat2 }} - {{ lat1 }}) / 2))), 2) +\n cos(radians({{lat1}})) * cos(radians({{lat2}})) *\n power((sin(radians(({{ lon2 }} - {{ lon1 }}) / 2))), 2))) * {{ conversion_rate }}\n\n{%- endmacro %}", + "meta": {}, + "name": "default__haversine_distance", + "original_file_path": "macros/sql/haversine_distance.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/haversine_distance.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__haversine_distance" + }, + "macro.dbt_utils.default__log_info": { + "arguments": [], + "created_at": 1733768712.17303, + "depends_on": { + "macros": [ + "macro.dbt_utils.pretty_log_format" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__log_info(message) %}\n {{ log(dbt_utils.pretty_log_format(message), info=True) }}\n{% endmacro %}", + "meta": {}, + "name": "default__log_info", + "original_file_path": "macros/jinja_helpers/log_info.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/jinja_helpers/log_info.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__log_info" + }, + "macro.dbt_utils.default__nullcheck": { + "arguments": [], + "created_at": 1733768712.199714, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__nullcheck(cols) %}\n{%- for col in cols %}\n\n {% if col.is_string() -%}\n\n nullif({{col.name}},'') as {{col.name}}\n\n {%- else -%}\n\n {{col.name}}\n\n {%- endif -%}\n\n{%- if not loop.last -%} , {%- endif -%}\n\n{%- endfor -%}\n{% endmacro %}", + "meta": {}, + "name": "default__nullcheck", + "original_file_path": "macros/sql/nullcheck.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/nullcheck.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__nullcheck" + }, + "macro.dbt_utils.default__nullcheck_table": { + "arguments": [], + "created_at": 1733768712.1775832, + "depends_on": { + "macros": [ + "macro.dbt_utils._is_relation", + "macro.dbt_utils._is_ephemeral", + "macro.dbt_utils.nullcheck" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__nullcheck_table(relation) %}\n\n {%- do dbt_utils._is_relation(relation, 'nullcheck_table') -%}\n {%- do dbt_utils._is_ephemeral(relation, 'nullcheck_table') -%}\n {% set cols = adapter.get_columns_in_relation(relation) %}\n\n select {{ dbt_utils.nullcheck(cols) }}\n from {{relation}}\n\n{% endmacro %}", + "meta": {}, + "name": "default__nullcheck_table", + "original_file_path": "macros/sql/nullcheck_table.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/nullcheck_table.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__nullcheck_table" + }, + "macro.dbt_utils.default__pivot": { + "arguments": [], + "created_at": 1733768712.2071738, + "depends_on": { + "macros": [ + "macro.dbt.escape_single_quotes", + "macro.dbt_utils.slugify" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__pivot(column,\n values,\n alias=True,\n agg='sum',\n cmp='=',\n prefix='',\n suffix='',\n then_value=1,\n else_value=0,\n quote_identifiers=True,\n distinct=False) %}\n {% for value in values %}\n {{ agg }}(\n {% if distinct %} distinct {% endif %}\n case\n when {{ column }} {{ cmp }} '{{ dbt.escape_single_quotes(value) }}'\n then {{ then_value }}\n else {{ else_value }}\n end\n )\n {% if alias %}\n {% if quote_identifiers %}\n as {{ adapter.quote(prefix ~ value ~ suffix) }}\n {% else %}\n as {{ dbt_utils.slugify(prefix ~ value ~ suffix) }}\n {% endif %}\n {% endif %}\n {% if not loop.last %},{% endif %}\n {% endfor %}\n{% endmacro %}", + "meta": {}, + "name": "default__pivot", + "original_file_path": "macros/sql/pivot.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/pivot.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__pivot" + }, + "macro.dbt_utils.default__pretty_log_format": { + "arguments": [], + "created_at": 1733768712.1717901, + "depends_on": { + "macros": [ + "macro.dbt_utils.pretty_time" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__pretty_log_format(message) %}\n {{ return( dbt_utils.pretty_time() ~ ' + ' ~ message) }}\n{% endmacro %}", + "meta": {}, + "name": "default__pretty_log_format", + "original_file_path": "macros/jinja_helpers/pretty_log_format.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/jinja_helpers/pretty_log_format.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__pretty_log_format" + }, + "macro.dbt_utils.default__pretty_time": { + "arguments": [], + "created_at": 1733768712.172632, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__pretty_time(format='%H:%M:%S') %}\n {{ return(modules.datetime.datetime.now().strftime(format)) }}\n{% endmacro %}", + "meta": {}, + "name": "default__pretty_time", + "original_file_path": "macros/jinja_helpers/pretty_time.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/jinja_helpers/pretty_time.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__pretty_time" + }, + "macro.dbt_utils.default__safe_add": { + "arguments": [], + "created_at": 1733768712.1990988, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro default__safe_add(field_list) -%}\n\n{%- if field_list is not iterable or field_list is string or field_list is mapping -%}\n\n{%- set error_message = '\nWarning: the `safe_add` macro now takes a single list argument instead of \\\nstring arguments. The {}.{} model triggered this warning. \\\n'.format(model.package_name, model.name) -%}\n\n{%- do exceptions.warn(error_message) -%}\n\n{%- endif -%}\n\n{% set fields = [] %}\n\n{%- for field in field_list -%}\n\n {% do fields.append(\"coalesce(\" ~ field ~ \", 0)\") %}\n\n{%- endfor -%}\n\n{{ fields|join(' +\\n ') }}\n\n{%- endmacro -%}", + "meta": {}, + "name": "default__safe_add", + "original_file_path": "macros/sql/safe_add.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/safe_add.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__safe_add" + }, + "macro.dbt_utils.default__safe_divide": { + "arguments": [], + "created_at": 1733768712.189014, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__safe_divide(numerator, denominator) %}\n ( {{ numerator }} ) / nullif( ( {{ denominator }} ), 0)\n{% endmacro %}", + "meta": {}, + "name": "default__safe_divide", + "original_file_path": "macros/sql/safe_divide.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/safe_divide.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__safe_divide" + }, + "macro.dbt_utils.default__safe_subtract": { + "arguments": [], + "created_at": 1733768712.176975, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro default__safe_subtract(field_list) -%}\n\n{%- if field_list is not iterable or field_list is string or field_list is mapping -%}\n\n{%- set error_message = '\nWarning: the `safe_subtract` macro takes a single list argument instead of \\\nstring arguments. The {}.{} model triggered this warning. \\\n'.format(model.package_name, model.name) -%}\n\n{%- do exceptions.raise_compiler_error(error_message) -%}\n\n{%- endif -%}\n\n{% set fields = [] %}\n\n{%- for field in field_list -%}\n\n {% do fields.append(\"coalesce(\" ~ field ~ \", 0)\") %}\n\n{%- endfor -%}\n\n{{ fields|join(' -\\n ') }}\n\n{%- endmacro -%}", + "meta": {}, + "name": "default__safe_subtract", + "original_file_path": "macros/sql/safe_subtract.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/safe_subtract.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__safe_subtract" + }, + "macro.dbt_utils.default__star": { + "arguments": [], + "created_at": 1733768712.185656, + "depends_on": { + "macros": [ + "macro.dbt_utils._is_relation", + "macro.dbt_utils._is_ephemeral", + "macro.dbt_utils.get_filtered_columns_in_relation" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__star(from, relation_alias=False, except=[], prefix='', suffix='', quote_identifiers=True) -%}\r\n {%- do dbt_utils._is_relation(from, 'star') -%}\r\n {%- do dbt_utils._is_ephemeral(from, 'star') -%}\r\n\r\n {#-- Prevent querying of db in parsing mode. This works because this macro does not create any new refs. #}\r\n {%- if not execute -%}\r\n {% do return('*') %}\r\n {%- endif -%}\r\n\r\n {% set cols = dbt_utils.get_filtered_columns_in_relation(from, except) %}\r\n\r\n {%- if cols|length <= 0 -%}\r\n {% if flags.WHICH == 'compile' %}\r\n {% set response %}\r\n*\r\n/* No columns were returned. Maybe the relation doesn't exist yet \r\nor all columns were excluded. This star is only output during \r\ndbt compile, and exists to keep SQLFluff happy. */\r\n {% endset %}\r\n {% do return(response) %}\r\n {% else %}\r\n {% do return(\"/* no columns returned from star() macro */\") %}\r\n {% endif %}\r\n {%- else -%}\r\n {%- for col in cols %}\r\n {%- if relation_alias %}{{ relation_alias }}.{% else %}{%- endif -%}\r\n {%- if quote_identifiers -%}\r\n {{ adapter.quote(col)|trim }} {%- if prefix!='' or suffix!='' %} as {{ adapter.quote(prefix ~ col ~ suffix)|trim }} {%- endif -%}\r\n {%- else -%}\r\n {{ col|trim }} {%- if prefix!='' or suffix!='' %} as {{ (prefix ~ col ~ suffix)|trim }} {%- endif -%}\r\n {% endif %}\r\n {%- if not loop.last %},{{ '\\n ' }}{%- endif -%}\r\n {%- endfor -%}\r\n {% endif %}\r\n{%- endmacro %}", + "meta": {}, + "name": "default__star", + "original_file_path": "macros/sql/star.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/star.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__star" + }, + "macro.dbt_utils.default__surrogate_key": { + "arguments": [], + "created_at": 1733768712.198252, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro default__surrogate_key(field_list) -%}\n\n{%- set error_message = '\nWarning: `dbt_utils.surrogate_key` has been replaced by \\\n`dbt_utils.generate_surrogate_key`. The new macro treats null values \\\ndifferently to empty strings. To restore the behaviour of the original \\\nmacro, add a global variable in dbt_project.yml called \\\n`surrogate_key_treat_nulls_as_empty_strings` to your \\\ndbt_project.yml file with a value of True. \\\nThe {}.{} model triggered this warning. \\\n'.format(model.package_name, model.name) -%}\n\n{%- do exceptions.raise_compiler_error(error_message) -%}\n\n{%- endmacro -%}", + "meta": {}, + "name": "default__surrogate_key", + "original_file_path": "macros/sql/surrogate_key.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/surrogate_key.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__surrogate_key" + }, + "macro.dbt_utils.default__test_accepted_range": { + "arguments": [], + "created_at": 1733768712.1561139, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_accepted_range(model, column_name, min_value=none, max_value=none, inclusive=true) %}\n\nwith meet_condition as(\n select *\n from {{ model }}\n),\n\nvalidation_errors as (\n select *\n from meet_condition\n where\n -- never true, defaults to an empty result set. Exists to ensure any combo of the `or` clauses below succeeds\n 1 = 2\n\n {%- if min_value is not none %}\n -- records with a value >= min_value are permitted. The `not` flips this to find records that don't meet the rule.\n or not {{ column_name }} > {{- \"=\" if inclusive }} {{ min_value }}\n {%- endif %}\n\n {%- if max_value is not none %}\n -- records with a value <= max_value are permitted. The `not` flips this to find records that don't meet the rule.\n or not {{ column_name }} < {{- \"=\" if inclusive }} {{ max_value }}\n {%- endif %}\n)\n\nselect *\nfrom validation_errors\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_accepted_range", + "original_file_path": "macros/generic_tests/accepted_range.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/accepted_range.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_accepted_range" + }, + "macro.dbt_utils.default__test_at_least_one": { + "arguments": [], + "created_at": 1733768712.158407, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_at_least_one(model, column_name, group_by_columns) %}\n\n{% set pruned_cols = [column_name] %}\n\n{% if group_by_columns|length() > 0 %}\n\n {% set select_gb_cols = group_by_columns|join(' ,') + ', ' %}\n {% set groupby_gb_cols = 'group by ' + group_by_columns|join(',') %}\n {% set pruned_cols = group_by_columns %}\n\n {% if column_name not in pruned_cols %}\n {% do pruned_cols.append(column_name) %}\n {% endif %}\n\n{% endif %}\n\n{% set select_pruned_cols = pruned_cols|join(' ,') %}\n\nselect *\nfrom (\n with pruned_rows as (\n select\n {{ select_pruned_cols }}\n from {{ model }}\n where {{ column_name }} is not null\n limit 1\n )\n select\n {# In TSQL, subquery aggregate columns need aliases #}\n {# thus: a filler col name, 'filler_column' #}\n {{select_gb_cols}}\n count({{ column_name }}) as filler_column\n\n from pruned_rows\n\n {{groupby_gb_cols}}\n\n having count({{ column_name }}) = 0\n\n) validation_errors\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_at_least_one", + "original_file_path": "macros/generic_tests/at_least_one.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/at_least_one.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_at_least_one" + }, + "macro.dbt_utils.default__test_cardinality_equality": { + "arguments": [], + "created_at": 1733768712.1604521, + "depends_on": { + "macros": [ + "macro.dbt.except" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_cardinality_equality(model, column_name, to, field) %}\n\n{# T-SQL does not let you use numbers as aliases for columns #}\n{# Thus, no \"GROUP BY 1\" #}\n\nwith table_a as (\nselect\n {{ column_name }},\n count(*) as num_rows\nfrom {{ model }}\ngroup by {{ column_name }}\n),\n\ntable_b as (\nselect\n {{ field }},\n count(*) as num_rows\nfrom {{ to }}\ngroup by {{ field }}\n),\n\nexcept_a as (\n select *\n from table_a\n {{ dbt.except() }}\n select *\n from table_b\n),\n\nexcept_b as (\n select *\n from table_b\n {{ dbt.except() }}\n select *\n from table_a\n),\n\nunioned as (\n select *\n from except_a\n union all\n select *\n from except_b\n)\n\nselect *\nfrom unioned\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_cardinality_equality", + "original_file_path": "macros/generic_tests/cardinality_equality.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/cardinality_equality.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_cardinality_equality" + }, + "macro.dbt_utils.default__test_equal_rowcount": { + "arguments": [], + "created_at": 1733768712.151708, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_equal_rowcount(model, compare_model, group_by_columns) %}\n\n{#-- Needs to be set at parse time, before we return '' below --#}\n{{ config(fail_calc = 'sum(coalesce(diff_count, 0))') }}\n\n{#-- Prevent querying of db in parsing mode. This works because this macro does not create any new refs. #}\n{%- if not execute -%}\n {{ return('') }}\n{% endif %}\n\n{% if group_by_columns|length() > 0 %}\n {% set select_gb_cols = group_by_columns|join(', ') + ', ' %}\n {% set join_gb_cols %}\n {% for c in group_by_columns %}\n and a.{{c}} = b.{{c}}\n {% endfor %}\n {% endset %}\n {% set groupby_gb_cols = 'group by ' + group_by_columns|join(',') %}\n{% endif %}\n\n{#-- We must add a fake join key in case additional grouping variables are not provided --#}\n{#-- Redshift does not allow for dynamically created join conditions (e.g. full join on 1 = 1 --#}\n{#-- The same logic is used in fewer_rows_than. In case of changes, maintain consistent logic --#}\n{% set group_by_columns = ['id_dbtutils_test_equal_rowcount'] + group_by_columns %}\n{% set groupby_gb_cols = 'group by ' + group_by_columns|join(',') %}\n\nwith a as (\n\n select \n {{select_gb_cols}}\n 1 as id_dbtutils_test_equal_rowcount,\n count(*) as count_a \n from {{ model }}\n {{groupby_gb_cols}}\n\n\n),\nb as (\n\n select \n {{select_gb_cols}}\n 1 as id_dbtutils_test_equal_rowcount,\n count(*) as count_b \n from {{ compare_model }}\n {{groupby_gb_cols}}\n\n),\nfinal as (\n\n select\n \n {% for c in group_by_columns -%}\n a.{{c}} as {{c}}_a,\n b.{{c}} as {{c}}_b,\n {% endfor %}\n\n count_a,\n count_b,\n abs(count_a - count_b) as diff_count\n\n from a\n full join b\n on\n a.id_dbtutils_test_equal_rowcount = b.id_dbtutils_test_equal_rowcount\n {{join_gb_cols}}\n\n\n)\n\nselect * from final\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_equal_rowcount", + "original_file_path": "macros/generic_tests/equal_rowcount.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/equal_rowcount.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_equal_rowcount" + }, + "macro.dbt_utils.default__test_equality": { + "arguments": [], + "created_at": 1733768712.165611, + "depends_on": { + "macros": [ + "macro.dbt_utils._is_relation", + "macro.dbt_utils._is_ephemeral", + "macro.dbt.except" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_equality(model, compare_model, compare_columns=None) %}\n\n{% set set_diff %}\n count(*) + coalesce(abs(\n sum(case when which_diff = 'a_minus_b' then 1 else 0 end) -\n sum(case when which_diff = 'b_minus_a' then 1 else 0 end)\n ), 0)\n{% endset %}\n\n{#-- Needs to be set at parse time, before we return '' below --#}\n{{ config(fail_calc = set_diff) }}\n\n{#-- Prevent querying of db in parsing mode. This works because this macro does not create any new refs. #}\n{%- if not execute -%}\n {{ return('') }}\n{% endif %}\n\n-- setup\n{%- do dbt_utils._is_relation(model, 'test_equality') -%}\n\n{#-\nIf the compare_cols arg is provided, we can run this test without querying the\ninformation schema\u00a0\u2014 this allows the model to be an ephemeral model\n-#}\n\n{%- if not compare_columns -%}\n {%- do dbt_utils._is_ephemeral(model, 'test_equality') -%}\n {%- set compare_columns = adapter.get_columns_in_relation(model) | map(attribute='quoted') -%}\n{%- endif -%}\n\n{% set compare_cols_csv = compare_columns | join(', ') %}\n\nwith a as (\n\n select * from {{ model }}\n\n),\n\nb as (\n\n select * from {{ compare_model }}\n\n),\n\na_minus_b as (\n\n select {{compare_cols_csv}} from a\n {{ dbt.except() }}\n select {{compare_cols_csv}} from b\n\n),\n\nb_minus_a as (\n\n select {{compare_cols_csv}} from b\n {{ dbt.except() }}\n select {{compare_cols_csv}} from a\n\n),\n\nunioned as (\n\n select 'a_minus_b' as which_diff, a_minus_b.* from a_minus_b\n union all\n select 'b_minus_a' as which_diff, b_minus_a.* from b_minus_a\n\n)\n\nselect * from unioned\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_equality", + "original_file_path": "macros/generic_tests/equality.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/equality.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_equality" + }, + "macro.dbt_utils.default__test_expression_is_true": { + "arguments": [], + "created_at": 1733768712.161143, + "depends_on": { + "macros": [ + "macro.dbt.should_store_failures" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_expression_is_true(model, expression, column_name) %}\n\n{% set column_list = '*' if should_store_failures() else \"1\" %}\n\nselect\n {{ column_list }}\nfrom {{ model }}\n{% if column_name is none %}\nwhere not({{ expression }})\n{%- else %}\nwhere not({{ column_name }} {{ expression }})\n{%- endif %}\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_expression_is_true", + "original_file_path": "macros/generic_tests/expression_is_true.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/expression_is_true.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_expression_is_true" + }, + "macro.dbt_utils.default__test_fewer_rows_than": { + "arguments": [], + "created_at": 1733768712.149914, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_fewer_rows_than(model, compare_model, group_by_columns) %}\n\n{{ config(fail_calc = 'sum(coalesce(row_count_delta, 0))') }}\n\n{% if group_by_columns|length() > 0 %}\n {% set select_gb_cols = group_by_columns|join(' ,') + ', ' %}\n {% set join_gb_cols %}\n {% for c in group_by_columns %}\n and a.{{c}} = b.{{c}}\n {% endfor %}\n {% endset %}\n {% set groupby_gb_cols = 'group by ' + group_by_columns|join(',') %}\n{% endif %}\n\n{#-- We must add a fake join key in case additional grouping variables are not provided --#}\n{#-- Redshift does not allow for dynamically created join conditions (e.g. full join on 1 = 1 --#}\n{#-- The same logic is used in equal_rowcount. In case of changes, maintain consistent logic --#}\n{% set group_by_columns = ['id_dbtutils_test_fewer_rows_than'] + group_by_columns %}\n{% set groupby_gb_cols = 'group by ' + group_by_columns|join(',') %}\n\n\nwith a as (\n\n select \n {{select_gb_cols}}\n 1 as id_dbtutils_test_fewer_rows_than,\n count(*) as count_our_model \n from {{ model }}\n {{ groupby_gb_cols }}\n\n),\nb as (\n\n select \n {{select_gb_cols}}\n 1 as id_dbtutils_test_fewer_rows_than,\n count(*) as count_comparison_model \n from {{ compare_model }}\n {{ groupby_gb_cols }}\n\n),\ncounts as (\n\n select\n\n {% for c in group_by_columns -%}\n a.{{c}} as {{c}}_a,\n b.{{c}} as {{c}}_b,\n {% endfor %}\n\n count_our_model,\n count_comparison_model\n from a\n full join b on \n a.id_dbtutils_test_fewer_rows_than = b.id_dbtutils_test_fewer_rows_than\n {{ join_gb_cols }}\n\n),\nfinal as (\n\n select *,\n case\n -- fail the test if we have more rows than the reference model and return the row count delta\n when count_our_model > count_comparison_model then (count_our_model - count_comparison_model)\n -- fail the test if they are the same number\n when count_our_model = count_comparison_model then 1\n -- pass the test if the delta is positive (i.e. return the number 0)\n else 0\n end as row_count_delta\n from counts\n\n)\n\nselect * from final\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_fewer_rows_than", + "original_file_path": "macros/generic_tests/fewer_rows_than.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/fewer_rows_than.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_fewer_rows_than" + }, + "macro.dbt_utils.default__test_mutually_exclusive_ranges": { + "arguments": [], + "created_at": 1733768712.171369, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_mutually_exclusive_ranges(model, lower_bound_column, upper_bound_column, partition_by=None, gaps='allowed', zero_length_range_allowed=False) %}\n{% if gaps == 'not_allowed' %}\n {% set allow_gaps_operator='=' %}\n {% set allow_gaps_operator_in_words='equal_to' %}\n{% elif gaps == 'allowed' %}\n {% set allow_gaps_operator='<=' %}\n {% set allow_gaps_operator_in_words='less_than_or_equal_to' %}\n{% elif gaps == 'required' %}\n {% set allow_gaps_operator='<' %}\n {% set allow_gaps_operator_in_words='less_than' %}\n{% else %}\n {{ exceptions.raise_compiler_error(\n \"`gaps` argument for mutually_exclusive_ranges test must be one of ['not_allowed', 'allowed', 'required'] Got: '\" ~ gaps ~\"'.'\"\n ) }}\n{% endif %}\n{% if not zero_length_range_allowed %}\n {% set allow_zero_length_operator='<' %}\n {% set allow_zero_length_operator_in_words='less_than' %}\n{% elif zero_length_range_allowed %}\n {% set allow_zero_length_operator='<=' %}\n {% set allow_zero_length_operator_in_words='less_than_or_equal_to' %}\n{% else %}\n {{ exceptions.raise_compiler_error(\n \"`zero_length_range_allowed` argument for mutually_exclusive_ranges test must be one of [true, false] Got: '\" ~ zero_length_range_allowed ~\"'.'\"\n ) }}\n{% endif %}\n\n{% set partition_clause=\"partition by \" ~ partition_by if partition_by else '' %}\n\nwith window_functions as (\n\n select\n {% if partition_by %}\n {{ partition_by }} as partition_by_col,\n {% endif %}\n {{ lower_bound_column }} as lower_bound,\n {{ upper_bound_column }} as upper_bound,\n\n lead({{ lower_bound_column }}) over (\n {{ partition_clause }}\n order by {{ lower_bound_column }}, {{ upper_bound_column }}\n ) as next_lower_bound,\n\n row_number() over (\n {{ partition_clause }}\n order by {{ lower_bound_column }} desc, {{ upper_bound_column }} desc\n ) = 1 as is_last_record\n\n from {{ model }}\n\n),\n\ncalc as (\n -- We want to return records where one of our assumptions fails, so we'll use\n -- the `not` function with `and` statements so we can write our assumptions more cleanly\n select\n *,\n\n -- For each record: lower_bound should be < upper_bound.\n -- Coalesce it to return an error on the null case (implicit assumption\n -- these columns are not_null)\n coalesce(\n lower_bound {{ allow_zero_length_operator }} upper_bound,\n false\n ) as lower_bound_{{ allow_zero_length_operator_in_words }}_upper_bound,\n\n -- For each record: upper_bound {{ allow_gaps_operator }} the next lower_bound.\n -- Coalesce it to handle null cases for the last record.\n coalesce(\n upper_bound {{ allow_gaps_operator }} next_lower_bound,\n is_last_record,\n false\n ) as upper_bound_{{ allow_gaps_operator_in_words }}_next_lower_bound\n\n from window_functions\n\n),\n\nvalidation_errors as (\n\n select\n *\n from calc\n\n where not(\n -- THE FOLLOWING SHOULD BE TRUE --\n lower_bound_{{ allow_zero_length_operator_in_words }}_upper_bound\n and upper_bound_{{ allow_gaps_operator_in_words }}_next_lower_bound\n )\n)\n\nselect * from validation_errors\n{% endmacro %}", + "meta": {}, + "name": "default__test_mutually_exclusive_ranges", + "original_file_path": "macros/generic_tests/mutually_exclusive_ranges.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/mutually_exclusive_ranges.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_mutually_exclusive_ranges" + }, + "macro.dbt_utils.default__test_not_accepted_values": { + "arguments": [], + "created_at": 1733768712.157071, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_not_accepted_values(model, column_name, values, quote=True) %}\nwith all_values as (\n\n select distinct\n {{ column_name }} as value_field\n\n from {{ model }}\n\n),\n\nvalidation_errors as (\n\n select\n value_field\n\n from all_values\n where value_field in (\n {% for value in values -%}\n {% if quote -%}\n '{{ value }}'\n {%- else -%}\n {{ value }}\n {%- endif -%}\n {%- if not loop.last -%},{%- endif %}\n {%- endfor %}\n )\n\n)\n\nselect *\nfrom validation_errors\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_not_accepted_values", + "original_file_path": "macros/generic_tests/not_accepted_values.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/not_accepted_values.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_not_accepted_values" + }, + "macro.dbt_utils.default__test_not_constant": { + "arguments": [], + "created_at": 1733768712.155079, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_not_constant(model, column_name, group_by_columns) %}\n\n{% if group_by_columns|length() > 0 %}\n {% set select_gb_cols = group_by_columns|join(' ,') + ', ' %}\n {% set groupby_gb_cols = 'group by ' + group_by_columns|join(',') %}\n{% endif %}\n\n\nselect\n {# In TSQL, subquery aggregate columns need aliases #}\n {# thus: a filler col name, 'filler_column' #}\n {{select_gb_cols}}\n count(distinct {{ column_name }}) as filler_column\n\nfrom {{ model }}\n\n {{groupby_gb_cols}}\n\nhaving count(distinct {{ column_name }}) = 1\n\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_not_constant", + "original_file_path": "macros/generic_tests/not_constant.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/not_constant.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_not_constant" + }, + "macro.dbt_utils.default__test_not_empty_string": { + "arguments": [], + "created_at": 1733768712.166371, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_not_empty_string(model, column_name, trim_whitespace=true) %}\n\n with\n \n all_values as (\n\n select \n\n\n {% if trim_whitespace == true -%}\n\n trim({{ column_name }}) as {{ column_name }}\n\n {%- else -%}\n\n {{ column_name }}\n\n {%- endif %}\n \n from {{ model }}\n\n ),\n\n errors as (\n\n select * from all_values\n where {{ column_name }} = ''\n\n )\n\n select * from errors\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_not_empty_string", + "original_file_path": "macros/generic_tests/not_empty_string.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/not_empty_string.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_not_empty_string" + }, + "macro.dbt_utils.default__test_not_null_proportion": { + "arguments": [], + "created_at": 1733768712.162483, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_not_null_proportion(model, group_by_columns) %}\n\n{% set column_name = kwargs.get('column_name', kwargs.get('arg')) %}\n{% set at_least = kwargs.get('at_least', kwargs.get('arg')) %}\n{% set at_most = kwargs.get('at_most', kwargs.get('arg', 1)) %}\n\n{% if group_by_columns|length() > 0 %}\n {% set select_gb_cols = group_by_columns|join(' ,') + ', ' %}\n {% set groupby_gb_cols = 'group by ' + group_by_columns|join(',') %}\n{% endif %}\n\nwith validation as (\n select\n {{select_gb_cols}}\n sum(case when {{ column_name }} is null then 0 else 1 end) / cast(count(*) as numeric) as not_null_proportion\n from {{ model }}\n {{groupby_gb_cols}}\n),\nvalidation_errors as (\n select\n {{select_gb_cols}}\n not_null_proportion\n from validation\n where not_null_proportion < {{ at_least }} or not_null_proportion > {{ at_most }}\n)\nselect\n *\nfrom validation_errors\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_not_null_proportion", + "original_file_path": "macros/generic_tests/not_null_proportion.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/not_null_proportion.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_not_null_proportion" + }, + "macro.dbt_utils.default__test_recency": { + "arguments": [], + "created_at": 1733768712.154061, + "depends_on": { + "macros": [ + "macro.dbt.dateadd", + "macro.dbt.current_timestamp", + "macro.dbt.type_timestamp" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_recency(model, field, datepart, interval, ignore_time_component, group_by_columns) %}\n\n{% set threshold = 'cast(' ~ dbt.dateadd(datepart, interval * -1, dbt.current_timestamp()) ~ ' as ' ~ ('date' if ignore_time_component else dbt.type_timestamp()) ~ ')' %}\n\n{% if group_by_columns|length() > 0 %}\n {% set select_gb_cols = group_by_columns|join(' ,') + ', ' %}\n {% set groupby_gb_cols = 'group by ' + group_by_columns|join(',') %}\n{% endif %}\n\n\nwith recency as (\n\n select \n\n {{ select_gb_cols }}\n {% if ignore_time_component %}\n cast(max({{ field }}) as date) as most_recent\n {%- else %}\n max({{ field }}) as most_recent\n {%- endif %}\n\n from {{ model }}\n\n {{ groupby_gb_cols }}\n\n)\n\nselect\n\n {{ select_gb_cols }}\n most_recent,\n {{ threshold }} as threshold\n\nfrom recency\nwhere most_recent < {{ threshold }}\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_recency", + "original_file_path": "macros/generic_tests/recency.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/recency.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_recency" + }, + "macro.dbt_utils.default__test_relationships_where": { + "arguments": [], + "created_at": 1733768712.152631, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_relationships_where(model, column_name, to, field, from_condition=\"1=1\", to_condition=\"1=1\") %}\n\n{# T-SQL has no boolean data type so we use 1=1 which returns TRUE #}\n{# ref https://stackoverflow.com/a/7170753/3842610 #}\n\nwith left_table as (\n\n select\n {{column_name}} as id\n\n from {{model}}\n\n where {{column_name}} is not null\n and {{from_condition}}\n\n),\n\nright_table as (\n\n select\n {{field}} as id\n\n from {{to}}\n\n where {{field}} is not null\n and {{to_condition}}\n\n),\n\nexceptions as (\n\n select\n left_table.id,\n right_table.id as right_id\n\n from left_table\n\n left join right_table\n on left_table.id = right_table.id\n\n where right_table.id is null\n\n)\n\nselect * from exceptions\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_relationships_where", + "original_file_path": "macros/generic_tests/relationships_where.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/relationships_where.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_relationships_where" + }, + "macro.dbt_utils.default__test_sequential_values": { + "arguments": [], + "created_at": 1733768712.164138, + "depends_on": { + "macros": [ + "macro.dbt_utils.slugify", + "macro.dbt.type_timestamp", + "macro.dbt.dateadd" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_sequential_values(model, column_name, interval=1, datepart=None, group_by_columns = []) %}\n\n{% set previous_column_name = \"previous_\" ~ dbt_utils.slugify(column_name) %}\n\n{% if group_by_columns|length() > 0 %}\n {% set select_gb_cols = group_by_columns|join(',') + ', ' %}\n {% set partition_gb_cols = 'partition by ' + group_by_columns|join(',') %}\n{% endif %}\n\nwith windowed as (\n\n select\n {{ select_gb_cols }}\n {{ column_name }},\n lag({{ column_name }}) over (\n {{partition_gb_cols}}\n order by {{ column_name }}\n ) as {{ previous_column_name }}\n from {{ model }}\n),\n\nvalidation_errors as (\n select\n *\n from windowed\n {% if datepart %}\n where not(cast({{ column_name }} as {{ dbt.type_timestamp() }})= cast({{ dbt.dateadd(datepart, interval, previous_column_name) }} as {{ dbt.type_timestamp() }}))\n {% else %}\n where not({{ column_name }} = {{ previous_column_name }} + {{ interval }})\n {% endif %}\n)\n\nselect *\nfrom validation_errors\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_sequential_values", + "original_file_path": "macros/generic_tests/sequential_values.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/sequential_values.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_sequential_values" + }, + "macro.dbt_utils.default__test_unique_combination_of_columns": { + "arguments": [], + "created_at": 1733768712.159636, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__test_unique_combination_of_columns(model, combination_of_columns, quote_columns=false) %}\n\n{% if not quote_columns %}\n {%- set column_list=combination_of_columns %}\n{% elif quote_columns %}\n {%- set column_list=[] %}\n {% for column in combination_of_columns -%}\n {% set column_list = column_list.append( adapter.quote(column) ) %}\n {%- endfor %}\n{% else %}\n {{ exceptions.raise_compiler_error(\n \"`quote_columns` argument for unique_combination_of_columns test must be one of [True, False] Got: '\" ~ quote ~\"'.'\"\n ) }}\n{% endif %}\n\n{%- set columns_csv=column_list | join(', ') %}\n\n\nwith validation_errors as (\n\n select\n {{ columns_csv }}\n from {{ model }}\n group by {{ columns_csv }}\n having count(*) > 1\n\n)\n\nselect *\nfrom validation_errors\n\n\n{% endmacro %}", + "meta": {}, + "name": "default__test_unique_combination_of_columns", + "original_file_path": "macros/generic_tests/unique_combination_of_columns.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/unique_combination_of_columns.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__test_unique_combination_of_columns" + }, + "macro.dbt_utils.default__union_relations": { + "arguments": [], + "created_at": 1733768712.1955168, + "depends_on": { + "macros": [ + "macro.dbt_utils._is_relation", + "macro.dbt_utils._is_ephemeral", + "macro.dbt.string_literal", + "macro.dbt.type_string" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n\n{%- macro default__union_relations(relations, column_override=none, include=[], exclude=[], source_column_name='_dbt_source_relation', where=none) -%}\n\n {%- if exclude and include -%}\n {{ exceptions.raise_compiler_error(\"Both an exclude and include list were provided to the `union` macro. Only one is allowed\") }}\n {%- endif -%}\n\n {#-- Prevent querying of db in parsing mode. This works because this macro does not create any new refs. -#}\n {%- if not execute %}\n {{ return('') }}\n {% endif -%}\n\n {%- set column_override = column_override if column_override is not none else {} -%}\n\n {%- set relation_columns = {} -%}\n {%- set column_superset = {} -%}\n {%- set all_excludes = [] -%}\n {%- set all_includes = [] -%}\n\n {%- if exclude -%}\n {%- for exc in exclude -%}\n {%- do all_excludes.append(exc | lower) -%}\n {%- endfor -%}\n {%- endif -%}\n\n {%- if include -%}\n {%- for inc in include -%}\n {%- do all_includes.append(inc | lower) -%}\n {%- endfor -%}\n {%- endif -%}\n\n {%- for relation in relations -%}\n\n {%- do relation_columns.update({relation: []}) -%}\n\n {%- do dbt_utils._is_relation(relation, 'union_relations') -%}\n {%- do dbt_utils._is_ephemeral(relation, 'union_relations') -%}\n {%- set cols = adapter.get_columns_in_relation(relation) -%}\n {%- for col in cols -%}\n\n {#- If an exclude list was provided and the column is in the list, do nothing -#}\n {%- if exclude and col.column | lower in all_excludes -%}\n\n {#- If an include list was provided and the column is not in the list, do nothing -#}\n {%- elif include and col.column | lower not in all_includes -%}\n\n {#- Otherwise add the column to the column superset -#}\n {%- else -%}\n\n {#- update the list of columns in this relation -#}\n {%- do relation_columns[relation].append(col.column) -%}\n\n {%- if col.column in column_superset -%}\n\n {%- set stored = column_superset[col.column] -%}\n {%- if col.is_string() and stored.is_string() and col.string_size() > stored.string_size() -%}\n\n {%- do column_superset.update({col.column: col}) -%}\n\n {%- endif %}\n\n {%- else -%}\n\n {%- do column_superset.update({col.column: col}) -%}\n\n {%- endif -%}\n\n {%- endif -%}\n\n {%- endfor -%}\n {%- endfor -%}\n\n {%- set ordered_column_names = column_superset.keys() -%}\n {%- set dbt_command = flags.WHICH -%}\n\n\n {% if dbt_command in ['run', 'build'] %}\n {% if (include | length > 0 or exclude | length > 0) and not column_superset.keys() %}\n {%- set relations_string -%}\n {%- for relation in relations -%}\n {{ relation.name }}\n {%- if not loop.last %}, {% endif -%}\n {%- endfor -%}\n {%- endset -%}\n\n {%- set error_message -%}\n There were no columns found to union for relations {{ relations_string }}\n {%- endset -%}\n\n {{ exceptions.raise_compiler_error(error_message) }}\n {%- endif -%}\n {%- endif -%}\n\n {%- for relation in relations %}\n\n (\n select\n\n {%- if source_column_name is not none %}\n cast({{ dbt.string_literal(relation) }} as {{ dbt.type_string() }}) as {{ source_column_name }},\n {%- endif %}\n\n {% for col_name in ordered_column_names -%}\n\n {%- set col = column_superset[col_name] %}\n {%- set col_type = column_override.get(col.column, col.data_type) %}\n {%- set col_name = adapter.quote(col_name) if col_name in relation_columns[relation] else 'null' %}\n cast({{ col_name }} as {{ col_type }}) as {{ col.quoted }} {% if not loop.last %},{% endif -%}\n\n {%- endfor %}\n\n from {{ relation }}\n\n {% if where -%}\n where {{ where }}\n {%- endif %}\n )\n\n {% if not loop.last -%}\n union all\n {% endif -%}\n\n {%- endfor -%}\n\n{%- endmacro -%}", + "meta": {}, + "name": "default__union_relations", + "original_file_path": "macros/sql/union.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/union.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__union_relations" + }, + "macro.dbt_utils.default__unpivot": { + "arguments": [], + "created_at": 1733768712.188548, + "depends_on": { + "macros": [ + "macro.dbt_utils._is_relation", + "macro.dbt_utils._is_ephemeral", + "macro.dbt.type_string", + "macro.dbt.cast_bool_to_text" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__unpivot(relation=none, cast_to='varchar', exclude=none, remove=none, field_name='field_name', value_name='value') -%}\n\n {% if not relation %}\n {{ exceptions.raise_compiler_error(\"Error: argument `relation` is required for `unpivot` macro.\") }}\n {% endif %}\n\n {%- set exclude = exclude if exclude is not none else [] %}\n {%- set remove = remove if remove is not none else [] %}\n\n {%- set include_cols = [] %}\n\n {%- set table_columns = {} %}\n\n {%- do table_columns.update({relation: []}) %}\n\n {%- do dbt_utils._is_relation(relation, 'unpivot') -%}\n {%- do dbt_utils._is_ephemeral(relation, 'unpivot') -%}\n {%- set cols = adapter.get_columns_in_relation(relation) %}\n\n {%- for col in cols -%}\n {%- if col.column.lower() not in remove|map('lower') and col.column.lower() not in exclude|map('lower') -%}\n {% do include_cols.append(col) %}\n {%- endif %}\n {%- endfor %}\n\n\n {%- for col in include_cols -%}\n select\n {%- for exclude_col in exclude %}\n {{ exclude_col }},\n {%- endfor %}\n\n cast('{{ col.column }}' as {{ dbt.type_string() }}) as {{ field_name }},\n cast( {% if col.data_type == 'boolean' %}\n {{ dbt.cast_bool_to_text(col.column) }}\n {% else %}\n {{ col.column }}\n {% endif %}\n as {{ cast_to }}) as {{ value_name }}\n\n from {{ relation }}\n\n {% if not loop.last -%}\n union all\n {% endif -%}\n {%- endfor -%}\n\n{%- endmacro %}", + "meta": {}, + "name": "default__unpivot", + "original_file_path": "macros/sql/unpivot.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/unpivot.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__unpivot" + }, + "macro.dbt_utils.default__width_bucket": { + "arguments": [], + "created_at": 1733768712.209457, + "depends_on": { + "macros": [ + "macro.dbt.safe_cast", + "macro.dbt.type_numeric" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro default__width_bucket(expr, min_value, max_value, num_buckets) -%}\n\n {% set bin_size -%}\n (( {{ max_value }} - {{ min_value }} ) / {{ num_buckets }} )\n {%- endset %}\n (\n -- to break ties when the amount is eaxtly at the bucket egde\n case\n when\n mod(\n {{ dbt.safe_cast(expr, dbt.type_numeric() ) }},\n {{ dbt.safe_cast(bin_size, dbt.type_numeric() ) }}\n ) = 0\n then 1\n else 0\n end\n ) +\n -- Anything over max_value goes the N+1 bucket\n least(\n ceil(\n ({{ expr }} - {{ min_value }})/{{ bin_size }}\n ),\n {{ num_buckets }} + 1\n )\n{%- endmacro %}", + "meta": {}, + "name": "default__width_bucket", + "original_file_path": "macros/sql/width_bucket.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/width_bucket.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.default__width_bucket" + }, + "macro.dbt_utils.degrees_to_radians": { + "arguments": [], + "created_at": 1733768712.21486, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro degrees_to_radians(degrees) -%}\n acos(-1) * {{degrees}} / 180\n{%- endmacro %}", + "meta": {}, + "name": "degrees_to_radians", + "original_file_path": "macros/sql/haversine_distance.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/haversine_distance.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.degrees_to_radians" + }, + "macro.dbt_utils.generate_series": { + "arguments": [], + "created_at": 1733768712.180539, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__generate_series" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro generate_series(upper_bound) %}\n {{ return(adapter.dispatch('generate_series', 'dbt_utils')(upper_bound)) }}\n{% endmacro %}", + "meta": {}, + "name": "generate_series", + "original_file_path": "macros/sql/generate_series.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/generate_series.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.generate_series" + }, + "macro.dbt_utils.generate_surrogate_key": { + "arguments": [], + "created_at": 1733768712.211029, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__generate_surrogate_key" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- macro generate_surrogate_key(field_list) -%}\n {{ return(adapter.dispatch('generate_surrogate_key', 'dbt_utils')(field_list)) }}\n{% endmacro %}", + "meta": {}, + "name": "generate_surrogate_key", + "original_file_path": "macros/sql/generate_surrogate_key.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/generate_surrogate_key.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.generate_surrogate_key" + }, + "macro.dbt_utils.get_column_values": { + "arguments": [], + "created_at": 1733768712.204057, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_column_values" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_column_values(table, column, order_by='count(*) desc', max_records=none, default=none, where=none) -%}\n {{ return(adapter.dispatch('get_column_values', 'dbt_utils')(table, column, order_by, max_records, default, where)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_column_values", + "original_file_path": "macros/sql/get_column_values.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_column_values.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_column_values" + }, + "macro.dbt_utils.get_filtered_columns_in_relation": { + "arguments": [], + "created_at": 1733768712.207616, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_filtered_columns_in_relation" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_filtered_columns_in_relation(from, except=[]) -%}\n {{ return(adapter.dispatch('get_filtered_columns_in_relation', 'dbt_utils')(from, except)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_filtered_columns_in_relation", + "original_file_path": "macros/sql/get_filtered_columns_in_relation.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_filtered_columns_in_relation.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_filtered_columns_in_relation" + }, + "macro.dbt_utils.get_intervals_between": { + "arguments": [], + "created_at": 1733768712.175016, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_intervals_between" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_intervals_between(start_date, end_date, datepart) -%}\n {{ return(adapter.dispatch('get_intervals_between', 'dbt_utils')(start_date, end_date, datepart)) }}\n{%- endmacro %}", + "meta": {}, + "name": "get_intervals_between", + "original_file_path": "macros/sql/date_spine.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/date_spine.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_intervals_between" + }, + "macro.dbt_utils.get_powers_of_two": { + "arguments": [], + "created_at": 1733768712.179986, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_powers_of_two" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_powers_of_two(upper_bound) %}\n {{ return(adapter.dispatch('get_powers_of_two', 'dbt_utils')(upper_bound)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_powers_of_two", + "original_file_path": "macros/sql/generate_series.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/generate_series.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_powers_of_two" + }, + "macro.dbt_utils.get_query_results_as_dict": { + "arguments": [], + "created_at": 1733768712.210002, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_query_results_as_dict" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_query_results_as_dict(query) %}\n {{ return(adapter.dispatch('get_query_results_as_dict', 'dbt_utils')(query)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_query_results_as_dict", + "original_file_path": "macros/sql/get_query_results_as_dict.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_query_results_as_dict.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_query_results_as_dict" + }, + "macro.dbt_utils.get_relations_by_pattern": { + "arguments": [], + "created_at": 1733768712.178231, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_relations_by_pattern" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_relations_by_pattern(schema_pattern, table_pattern, exclude='', database=target.database) %}\n {{ return(adapter.dispatch('get_relations_by_pattern', 'dbt_utils')(schema_pattern, table_pattern, exclude, database)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_relations_by_pattern", + "original_file_path": "macros/sql/get_relations_by_pattern.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_relations_by_pattern.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_relations_by_pattern" + }, + "macro.dbt_utils.get_relations_by_prefix": { + "arguments": [], + "created_at": 1733768712.181674, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_relations_by_prefix" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_relations_by_prefix(schema, prefix, exclude='', database=target.database) %}\n {{ return(adapter.dispatch('get_relations_by_prefix', 'dbt_utils')(schema, prefix, exclude, database)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_relations_by_prefix", + "original_file_path": "macros/sql/get_relations_by_prefix.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_relations_by_prefix.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_relations_by_prefix" + }, + "macro.dbt_utils.get_single_value": { + "arguments": [], + "created_at": 1733768712.213035, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_single_value" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_single_value(query, default=none) %}\n {{ return(adapter.dispatch('get_single_value', 'dbt_utils')(query, default)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_single_value", + "original_file_path": "macros/sql/get_single_value.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_single_value.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_single_value" + }, + "macro.dbt_utils.get_table_types_sql": { + "arguments": [], + "created_at": 1733768712.212138, + "depends_on": { + "macros": [ + "macro.dbt_utils.postgres__get_table_types_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- macro get_table_types_sql() -%}\n {{ return(adapter.dispatch('get_table_types_sql', 'dbt_utils')()) }}\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "get_table_types_sql", + "original_file_path": "macros/sql/get_table_types_sql.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_table_types_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_table_types_sql" + }, + "macro.dbt_utils.get_tables_by_pattern_sql": { + "arguments": [], + "created_at": 1733768712.2014499, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_tables_by_pattern_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_tables_by_pattern_sql(schema_pattern, table_pattern, exclude='', database=target.database) %}\n {{ return(adapter.dispatch('get_tables_by_pattern_sql', 'dbt_utils')\n (schema_pattern, table_pattern, exclude, database)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_tables_by_pattern_sql", + "original_file_path": "macros/sql/get_tables_by_pattern_sql.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_tables_by_pattern_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_tables_by_pattern_sql" + }, + "macro.dbt_utils.get_tables_by_prefix_sql": { + "arguments": [], + "created_at": 1733768712.182817, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_tables_by_prefix_sql" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_tables_by_prefix_sql(schema, prefix, exclude='', database=target.database) %}\n {{ return(adapter.dispatch('get_tables_by_prefix_sql', 'dbt_utils')(schema, prefix, exclude, database)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_tables_by_prefix_sql", + "original_file_path": "macros/sql/get_tables_by_prefix_sql.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_tables_by_prefix_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_tables_by_prefix_sql" + }, + "macro.dbt_utils.get_url_host": { + "arguments": [], + "created_at": 1733768712.145681, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_url_host" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_url_host(field) -%}\n {{ return(adapter.dispatch('get_url_host', 'dbt_utils')(field)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_url_host", + "original_file_path": "macros/web/get_url_host.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/web/get_url_host.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_url_host" + }, + "macro.dbt_utils.get_url_parameter": { + "arguments": [], + "created_at": 1733768712.147597, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_url_parameter" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_url_parameter(field, url_parameter) -%}\n {{ return(adapter.dispatch('get_url_parameter', 'dbt_utils')(field, url_parameter)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_url_parameter", + "original_file_path": "macros/web/get_url_parameter.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/web/get_url_parameter.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_url_parameter" + }, + "macro.dbt_utils.get_url_path": { + "arguments": [], + "created_at": 1733768712.1466691, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__get_url_path" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro get_url_path(field) -%}\n {{ return(adapter.dispatch('get_url_path', 'dbt_utils')(field)) }}\n{% endmacro %}", + "meta": {}, + "name": "get_url_path", + "original_file_path": "macros/web/get_url_path.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/web/get_url_path.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.get_url_path" + }, + "macro.dbt_utils.group_by": { + "arguments": [], + "created_at": 1733768712.195807, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__group_by" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- macro group_by(n) -%}\n {{ return(adapter.dispatch('group_by', 'dbt_utils')(n)) }}\n{% endmacro %}", + "meta": {}, + "name": "group_by", + "original_file_path": "macros/sql/groupby.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/groupby.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.group_by" + }, + "macro.dbt_utils.haversine_distance": { + "arguments": [], + "created_at": 1733768712.215117, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__haversine_distance" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro haversine_distance(lat1, lon1, lat2, lon2, unit='mi') -%}\n {{ return(adapter.dispatch('haversine_distance', 'dbt_utils')(lat1,lon1,lat2,lon2,unit)) }}\n{% endmacro %}", + "meta": {}, + "name": "haversine_distance", + "original_file_path": "macros/sql/haversine_distance.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/haversine_distance.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.haversine_distance" + }, + "macro.dbt_utils.log_info": { + "arguments": [], + "created_at": 1733768712.17287, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__log_info" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro log_info(message) %}\n {{ return(adapter.dispatch('log_info', 'dbt_utils')(message)) }}\n{% endmacro %}", + "meta": {}, + "name": "log_info", + "original_file_path": "macros/jinja_helpers/log_info.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/jinja_helpers/log_info.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.log_info" + }, + "macro.dbt_utils.nullcheck": { + "arguments": [], + "created_at": 1733768712.199415, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__nullcheck" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro nullcheck(cols) %}\n {{ return(adapter.dispatch('nullcheck', 'dbt_utils')(cols)) }}\n{% endmacro %}", + "meta": {}, + "name": "nullcheck", + "original_file_path": "macros/sql/nullcheck.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/nullcheck.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.nullcheck" + }, + "macro.dbt_utils.nullcheck_table": { + "arguments": [], + "created_at": 1733768712.1772642, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__nullcheck_table" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro nullcheck_table(relation) %}\n {{ return(adapter.dispatch('nullcheck_table', 'dbt_utils')(relation)) }}\n{% endmacro %}", + "meta": {}, + "name": "nullcheck_table", + "original_file_path": "macros/sql/nullcheck_table.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/nullcheck_table.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.nullcheck_table" + }, + "macro.dbt_utils.pivot": { + "arguments": [], + "created_at": 1733768712.206419, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__pivot" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro pivot(column,\n values,\n alias=True,\n agg='sum',\n cmp='=',\n prefix='',\n suffix='',\n then_value=1,\n else_value=0,\n quote_identifiers=True,\n distinct=False) %}\n {{ return(adapter.dispatch('pivot', 'dbt_utils')(column, values, alias, agg, cmp, prefix, suffix, then_value, else_value, quote_identifiers, distinct)) }}\n{% endmacro %}", + "meta": {}, + "name": "pivot", + "original_file_path": "macros/sql/pivot.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/pivot.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.pivot" + }, + "macro.dbt_utils.postgres__deduplicate": { + "arguments": [], + "created_at": 1733768712.1973498, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n{%- macro postgres__deduplicate(relation, partition_by, order_by) -%}\n\n select\n distinct on ({{ partition_by }}) *\n from {{ relation }}\n order by {{ partition_by }}{{ ',' ~ order_by }}\n\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "postgres__deduplicate", + "original_file_path": "macros/sql/deduplicate.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/deduplicate.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.postgres__deduplicate" + }, + "macro.dbt_utils.postgres__get_table_types_sql": { + "arguments": [], + "created_at": 1733768712.212409, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro postgres__get_table_types_sql() %}\n case table_type\n when 'BASE TABLE' then 'table'\n when 'FOREIGN' then 'external'\n when 'MATERIALIZED VIEW' then 'materializedview'\n else lower(table_type)\n end as {{ adapter.quote('table_type') }}\n{% endmacro %}", + "meta": {}, + "name": "postgres__get_table_types_sql", + "original_file_path": "macros/sql/get_table_types_sql.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/get_table_types_sql.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.postgres__get_table_types_sql" + }, + "macro.dbt_utils.pretty_log_format": { + "arguments": [], + "created_at": 1733768712.171633, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__pretty_log_format" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro pretty_log_format(message) %}\n {{ return(adapter.dispatch('pretty_log_format', 'dbt_utils')(message)) }}\n{% endmacro %}", + "meta": {}, + "name": "pretty_log_format", + "original_file_path": "macros/jinja_helpers/pretty_log_format.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/jinja_helpers/pretty_log_format.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.pretty_log_format" + }, + "macro.dbt_utils.pretty_time": { + "arguments": [], + "created_at": 1733768712.172449, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__pretty_time" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro pretty_time(format='%H:%M:%S') %}\n {{ return(adapter.dispatch('pretty_time', 'dbt_utils')(format)) }}\n{% endmacro %}", + "meta": {}, + "name": "pretty_time", + "original_file_path": "macros/jinja_helpers/pretty_time.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/jinja_helpers/pretty_time.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.pretty_time" + }, + "macro.dbt_utils.redshift__deduplicate": { + "arguments": [], + "created_at": 1733768712.197172, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__deduplicate" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro redshift__deduplicate(relation, partition_by, order_by) -%}\n\n {{ return(dbt_utils.default__deduplicate(relation, partition_by, order_by=order_by)) }}\n\n{% endmacro %}", + "meta": {}, + "name": "redshift__deduplicate", + "original_file_path": "macros/sql/deduplicate.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/deduplicate.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.redshift__deduplicate" + }, + "macro.dbt_utils.safe_add": { + "arguments": [], + "created_at": 1733768712.198612, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__safe_add" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- macro safe_add(field_list) -%}\n {{ return(adapter.dispatch('safe_add', 'dbt_utils')(field_list)) }}\n{% endmacro %}", + "meta": {}, + "name": "safe_add", + "original_file_path": "macros/sql/safe_add.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/safe_add.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.safe_add" + }, + "macro.dbt_utils.safe_divide": { + "arguments": [], + "created_at": 1733768712.188876, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__safe_divide" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro safe_divide(numerator, denominator) -%}\n {{ return(adapter.dispatch('safe_divide', 'dbt_utils')(numerator, denominator)) }}\n{%- endmacro %}", + "meta": {}, + "name": "safe_divide", + "original_file_path": "macros/sql/safe_divide.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/safe_divide.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.safe_divide" + }, + "macro.dbt_utils.safe_subtract": { + "arguments": [], + "created_at": 1733768712.1764748, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__safe_subtract" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- macro safe_subtract(field_list) -%}\n {{ return(adapter.dispatch('safe_subtract', 'dbt_utils')(field_list)) }}\n{% endmacro %}", + "meta": {}, + "name": "safe_subtract", + "original_file_path": "macros/sql/safe_subtract.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/safe_subtract.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.safe_subtract" + }, + "macro.dbt_utils.slugify": { + "arguments": [], + "created_at": 1733768712.1735811, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro slugify(string) %}\n\n{#- Lower case the string -#}\n{% set string = string | lower %}\n{#- Replace spaces and dashes with underscores -#}\n{% set string = modules.re.sub('[ -]+', '_', string) %}\n{#- Only take letters, numbers, and underscores -#}\n{% set string = modules.re.sub('[^a-z0-9_]+', '', string) %}\n{#- Prepends \"_\" if string begins with a number -#}\n{% set string = modules.re.sub('^[0-9]', '_' + string[0], string) %}\n\n{{ return(string) }}\n\n{% endmacro %}", + "meta": {}, + "name": "slugify", + "original_file_path": "macros/jinja_helpers/slugify.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/jinja_helpers/slugify.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.slugify" + }, + "macro.dbt_utils.snowflake__deduplicate": { + "arguments": [], + "created_at": 1733768712.197504, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "\n{%- macro snowflake__deduplicate(relation, partition_by, order_by) -%}\n\n select *\n from {{ relation }}\n qualify\n row_number() over (\n partition by {{ partition_by }}\n order by {{ order_by }}\n ) = 1\n\n{%- endmacro -%}\n\n", + "meta": {}, + "name": "snowflake__deduplicate", + "original_file_path": "macros/sql/deduplicate.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/deduplicate.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.snowflake__deduplicate" + }, + "macro.dbt_utils.snowflake__width_bucket": { + "arguments": [], + "created_at": 1733768712.209634, + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro snowflake__width_bucket(expr, min_value, max_value, num_buckets) %}\n width_bucket({{ expr }}, {{ min_value }}, {{ max_value }}, {{ num_buckets }} )\n{% endmacro %}", + "meta": {}, + "name": "snowflake__width_bucket", + "original_file_path": "macros/sql/width_bucket.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/width_bucket.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.snowflake__width_bucket" + }, + "macro.dbt_utils.star": { + "arguments": [], + "created_at": 1733768712.184314, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__star" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro star(from, relation_alias=False, except=[], prefix='', suffix='', quote_identifiers=True) -%}\r\n {{ return(adapter.dispatch('star', 'dbt_utils')(from, relation_alias, except, prefix, suffix, quote_identifiers)) }}\r\n{% endmacro %}", + "meta": {}, + "name": "star", + "original_file_path": "macros/sql/star.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/star.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.star" + }, + "macro.dbt_utils.surrogate_key": { + "arguments": [], + "created_at": 1733768712.19803, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__surrogate_key" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- macro surrogate_key(field_list) -%}\n {% set frustrating_jinja_feature = varargs %}\n {{ return(adapter.dispatch('surrogate_key', 'dbt_utils')(field_list, *varargs)) }}\n{% endmacro %}", + "meta": {}, + "name": "surrogate_key", + "original_file_path": "macros/sql/surrogate_key.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/surrogate_key.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.surrogate_key" + }, + "macro.dbt_utils.test_accepted_range": { + "arguments": [], + "created_at": 1733768712.155669, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_accepted_range" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test accepted_range(model, column_name, min_value=none, max_value=none, inclusive=true) %}\n {{ return(adapter.dispatch('test_accepted_range', 'dbt_utils')(model, column_name, min_value, max_value, inclusive)) }}\n{% endtest %}", + "meta": {}, + "name": "test_accepted_range", + "original_file_path": "macros/generic_tests/accepted_range.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/accepted_range.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_accepted_range" + }, + "macro.dbt_utils.test_at_least_one": { + "arguments": [], + "created_at": 1733768712.157697, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_at_least_one" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test at_least_one(model, column_name, group_by_columns = []) %}\n {{ return(adapter.dispatch('test_at_least_one', 'dbt_utils')(model, column_name, group_by_columns)) }}\n{% endtest %}", + "meta": {}, + "name": "test_at_least_one", + "original_file_path": "macros/generic_tests/at_least_one.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/at_least_one.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_at_least_one" + }, + "macro.dbt_utils.test_cardinality_equality": { + "arguments": [], + "created_at": 1733768712.160137, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_cardinality_equality" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test cardinality_equality(model, column_name, to, field) %}\n {{ return(adapter.dispatch('test_cardinality_equality', 'dbt_utils')(model, column_name, to, field)) }}\n{% endtest %}", + "meta": {}, + "name": "test_cardinality_equality", + "original_file_path": "macros/generic_tests/cardinality_equality.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/cardinality_equality.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_cardinality_equality" + }, + "macro.dbt_utils.test_equal_rowcount": { + "arguments": [], + "created_at": 1733768712.1507342, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_equal_rowcount" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test equal_rowcount(model, compare_model, group_by_columns = []) %}\n {{ return(adapter.dispatch('test_equal_rowcount', 'dbt_utils')(model, compare_model, group_by_columns)) }}\n{% endtest %}", + "meta": {}, + "name": "test_equal_rowcount", + "original_file_path": "macros/generic_tests/equal_rowcount.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/equal_rowcount.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_equal_rowcount" + }, + "macro.dbt_utils.test_equality": { + "arguments": [], + "created_at": 1733768712.1648152, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_equality" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test equality(model, compare_model, compare_columns=None) %}\n {{ return(adapter.dispatch('test_equality', 'dbt_utils')(model, compare_model, compare_columns)) }}\n{% endtest %}", + "meta": {}, + "name": "test_equality", + "original_file_path": "macros/generic_tests/equality.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/equality.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_equality" + }, + "macro.dbt_utils.test_expression_is_true": { + "arguments": [], + "created_at": 1733768712.160819, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_expression_is_true" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test expression_is_true(model, expression, column_name=None) %}\n {{ return(adapter.dispatch('test_expression_is_true', 'dbt_utils')(model, expression, column_name)) }}\n{% endtest %}", + "meta": {}, + "name": "test_expression_is_true", + "original_file_path": "macros/generic_tests/expression_is_true.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/expression_is_true.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_expression_is_true" + }, + "macro.dbt_utils.test_fewer_rows_than": { + "arguments": [], + "created_at": 1733768712.148976, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_fewer_rows_than" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test fewer_rows_than(model, compare_model, group_by_columns = []) %}\n {{ return(adapter.dispatch('test_fewer_rows_than', 'dbt_utils')(model, compare_model, group_by_columns)) }}\n{% endtest %}", + "meta": {}, + "name": "test_fewer_rows_than", + "original_file_path": "macros/generic_tests/fewer_rows_than.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/fewer_rows_than.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_fewer_rows_than" + }, + "macro.dbt_utils.test_mutually_exclusive_ranges": { + "arguments": [], + "created_at": 1733768712.169887, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_mutually_exclusive_ranges" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test mutually_exclusive_ranges(model, lower_bound_column, upper_bound_column, partition_by=None, gaps='allowed', zero_length_range_allowed=False) %}\n {{ return(adapter.dispatch('test_mutually_exclusive_ranges', 'dbt_utils')(model, lower_bound_column, upper_bound_column, partition_by, gaps, zero_length_range_allowed)) }}\n{% endtest %}", + "meta": {}, + "name": "test_mutually_exclusive_ranges", + "original_file_path": "macros/generic_tests/mutually_exclusive_ranges.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/mutually_exclusive_ranges.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_mutually_exclusive_ranges" + }, + "macro.dbt_utils.test_not_accepted_values": { + "arguments": [], + "created_at": 1733768712.156644, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_not_accepted_values" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test not_accepted_values(model, column_name, values, quote=True) %}\n {{ return(adapter.dispatch('test_not_accepted_values', 'dbt_utils')(model, column_name, values, quote)) }}\n{% endtest %}", + "meta": {}, + "name": "test_not_accepted_values", + "original_file_path": "macros/generic_tests/not_accepted_values.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/not_accepted_values.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_not_accepted_values" + }, + "macro.dbt_utils.test_not_constant": { + "arguments": [], + "created_at": 1733768712.1544719, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_not_constant" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test not_constant(model, column_name, group_by_columns = []) %}\n {{ return(adapter.dispatch('test_not_constant', 'dbt_utils')(model, column_name, group_by_columns)) }}\n{% endtest %}", + "meta": {}, + "name": "test_not_constant", + "original_file_path": "macros/generic_tests/not_constant.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/not_constant.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_not_constant" + }, + "macro.dbt_utils.test_not_empty_string": { + "arguments": [], + "created_at": 1733768712.166101, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_not_empty_string" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test not_empty_string(model, column_name, trim_whitespace=true) %}\n\n {{ return(adapter.dispatch('test_not_empty_string', 'dbt_utils')(model, column_name, trim_whitespace)) }}\n\n{% endtest %}", + "meta": {}, + "name": "test_not_empty_string", + "original_file_path": "macros/generic_tests/not_empty_string.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/not_empty_string.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_not_empty_string" + }, + "macro.dbt_utils.test_not_null_proportion": { + "arguments": [], + "created_at": 1733768712.161741, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_not_null_proportion" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro test_not_null_proportion(model, group_by_columns = []) %}\n {{ return(adapter.dispatch('test_not_null_proportion', 'dbt_utils')(model, group_by_columns, **kwargs)) }}\n{% endmacro %}", + "meta": {}, + "name": "test_not_null_proportion", + "original_file_path": "macros/generic_tests/not_null_proportion.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/not_null_proportion.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_not_null_proportion" + }, + "macro.dbt_utils.test_recency": { + "arguments": [], + "created_at": 1733768712.153312, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_recency" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test recency(model, field, datepart, interval, ignore_time_component=False, group_by_columns = []) %}\n {{ return(adapter.dispatch('test_recency', 'dbt_utils')(model, field, datepart, interval, ignore_time_component, group_by_columns)) }}\n{% endtest %}", + "meta": {}, + "name": "test_recency", + "original_file_path": "macros/generic_tests/recency.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/recency.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_recency" + }, + "macro.dbt_utils.test_relationships_where": { + "arguments": [], + "created_at": 1733768712.152317, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_relationships_where" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test relationships_where(model, column_name, to, field, from_condition=\"1=1\", to_condition=\"1=1\") %}\n {{ return(adapter.dispatch('test_relationships_where', 'dbt_utils')(model, column_name, to, field, from_condition, to_condition)) }}\n{% endtest %}", + "meta": {}, + "name": "test_relationships_where", + "original_file_path": "macros/generic_tests/relationships_where.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/relationships_where.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_relationships_where" + }, + "macro.dbt_utils.test_sequential_values": { + "arguments": [], + "created_at": 1733768712.163331, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_sequential_values" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test sequential_values(model, column_name, interval=1, datepart=None, group_by_columns = []) %}\n\n {{ return(adapter.dispatch('test_sequential_values', 'dbt_utils')(model, column_name, interval, datepart, group_by_columns)) }}\n\n{% endtest %}", + "meta": {}, + "name": "test_sequential_values", + "original_file_path": "macros/generic_tests/sequential_values.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/sequential_values.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_sequential_values" + }, + "macro.dbt_utils.test_unique_combination_of_columns": { + "arguments": [], + "created_at": 1733768712.159051, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__test_unique_combination_of_columns" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% test unique_combination_of_columns(model, combination_of_columns, quote_columns=false) %}\n {{ return(adapter.dispatch('test_unique_combination_of_columns', 'dbt_utils')(model, combination_of_columns, quote_columns)) }}\n{% endtest %}", + "meta": {}, + "name": "test_unique_combination_of_columns", + "original_file_path": "macros/generic_tests/unique_combination_of_columns.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/generic_tests/unique_combination_of_columns.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.test_unique_combination_of_columns" + }, + "macro.dbt_utils.union_relations": { + "arguments": [], + "created_at": 1733768712.192402, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__union_relations" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- macro union_relations(relations, column_override=none, include=[], exclude=[], source_column_name='_dbt_source_relation', where=none) -%}\n {{ return(adapter.dispatch('union_relations', 'dbt_utils')(relations, column_override, include, exclude, source_column_name, where)) }}\n{% endmacro %}", + "meta": {}, + "name": "union_relations", + "original_file_path": "macros/sql/union.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/union.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.union_relations" + }, + "macro.dbt_utils.unpivot": { + "arguments": [], + "created_at": 1733768712.186986, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__unpivot" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro unpivot(relation=none, cast_to='varchar', exclude=none, remove=none, field_name='field_name', value_name='value') -%}\n {{ return(adapter.dispatch('unpivot', 'dbt_utils')(relation, cast_to, exclude, remove, field_name, value_name)) }}\n{% endmacro %}", + "meta": {}, + "name": "unpivot", + "original_file_path": "macros/sql/unpivot.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/unpivot.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.unpivot" + }, + "macro.dbt_utils.width_bucket": { + "arguments": [], + "created_at": 1733768712.2090409, + "depends_on": { + "macros": [ + "macro.dbt_utils.default__width_bucket" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{% macro width_bucket(expr, min_value, max_value, num_buckets) %}\n {{ return(adapter.dispatch('width_bucket', 'dbt_utils') (expr, min_value, max_value, num_buckets)) }}\n{% endmacro %}", + "meta": {}, + "name": "width_bucket", + "original_file_path": "macros/sql/width_bucket.sql", + "package_name": "dbt_utils", + "patch_path": null, + "path": "macros/sql/width_bucket.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.dbt_utils.width_bucket" + }, + "macro.jaffle_shop.drop_table_by_name": { + "arguments": [], + "created_at": 1733768711.890105, + "depends_on": { + "macros": [ + "macro.dbt.run_query" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "macro_sql": "{%- macro drop_table_by_name(table_name) -%}\n {%- set drop_query -%}\n DROP TABLE IF EXISTS {{ target.schema }}.{{ table_name }} CASCADE\n {%- endset -%}\n {% do run_query(drop_query) %}\n{%- endmacro -%}", + "meta": {}, + "name": "drop_table_by_name", + "original_file_path": "macros/drop_table.sql", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "macros/drop_table.sql", + "resource_type": "macro", + "supported_languages": null, + "unique_id": "macro.jaffle_shop.drop_table_by_name" + } + }, + "metadata": { + "adapter_type": "postgres", + "dbt_schema_version": "https://schemas.getdbt.com/dbt/manifest/v12.json", + "dbt_version": "1.8.7", + "env": {}, + "generated_at": "2024-12-09T18:25:11.852105Z", + "invocation_id": "c2b26d74-4af6-4b69-8e66-acb7dc838565", + "project_id": "06e5b98c2db46f8a72cc4f66410e9b3b", + "project_name": "jaffle_shop", + "send_anonymous_usage_stats": true, + "user_id": "15f4b14a-123f-433a-bddc-864f00ab86fc" + }, + "metrics": {}, + "nodes": { + "model.jaffle_shop.customers": { + "access": "protected", + "alias": "customers", + "build_path": null, + "checksum": { + "checksum": "9f2eb13e3f280ace0666a0e18bbf66245f1c189e1362d6f3b9e276d0b3133749", + "name": "sha256" + }, + "columns": { + "customer_id": { + "constraints": [], + "data_type": null, + "description": "This is a unique identifier for a customer", + "meta": {}, + "name": "customer_id", + "quote": null, + "tags": [] + }, + "first_name": { + "constraints": [], + "data_type": null, + "description": "Customer's first name. PII.", + "meta": {}, + "name": "first_name", + "quote": null, + "tags": [] + }, + "first_order": { + "constraints": [], + "data_type": null, + "description": "Date (UTC) of a customer's first order", + "meta": {}, + "name": "first_order", + "quote": null, + "tags": [] + }, + "last_name": { + "constraints": [], + "data_type": null, + "description": "Customer's last name. PII.", + "meta": {}, + "name": "last_name", + "quote": null, + "tags": [] + }, + "most_recent_order": { + "constraints": [], + "data_type": null, + "description": "Date (UTC) of a customer's most recent order", + "meta": {}, + "name": "most_recent_order", + "quote": null, + "tags": [] + }, + "number_of_orders": { + "constraints": [], + "data_type": null, + "description": "Count of the number of orders a customer has placed", + "meta": {}, + "name": "number_of_orders", + "quote": null, + "tags": [] + }, + "total_order_amount": { + "constraints": [], + "data_type": null, + "description": "Total value (AUD) of a customer's orders", + "meta": {}, + "name": "total_order_amount", + "quote": null, + "tags": [] + } + }, + "compiled_path": null, + "config": { + "access": "protected", + "alias": null, + "column_types": {}, + "contract": { + "alias_types": true, + "enforced": false + }, + "database": null, + "docs": { + "node_color": null, + "show": true + }, + "enabled": true, + "full_refresh": null, + "grants": {}, + "group": null, + "incremental_strategy": null, + "materialized": "table", + "meta": {}, + "on_configuration_change": "apply", + "on_schema_change": "ignore", + "packages": [], + "persist_docs": {}, + "post-hook": [], + "pre-hook": [], + "quoting": {}, + "schema": null, + "tags": [ + "customers" + ], + "unique_key": null + }, + "constraints": [], + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.6589088, + "database": "postgres", + "depends_on": { + "macros": [], + "nodes": [ + "model.jaffle_shop.stg_customers", + "model.jaffle_shop.stg_orders", + "model.jaffle_shop.stg_payments" + ] + }, + "deprecation_date": null, + "description": "This table has basic information about a customer, as well as some derived facts based on a customer's orders", + "docs": { + "node_color": null, + "show": true + }, + "fqn": [ + "jaffle_shop", + "customers" + ], + "group": null, + "language": "sql", + "latest_version": null, + "meta": {}, + "metrics": [], + "name": "customers", + "original_file_path": "models/customers.sql", + "package_name": "jaffle_shop", + "patch_path": "jaffle_shop://models/schema.yml", + "path": "customers.sql", + "raw_code": "{{ config(tags=[\"customers\"]) }}\n\nwith customers as (\n\n select * from {{ ref('stg_customers') }}\n\n),\n\norders as (\n\n select * from {{ ref('stg_orders') }}\n\n),\n\npayments as (\n\n select * from {{ ref('stg_payments') }}\n\n),\n\ncustomer_orders as (\n\n select\n customer_id,\n\n min(order_date) as first_order,\n max(order_date) as most_recent_order,\n count(order_id) as number_of_orders\n from orders\n\n group by customer_id\n\n),\n\ncustomer_payments as (\n\n select\n orders.customer_id,\n sum(amount) as total_amount\n\n from payments\n\n left join orders on\n payments.order_id = orders.order_id\n\n group by orders.customer_id\n\n),\n\nfinal as (\n\n select\n customers.customer_id,\n customers.first_name,\n customers.last_name,\n customer_orders.first_order,\n customer_orders.most_recent_order,\n customer_orders.number_of_orders,\n customer_payments.total_amount as customer_lifetime_value\n\n from customers\n\n left join customer_orders\n on customers.customer_id = customer_orders.customer_id\n\n left join customer_payments\n on customers.customer_id = customer_payments.customer_id\n\n)\n\nselect * from final", + "refs": [ + { + "name": "stg_customers", + "package": null, + "version": null + }, + { + "name": "stg_orders", + "package": null, + "version": null + }, + { + "name": "stg_payments", + "package": null, + "version": null + } + ], + "relation_name": "\"postgres\".\"postgres\".\"customers\"", + "resource_type": "model", + "schema": "postgres", + "sources": [], + "tags": [ + "customers" + ], + "unique_id": "model.jaffle_shop.customers", + "unrendered_config": { + "materialized": "table", + "tags": [ + "customers" + ] + }, + "version": null + }, + "model.jaffle_shop.orders": { + "access": "protected", + "alias": "orders", + "build_path": null, + "checksum": { + "checksum": "27f8c79aad1cfd8411ab9c3d2ce8da1d787f7f05c58bbee1d247510dc426be0f", + "name": "sha256" + }, + "columns": { + "amount": { + "constraints": [], + "data_type": null, + "description": "Total amount (AUD) of the order", + "meta": {}, + "name": "amount", + "quote": null, + "tags": [] + }, + "bank_transfer_amount": { + "constraints": [], + "data_type": null, + "description": "Amount of the order (AUD) paid for by bank transfer", + "meta": {}, + "name": "bank_transfer_amount", + "quote": null, + "tags": [] + }, + "coupon_amount": { + "constraints": [], + "data_type": null, + "description": "Amount of the order (AUD) paid for by coupon", + "meta": {}, + "name": "coupon_amount", + "quote": null, + "tags": [] + }, + "credit_card_amount": { + "constraints": [], + "data_type": null, + "description": "Amount of the order (AUD) paid for by credit card", + "meta": {}, + "name": "credit_card_amount", + "quote": null, + "tags": [] + }, + "customer_id": { + "constraints": [], + "data_type": null, + "description": "Foreign key to the customers table", + "meta": {}, + "name": "customer_id", + "quote": null, + "tags": [] + }, + "gift_card_amount": { + "constraints": [], + "data_type": null, + "description": "Amount of the order (AUD) paid for by gift card", + "meta": {}, + "name": "gift_card_amount", + "quote": null, + "tags": [] + }, + "order_date": { + "constraints": [], + "data_type": null, + "description": "Date (UTC) that the order was placed", + "meta": {}, + "name": "order_date", + "quote": null, + "tags": [] + }, + "order_id": { + "constraints": [], + "data_type": null, + "description": "This is a unique identifier for an order", + "meta": {}, + "name": "order_id", + "quote": null, + "tags": [] + }, + "status": { + "constraints": [], + "data_type": null, + "description": "Orders can be one of the following statuses:\n\n| status | description |\n|----------------|------------------------------------------------------------------------------------------------------------------------|\n| placed | The order has been placed but has not yet left the warehouse |\n| shipped | The order has ben shipped to the customer and is currently in transit |\n| completed | The order has been received by the customer |\n| return_pending | The customer has indicated that they would like to return the order, but it has not yet been received at the warehouse |\n| returned | The order has been returned by the customer and received at the warehouse |", + "meta": {}, + "name": "status", + "quote": null, + "tags": [] + } + }, + "compiled_path": null, + "config": { + "access": "protected", + "alias": null, + "column_types": {}, + "contract": { + "alias_types": true, + "enforced": false + }, + "database": null, + "docs": { + "node_color": null, + "show": true + }, + "enabled": true, + "full_refresh": null, + "grants": {}, + "group": null, + "incremental_strategy": null, + "materialized": "table", + "meta": {}, + "on_configuration_change": "apply", + "on_schema_change": "ignore", + "packages": [], + "persist_docs": {}, + "post-hook": [], + "pre-hook": [], + "quoting": {}, + "schema": null, + "tags": [], + "unique_key": null + }, + "constraints": [], + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.661519, + "database": "postgres", + "depends_on": { + "macros": [], + "nodes": [ + "model.jaffle_shop.stg_orders", + "model.jaffle_shop.stg_payments" + ] + }, + "deprecation_date": null, + "description": "This table has basic information about orders, as well as some derived facts based on payments", + "docs": { + "node_color": null, + "show": true + }, + "fqn": [ + "jaffle_shop", + "orders" + ], + "group": null, + "language": "sql", + "latest_version": null, + "meta": {}, + "metrics": [], + "name": "orders", + "original_file_path": "models/orders.sql", + "package_name": "jaffle_shop", + "patch_path": "jaffle_shop://models/schema.yml", + "path": "orders.sql", + "raw_code": "{% set payment_methods = ['credit_card', 'coupon', 'bank_transfer', 'gift_card'] %}\n\nwith orders as (\n\n select * from {{ ref('stg_orders') }}\n\n),\n\npayments as (\n\n select * from {{ ref('stg_payments') }}\n\n),\n\norder_payments as (\n\n select\n order_id,\n\n {% for payment_method in payment_methods -%}\n sum(case when payment_method = '{{ payment_method }}' then amount else 0 end) as {{ payment_method }}_amount,\n {% endfor -%}\n\n sum(amount) as total_amount\n\n from payments\n\n group by order_id\n\n),\n\nfinal as (\n\n select\n orders.order_id,\n orders.customer_id,\n orders.order_date,\n orders.status,\n\n {% for payment_method in payment_methods -%}\n\n order_payments.{{ payment_method }}_amount,\n\n {% endfor -%}\n\n order_payments.total_amount as amount\n\n from orders\n\n\n left join order_payments\n on orders.order_id = order_payments.order_id\n\n)\n\nselect * from final", + "refs": [ + { + "name": "stg_orders", + "package": null, + "version": null + }, + { + "name": "stg_payments", + "package": null, + "version": null + } + ], + "relation_name": "\"postgres\".\"postgres\".\"orders\"", + "resource_type": "model", + "schema": "postgres", + "sources": [], + "tags": [], + "unique_id": "model.jaffle_shop.orders", + "unrendered_config": { + "materialized": "table" + }, + "version": null + }, + "model.jaffle_shop.stg_customers": { + "access": "protected", + "alias": "stg_customers", + "build_path": null, + "checksum": { + "checksum": "745b5d4fc01d8f673204d54f568bba06de5d881d44553fe5c0e2028c52005710", + "name": "sha256" + }, + "columns": { + "customer_id": { + "constraints": [], + "data_type": null, + "description": "", + "meta": {}, + "name": "customer_id", + "quote": null, + "tags": [] + } + }, + "compiled_path": null, + "config": { + "access": "protected", + "alias": null, + "column_types": {}, + "contract": { + "alias_types": true, + "enforced": false + }, + "database": null, + "docs": { + "node_color": null, + "show": true + }, + "enabled": true, + "full_refresh": null, + "grants": {}, + "group": null, + "incremental_strategy": null, + "materialized": "view", + "meta": {}, + "on_configuration_change": "apply", + "on_schema_change": "ignore", + "packages": [], + "persist_docs": {}, + "post-hook": [], + "pre-hook": [], + "quoting": {}, + "schema": null, + "tags": [], + "unique_key": null + }, + "constraints": [], + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.782482, + "database": "postgres", + "depends_on": { + "macros": [], + "nodes": [ + "source.jaffle_shop.postgres_db.raw_customers", + "seed.jaffle_shop.raw_customers" + ] + }, + "deprecation_date": null, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "fqn": [ + "jaffle_shop", + "staging", + "stg_customers" + ], + "group": null, + "language": "sql", + "latest_version": null, + "meta": {}, + "metrics": [], + "name": "stg_customers", + "original_file_path": "models/staging/stg_customers.sql", + "package_name": "jaffle_shop", + "patch_path": "jaffle_shop://models/staging/schema.yml", + "path": "staging/stg_customers.sql", + "raw_code": "with source as (\n\n {#-\n Normally we would select from the table here, but we are using seeds to load\n our data in this project\n #}\n select * from {{ source('postgres_db', 'raw_customers') }}\n\n),\n\nforce_seed_dep as (\n {#-\n This CTE is used to ensure tests wait for seeds to run if source_node_rendering = none\n #}\n select * from {{ ref('raw_customers') }}\n),\n\nrenamed as (\n\n select\n id as customer_id,\n first_name,\n last_name\n\n from source\n\n)\n\nselect * from renamed", + "refs": [ + { + "name": "raw_customers", + "package": null, + "version": null + } + ], + "relation_name": "\"postgres\".\"postgres\".\"stg_customers\"", + "resource_type": "model", + "schema": "postgres", + "sources": [ + [ + "postgres_db", + "raw_customers" + ] + ], + "tags": [], + "unique_id": "model.jaffle_shop.stg_customers", + "unrendered_config": { + "materialized": "view" + }, + "version": null + }, + "model.jaffle_shop.stg_orders": { + "access": "protected", + "alias": "stg_orders", + "build_path": null, + "checksum": { + "checksum": "cdb5e9e9cf11b56e8419905bc35ddd5e3ba44aade1b0b7cb61ccf41840475a8b", + "name": "sha256" + }, + "columns": { + "order_id": { + "constraints": [], + "data_type": null, + "description": "", + "meta": {}, + "name": "order_id", + "quote": null, + "tags": [] + }, + "status": { + "constraints": [], + "data_type": null, + "description": "", + "meta": {}, + "name": "status", + "quote": null, + "tags": [] + } + }, + "compiled_path": null, + "config": { + "access": "protected", + "alias": null, + "column_types": {}, + "contract": { + "alias_types": true, + "enforced": false + }, + "database": null, + "docs": { + "node_color": null, + "show": true + }, + "enabled": true, + "full_refresh": null, + "grants": {}, + "group": null, + "incremental_strategy": null, + "materialized": "view", + "meta": {}, + "on_configuration_change": "apply", + "on_schema_change": "ignore", + "packages": [], + "persist_docs": {}, + "post-hook": [], + "pre-hook": [], + "quoting": {}, + "schema": null, + "tags": [], + "unique_key": null + }, + "constraints": [], + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.783208, + "database": "postgres", + "depends_on": { + "macros": [], + "nodes": [ + "source.jaffle_shop.postgres_db.raw_orders", + "seed.jaffle_shop.raw_customers" + ] + }, + "deprecation_date": null, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "fqn": [ + "jaffle_shop", + "staging", + "stg_orders" + ], + "group": null, + "language": "sql", + "latest_version": null, + "meta": {}, + "metrics": [], + "name": "stg_orders", + "original_file_path": "models/staging/stg_orders.sql", + "package_name": "jaffle_shop", + "patch_path": "jaffle_shop://models/staging/schema.yml", + "path": "staging/stg_orders.sql", + "raw_code": "with source as (\n\n {#-\n Normally we would select from the table here, but we are using seeds to load\n our data in this project\n #}\n select * from {{ source('postgres_db', 'raw_orders') }}\n\n),\n\nforce_seed_dep as (\n {#-\n This CTE is used to ensure tests wait for seeds to run if source_node_rendering = none\n #}\n select * from {{ ref('raw_customers') }}\n),\n\nrenamed as (\n\n select\n id as order_id,\n user_id as customer_id,\n order_date,\n status\n\n from source\n\n)\n\nselect * from renamed", + "refs": [ + { + "name": "raw_customers", + "package": null, + "version": null + } + ], + "relation_name": "\"postgres\".\"postgres\".\"stg_orders\"", + "resource_type": "model", + "schema": "postgres", + "sources": [ + [ + "postgres_db", + "raw_orders" + ] + ], + "tags": [], + "unique_id": "model.jaffle_shop.stg_orders", + "unrendered_config": { + "materialized": "view" + }, + "version": null + }, + "model.jaffle_shop.stg_payments": { + "access": "protected", + "alias": "stg_payments", + "build_path": null, + "checksum": { + "checksum": "b9c8809d5160dc09bf93b130915f6c47d2eaae223e70a381f0ee9da469844e1c", + "name": "sha256" + }, + "columns": { + "payment_id": { + "constraints": [], + "data_type": null, + "description": "", + "meta": {}, + "name": "payment_id", + "quote": null, + "tags": [] + }, + "payment_method": { + "constraints": [], + "data_type": null, + "description": "", + "meta": {}, + "name": "payment_method", + "quote": null, + "tags": [] + } + }, + "compiled_path": null, + "config": { + "access": "protected", + "alias": null, + "column_types": {}, + "contract": { + "alias_types": true, + "enforced": false + }, + "database": null, + "docs": { + "node_color": null, + "show": true + }, + "enabled": true, + "full_refresh": null, + "grants": {}, + "group": null, + "incremental_strategy": null, + "materialized": "view", + "meta": {}, + "on_configuration_change": "apply", + "on_schema_change": "ignore", + "packages": [], + "persist_docs": {}, + "post-hook": [], + "pre-hook": [], + "quoting": {}, + "schema": null, + "tags": [], + "unique_key": null + }, + "constraints": [], + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.7845461, + "database": "postgres", + "depends_on": { + "macros": [], + "nodes": [ + "source.jaffle_shop.postgres_db.raw_payments", + "seed.jaffle_shop.raw_customers" + ] + }, + "deprecation_date": null, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "fqn": [ + "jaffle_shop", + "staging", + "stg_payments" + ], + "group": null, + "language": "sql", + "latest_version": null, + "meta": {}, + "metrics": [], + "name": "stg_payments", + "original_file_path": "models/staging/stg_payments.sql", + "package_name": "jaffle_shop", + "patch_path": "jaffle_shop://models/staging/schema.yml", + "path": "staging/stg_payments.sql", + "raw_code": "with source as (\n\n select * from {{ source('postgres_db', 'raw_payments') }}\n\n),\n\nforce_seed_dep as (\n {#-\n This CTE is used to ensure tests wait for seeds to run if source_node_rendering = none\n #}\n select * from {{ ref('raw_customers') }}\n),\n\nrenamed as (\n\n select\n id as payment_id,\n order_id,\n payment_method,\n\n -- `amount` is currently stored in cents, so we convert it to dollars\n amount / 100 as amount\n\n from source\n\n)\n\nselect * from renamed", + "refs": [ + { + "name": "raw_customers", + "package": null, + "version": null + } + ], + "relation_name": "\"postgres\".\"postgres\".\"stg_payments\"", + "resource_type": "model", + "schema": "postgres", + "sources": [ + [ + "postgres_db", + "raw_payments" + ] + ], + "tags": [], + "unique_id": "model.jaffle_shop.stg_payments", + "unrendered_config": { + "materialized": "view" + }, + "version": null + }, + "model.jaffle_shop.\uff4d\uff55\uff4c\uff54\uff49\uff42\uff59\uff54\uff45": { + "access": "protected", + "alias": "\uff4d\uff55\uff4c\uff54\uff49\uff42\uff59\uff54\uff45", + "build_path": null, + "checksum": { + "checksum": "ff297fadab250ba548f4713a4d10a25aa72aced064e2131394b6ff3c1df36600", + "name": "sha256" + }, + "columns": {}, + "compiled_path": null, + "config": { + "access": "protected", + "alias": null, + "column_types": {}, + "contract": { + "alias_types": true, + "enforced": false + }, + "database": null, + "docs": { + "node_color": null, + "show": true + }, + "enabled": true, + "full_refresh": null, + "grants": {}, + "group": null, + "incremental_strategy": null, + "materialized": "table", + "meta": {}, + "on_configuration_change": "apply", + "on_schema_change": "ignore", + "packages": [], + "persist_docs": {}, + "post-hook": [], + "pre-hook": [], + "quoting": {}, + "schema": null, + "tags": [], + "unique_key": null + }, + "constraints": [], + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.519385, + "database": "postgres", + "depends_on": { + "macros": [], + "nodes": [] + }, + "deprecation_date": null, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "fqn": [ + "jaffle_shop", + "\uff4d\uff55\uff4c\uff54\uff49\uff42\uff59\uff54\uff45" + ], + "group": null, + "language": "sql", + "latest_version": null, + "meta": {}, + "metrics": [], + "name": "\uff4d\uff55\uff4c\uff54\uff49\uff42\uff59\uff54\uff45", + "original_file_path": "models/\uff4d\uff55\uff4c\uff54\uff49\uff42\uff59\uff54\uff45.sql", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "\uff4d\uff55\uff4c\uff54\uff49\uff42\uff59\uff54\uff45.sql", + "raw_code": "select\n '\uff34\uff25\uff33\uff34\uff3f\uff26\uff2f\uff32\uff3f\uff2d\uff35\uff2c\uff34\uff29\uff22\uff39\uff34\uff25\uff3f\uff23\uff28\uff21\uff32\uff23\uff34\uff25\uff32\uff33'", + "refs": [], + "relation_name": "\"postgres\".\"postgres\".\"\uff4d\uff55\uff4c\uff54\uff49\uff42\uff59\uff54\uff45\"", + "resource_type": "model", + "schema": "postgres", + "sources": [], + "tags": [], + "unique_id": "model.jaffle_shop.\uff4d\uff55\uff4c\uff54\uff49\uff42\uff59\uff54\uff45", + "unrendered_config": { + "materialized": "table" + }, + "version": null + }, + "seed.jaffle_shop.raw_customers": { + "alias": "raw_customers", + "build_path": null, + "checksum": { + "checksum": "357d173dda65a741ad97d6683502286cc2655bb396ab5f4dfad12b8c39bd2a63", + "name": "sha256" + }, + "columns": {}, + "config": { + "alias": null, + "column_types": {}, + "contract": { + "alias_types": true, + "enforced": false + }, + "database": null, + "delimiter": ",", + "docs": { + "node_color": null, + "show": true + }, + "enabled": true, + "full_refresh": null, + "grants": {}, + "group": null, + "incremental_strategy": null, + "materialized": "seed", + "meta": {}, + "on_configuration_change": "apply", + "on_schema_change": "ignore", + "packages": [], + "persist_docs": {}, + "post-hook": [], + "pre-hook": [], + "quote_columns": null, + "quoting": {}, + "schema": null, + "tags": [], + "unique_key": null + }, + "created_at": 1733768712.606124, + "database": "postgres", + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "fqn": [ + "jaffle_shop", + "raw_customers" + ], + "group": null, + "meta": {}, + "name": "raw_customers", + "original_file_path": "seeds/raw_customers.csv", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "raw_customers.csv", + "raw_code": "", + "relation_name": "\"postgres\".\"postgres\".\"raw_customers\"", + "resource_type": "seed", + "root_path": "/Users/pankaj/Documents/astro_code/astronomer-cosmos/dev/dags/dbt/jaffle_shop", + "schema": "postgres", + "tags": [], + "unique_id": "seed.jaffle_shop.raw_customers", + "unrendered_config": {} + }, + "seed.jaffle_shop.raw_orders": { + "alias": "raw_orders", + "build_path": null, + "checksum": { + "checksum": "6228dde8e17b9621f35c13e272ec67d3ff55b55499433f47d303adf2be72c17f", + "name": "sha256" + }, + "columns": {}, + "config": { + "alias": null, + "column_types": {}, + "contract": { + "alias_types": true, + "enforced": false + }, + "database": null, + "delimiter": ",", + "docs": { + "node_color": null, + "show": true + }, + "enabled": true, + "full_refresh": null, + "grants": {}, + "group": null, + "incremental_strategy": null, + "materialized": "seed", + "meta": {}, + "on_configuration_change": "apply", + "on_schema_change": "ignore", + "packages": [], + "persist_docs": {}, + "post-hook": [], + "pre-hook": [], + "quote_columns": null, + "quoting": {}, + "schema": null, + "tags": [], + "unique_key": null + }, + "created_at": 1733768712.607415, + "database": "postgres", + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "fqn": [ + "jaffle_shop", + "raw_orders" + ], + "group": null, + "meta": {}, + "name": "raw_orders", + "original_file_path": "seeds/raw_orders.csv", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "raw_orders.csv", + "raw_code": "", + "relation_name": "\"postgres\".\"postgres\".\"raw_orders\"", + "resource_type": "seed", + "root_path": "/Users/pankaj/Documents/astro_code/astronomer-cosmos/dev/dags/dbt/jaffle_shop", + "schema": "postgres", + "tags": [], + "unique_id": "seed.jaffle_shop.raw_orders", + "unrendered_config": {} + }, + "seed.jaffle_shop.raw_payments": { + "alias": "raw_payments", + "build_path": null, + "checksum": { + "checksum": "6de0626a8db9c1750eefd1b2e17fac4c2a4b9f778eb50532d8b377b90de395e6", + "name": "sha256" + }, + "columns": {}, + "config": { + "alias": null, + "column_types": {}, + "contract": { + "alias_types": true, + "enforced": false + }, + "database": null, + "delimiter": ",", + "docs": { + "node_color": null, + "show": true + }, + "enabled": true, + "full_refresh": null, + "grants": {}, + "group": null, + "incremental_strategy": null, + "materialized": "seed", + "meta": {}, + "on_configuration_change": "apply", + "on_schema_change": "ignore", + "packages": [], + "persist_docs": {}, + "post-hook": [], + "pre-hook": [], + "quote_columns": null, + "quoting": {}, + "schema": null, + "tags": [], + "unique_key": null + }, + "created_at": 1733768712.608446, + "database": "postgres", + "depends_on": { + "macros": [] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "fqn": [ + "jaffle_shop", + "raw_payments" + ], + "group": null, + "meta": {}, + "name": "raw_payments", + "original_file_path": "seeds/raw_payments.csv", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "raw_payments.csv", + "raw_code": "", + "relation_name": "\"postgres\".\"postgres\".\"raw_payments\"", + "resource_type": "seed", + "root_path": "/Users/pankaj/Documents/astro_code/astronomer-cosmos/dev/dags/dbt/jaffle_shop", + "schema": "postgres", + "tags": [], + "unique_id": "seed.jaffle_shop.raw_payments", + "unrendered_config": {} + }, + "test.jaffle_shop.accepted_values_orders_status__placed__shipped__completed__return_pending__returned.be6b5b5ec3": { + "alias": "accepted_values_orders_1ce6ab157c285f7cd2ac656013faf758", + "attached_node": "model.jaffle_shop.orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "status", + "columns": {}, + "compiled_path": null, + "config": { + "alias": "accepted_values_orders_1ce6ab157c285f7cd2ac656013faf758", + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.761217, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_accepted_values", + "macro.dbt.get_where_subquery" + ], + "nodes": [ + "model.jaffle_shop.orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.orders", + "fqn": [ + "jaffle_shop", + "accepted_values_orders_status__placed__shipped__completed__return_pending__returned" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "accepted_values_orders_status__placed__shipped__completed__return_pending__returned", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "accepted_values_orders_1ce6ab157c285f7cd2ac656013faf758.sql", + "raw_code": "{{ test_accepted_values(**_dbt_generic_test_kwargs) }}{{ config(alias=\"accepted_values_orders_1ce6ab157c285f7cd2ac656013faf758\") }}", + "refs": [ + { + "name": "orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "status", + "model": "{{ get_where_subquery(ref('orders')) }}", + "values": [ + "placed", + "shipped", + "completed", + "return_pending", + "returned" + ] + }, + "name": "accepted_values", + "namespace": null + }, + "unique_id": "test.jaffle_shop.accepted_values_orders_status__placed__shipped__completed__return_pending__returned.be6b5b5ec3", + "unrendered_config": { + "alias": "accepted_values_orders_1ce6ab157c285f7cd2ac656013faf758" + } + }, + "test.jaffle_shop.accepted_values_stg_orders_status__placed__shipped__completed__return_pending__returned.080fb20aad": { + "alias": "accepted_values_stg_orders_4f514bf94b77b7ea437830eec4421c58", + "attached_node": "model.jaffle_shop.stg_orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "status", + "columns": {}, + "compiled_path": null, + "config": { + "alias": "accepted_values_stg_orders_4f514bf94b77b7ea437830eec4421c58", + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.794427, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_accepted_values", + "macro.dbt.get_where_subquery" + ], + "nodes": [ + "model.jaffle_shop.stg_orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.stg_orders", + "fqn": [ + "jaffle_shop", + "staging", + "accepted_values_stg_orders_status__placed__shipped__completed__return_pending__returned" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "accepted_values_stg_orders_status__placed__shipped__completed__return_pending__returned", + "original_file_path": "models/staging/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "accepted_values_stg_orders_4f514bf94b77b7ea437830eec4421c58.sql", + "raw_code": "{{ test_accepted_values(**_dbt_generic_test_kwargs) }}{{ config(alias=\"accepted_values_stg_orders_4f514bf94b77b7ea437830eec4421c58\") }}", + "refs": [ + { + "name": "stg_orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "status", + "model": "{{ get_where_subquery(ref('stg_orders')) }}", + "values": [ + "placed", + "shipped", + "completed", + "return_pending", + "returned" + ] + }, + "name": "accepted_values", + "namespace": null + }, + "unique_id": "test.jaffle_shop.accepted_values_stg_orders_status__placed__shipped__completed__return_pending__returned.080fb20aad", + "unrendered_config": { + "alias": "accepted_values_stg_orders_4f514bf94b77b7ea437830eec4421c58" + } + }, + "test.jaffle_shop.accepted_values_stg_payments_payment_method__credit_card__coupon__bank_transfer__gift_card.3c3820f278": { + "alias": "accepted_values_stg_payments_c7909fb19b1f0177c2bf99c7912f06ef", + "attached_node": "model.jaffle_shop.stg_payments", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "payment_method", + "columns": {}, + "compiled_path": null, + "config": { + "alias": "accepted_values_stg_payments_c7909fb19b1f0177c2bf99c7912f06ef", + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.7980769, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_accepted_values", + "macro.dbt.get_where_subquery" + ], + "nodes": [ + "model.jaffle_shop.stg_payments" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.stg_payments", + "fqn": [ + "jaffle_shop", + "staging", + "accepted_values_stg_payments_payment_method__credit_card__coupon__bank_transfer__gift_card" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "accepted_values_stg_payments_payment_method__credit_card__coupon__bank_transfer__gift_card", + "original_file_path": "models/staging/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "accepted_values_stg_payments_c7909fb19b1f0177c2bf99c7912f06ef.sql", + "raw_code": "{{ test_accepted_values(**_dbt_generic_test_kwargs) }}{{ config(alias=\"accepted_values_stg_payments_c7909fb19b1f0177c2bf99c7912f06ef\") }}", + "refs": [ + { + "name": "stg_payments", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "payment_method", + "model": "{{ get_where_subquery(ref('stg_payments')) }}", + "values": [ + "credit_card", + "coupon", + "bank_transfer", + "gift_card" + ] + }, + "name": "accepted_values", + "namespace": null + }, + "unique_id": "test.jaffle_shop.accepted_values_stg_payments_payment_method__credit_card__coupon__bank_transfer__gift_card.3c3820f278", + "unrendered_config": { + "alias": "accepted_values_stg_payments_c7909fb19b1f0177c2bf99c7912f06ef" + } + }, + "test.jaffle_shop.not_null_customers_customer_id.5c9bf9911d": { + "alias": "not_null_customers_customer_id", + "attached_node": "model.jaffle_shop.customers", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "customer_id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.7480042, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "model.jaffle_shop.customers" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.customers", + "fqn": [ + "jaffle_shop", + "not_null_customers_customer_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "not_null_customers_customer_id", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "not_null_customers_customer_id.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "customers", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "customer_id", + "model": "{{ get_where_subquery(ref('customers')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.not_null_customers_customer_id.5c9bf9911d", + "unrendered_config": {} + }, + "test.jaffle_shop.not_null_orders_amount.106140f9fd": { + "alias": "not_null_orders_amount", + "attached_node": "model.jaffle_shop.orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "amount", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.7657018, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "model.jaffle_shop.orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.orders", + "fqn": [ + "jaffle_shop", + "not_null_orders_amount" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "not_null_orders_amount", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "not_null_orders_amount.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "amount", + "model": "{{ get_where_subquery(ref('orders')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.not_null_orders_amount.106140f9fd", + "unrendered_config": {} + }, + "test.jaffle_shop.not_null_orders_bank_transfer_amount.7743500c49": { + "alias": "not_null_orders_bank_transfer_amount", + "attached_node": "model.jaffle_shop.orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "bank_transfer_amount", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.768752, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "model.jaffle_shop.orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.orders", + "fqn": [ + "jaffle_shop", + "not_null_orders_bank_transfer_amount" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "not_null_orders_bank_transfer_amount", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "not_null_orders_bank_transfer_amount.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "bank_transfer_amount", + "model": "{{ get_where_subquery(ref('orders')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.not_null_orders_bank_transfer_amount.7743500c49", + "unrendered_config": {} + }, + "test.jaffle_shop.not_null_orders_coupon_amount.ab90c90625": { + "alias": "not_null_orders_coupon_amount", + "attached_node": "model.jaffle_shop.orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "coupon_amount", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.767988, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "model.jaffle_shop.orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.orders", + "fqn": [ + "jaffle_shop", + "not_null_orders_coupon_amount" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "not_null_orders_coupon_amount", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "not_null_orders_coupon_amount.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "coupon_amount", + "model": "{{ get_where_subquery(ref('orders')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.not_null_orders_coupon_amount.ab90c90625", + "unrendered_config": {} + }, + "test.jaffle_shop.not_null_orders_credit_card_amount.d3ca593b59": { + "alias": "not_null_orders_credit_card_amount", + "attached_node": "model.jaffle_shop.orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "credit_card_amount", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.767168, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "model.jaffle_shop.orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.orders", + "fqn": [ + "jaffle_shop", + "not_null_orders_credit_card_amount" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "not_null_orders_credit_card_amount", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "not_null_orders_credit_card_amount.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "credit_card_amount", + "model": "{{ get_where_subquery(ref('orders')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.not_null_orders_credit_card_amount.d3ca593b59", + "unrendered_config": {} + }, + "test.jaffle_shop.not_null_orders_customer_id.c5f02694af": { + "alias": "not_null_orders_customer_id", + "attached_node": "model.jaffle_shop.orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "customer_id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.7504, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "model.jaffle_shop.orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.orders", + "fqn": [ + "jaffle_shop", + "not_null_orders_customer_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "not_null_orders_customer_id", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "not_null_orders_customer_id.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "customer_id", + "model": "{{ get_where_subquery(ref('orders')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.not_null_orders_customer_id.c5f02694af", + "unrendered_config": {} + }, + "test.jaffle_shop.not_null_orders_gift_card_amount.413a0d2d7a": { + "alias": "not_null_orders_gift_card_amount", + "attached_node": "model.jaffle_shop.orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "gift_card_amount", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.769496, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "model.jaffle_shop.orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.orders", + "fqn": [ + "jaffle_shop", + "not_null_orders_gift_card_amount" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "not_null_orders_gift_card_amount", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "not_null_orders_gift_card_amount.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "gift_card_amount", + "model": "{{ get_where_subquery(ref('orders')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.not_null_orders_gift_card_amount.413a0d2d7a", + "unrendered_config": {} + }, + "test.jaffle_shop.not_null_orders_order_id.cf6c17daed": { + "alias": "not_null_orders_order_id", + "attached_node": "model.jaffle_shop.orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "order_id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.749543, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "model.jaffle_shop.orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.orders", + "fqn": [ + "jaffle_shop", + "not_null_orders_order_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "not_null_orders_order_id", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "not_null_orders_order_id.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "order_id", + "model": "{{ get_where_subquery(ref('orders')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.not_null_orders_order_id.cf6c17daed", + "unrendered_config": {} + }, + "test.jaffle_shop.not_null_stg_customers_customer_id.e2cfb1f9aa": { + "alias": "not_null_stg_customers_customer_id", + "attached_node": "model.jaffle_shop.stg_customers", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "customer_id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.7887979, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "model.jaffle_shop.stg_customers" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.stg_customers", + "fqn": [ + "jaffle_shop", + "staging", + "not_null_stg_customers_customer_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "not_null_stg_customers_customer_id", + "original_file_path": "models/staging/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "not_null_stg_customers_customer_id.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "stg_customers", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "customer_id", + "model": "{{ get_where_subquery(ref('stg_customers')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.not_null_stg_customers_customer_id.e2cfb1f9aa", + "unrendered_config": {} + }, + "test.jaffle_shop.not_null_stg_orders_order_id.81cfe2fe64": { + "alias": "not_null_stg_orders_order_id", + "attached_node": "model.jaffle_shop.stg_orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "order_id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.793638, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "model.jaffle_shop.stg_orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.stg_orders", + "fqn": [ + "jaffle_shop", + "staging", + "not_null_stg_orders_order_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "not_null_stg_orders_order_id", + "original_file_path": "models/staging/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "not_null_stg_orders_order_id.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "stg_orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "order_id", + "model": "{{ get_where_subquery(ref('stg_orders')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.not_null_stg_orders_order_id.81cfe2fe64", + "unrendered_config": {} + }, + "test.jaffle_shop.not_null_stg_payments_payment_id.c19cc50075": { + "alias": "not_null_stg_payments_payment_id", + "attached_node": "model.jaffle_shop.stg_payments", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "payment_id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.7973142, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "model.jaffle_shop.stg_payments" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.stg_payments", + "fqn": [ + "jaffle_shop", + "staging", + "not_null_stg_payments_payment_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "not_null_stg_payments_payment_id", + "original_file_path": "models/staging/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "not_null_stg_payments_payment_id.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "stg_payments", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "payment_id", + "model": "{{ get_where_subquery(ref('stg_payments')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.not_null_stg_payments_payment_id.c19cc50075", + "unrendered_config": {} + }, + "test.jaffle_shop.relationships_orders_customer_id__customer_id__ref_customers_.c6ec7f58f2": { + "alias": "relationships_orders_customer_id__customer_id__ref_customers_", + "attached_node": "model.jaffle_shop.orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "customer_id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.751168, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_relationships", + "macro.dbt.get_where_subquery" + ], + "nodes": [ + "model.jaffle_shop.customers", + "model.jaffle_shop.orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.orders", + "fqn": [ + "jaffle_shop", + "relationships_orders_customer_id__customer_id__ref_customers_" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "relationships_orders_customer_id__customer_id__ref_customers_", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "relationships_orders_customer_id__customer_id__ref_customers_.sql", + "raw_code": "{{ test_relationships(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "customers", + "package": null, + "version": null + }, + { + "name": "orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "customer_id", + "field": "customer_id", + "model": "{{ get_where_subquery(ref('orders')) }}", + "to": "ref('customers')" + }, + "name": "relationships", + "namespace": null + }, + "unique_id": "test.jaffle_shop.relationships_orders_customer_id__customer_id__ref_customers_.c6ec7f58f2", + "unrendered_config": {} + }, + "test.jaffle_shop.source_not_null_postgres_db_raw_customers_id.de3e9fff76": { + "alias": "source_not_null_postgres_db_raw_customers_id", + "attached_node": null, + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.850983, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "source.jaffle_shop.postgres_db.raw_customers" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "sources.postgres_db", + "fqn": [ + "jaffle_shop", + "staging", + "source_not_null_postgres_db_raw_customers_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "source_not_null_postgres_db_raw_customers_id", + "original_file_path": "models/staging/sources.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "source_not_null_postgres_db_raw_customers_id.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [ + [ + "postgres_db", + "raw_customers" + ] + ], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "id", + "model": "{{ get_where_subquery(source('postgres_db', 'raw_customers')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.source_not_null_postgres_db_raw_customers_id.de3e9fff76", + "unrendered_config": {} + }, + "test.jaffle_shop.source_not_null_postgres_db_raw_orders_id.0dc5a4d454": { + "alias": "source_not_null_postgres_db_raw_orders_id", + "attached_node": null, + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.857149, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "source.jaffle_shop.postgres_db.raw_orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "sources.postgres_db", + "fqn": [ + "jaffle_shop", + "staging", + "source_not_null_postgres_db_raw_orders_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "source_not_null_postgres_db_raw_orders_id", + "original_file_path": "models/staging/sources.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "source_not_null_postgres_db_raw_orders_id.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [ + [ + "postgres_db", + "raw_orders" + ] + ], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "id", + "model": "{{ get_where_subquery(source('postgres_db', 'raw_orders')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.source_not_null_postgres_db_raw_orders_id.0dc5a4d454", + "unrendered_config": {} + }, + "test.jaffle_shop.source_not_null_postgres_db_raw_payments_id.15f4f169e7": { + "alias": "source_not_null_postgres_db_raw_payments_id", + "attached_node": null, + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.85549, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_not_null" + ], + "nodes": [ + "source.jaffle_shop.postgres_db.raw_payments" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "sources.postgres_db", + "fqn": [ + "jaffle_shop", + "staging", + "source_not_null_postgres_db_raw_payments_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "source_not_null_postgres_db_raw_payments_id", + "original_file_path": "models/staging/sources.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "source_not_null_postgres_db_raw_payments_id.sql", + "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", + "refs": [], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [ + [ + "postgres_db", + "raw_payments" + ] + ], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "id", + "model": "{{ get_where_subquery(source('postgres_db', 'raw_payments')) }}" + }, + "name": "not_null", + "namespace": null + }, + "unique_id": "test.jaffle_shop.source_not_null_postgres_db_raw_payments_id.15f4f169e7", + "unrendered_config": {} + }, + "test.jaffle_shop.source_unique_postgres_db_raw_customers_id.6e5ad1d707": { + "alias": "source_unique_postgres_db_raw_customers_id", + "attached_node": null, + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.849803, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_unique" + ], + "nodes": [ + "source.jaffle_shop.postgres_db.raw_customers" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "sources.postgres_db", + "fqn": [ + "jaffle_shop", + "staging", + "source_unique_postgres_db_raw_customers_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "source_unique_postgres_db_raw_customers_id", + "original_file_path": "models/staging/sources.yml", + "package_name": "jaffle_shop", "patch_path": null, - "path": "movies_ratings_simplified.sql", - "raw_code": "{{ config(materialized='table') }}\n\nselect\n \"Title\",\n \"Rating\",\n \"TotalVotes\",\n \"Genre1\",\n \"Genre2\",\n \"Genre3\",\n \"Budget\",\n \"Domestic\",\n \"Foreign\",\n \"Worldwide\"\nfrom {{ source('imdb', 'movies_ratings') }}", + "path": "source_unique_postgres_db_raw_customers_id.sql", + "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "refs": [], - "relation_name": "main.\"movies_ratings_simplified\"", - "resource_type": "model", - "schema": "main", + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [ + [ + "postgres_db", + "raw_customers" + ] + ], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "id", + "model": "{{ get_where_subquery(source('postgres_db', 'raw_customers')) }}" + }, + "name": "unique", + "namespace": null + }, + "unique_id": "test.jaffle_shop.source_unique_postgres_db_raw_customers_id.6e5ad1d707", + "unrendered_config": {} + }, + "test.jaffle_shop.source_unique_postgres_db_raw_orders_id.0bf2272247": { + "alias": "source_unique_postgres_db_raw_orders_id", + "attached_node": null, + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.856386, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_unique" + ], + "nodes": [ + "source.jaffle_shop.postgres_db.raw_orders" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "sources.postgres_db", + "fqn": [ + "jaffle_shop", + "staging", + "source_unique_postgres_db_raw_orders_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "source_unique_postgres_db_raw_orders_id", + "original_file_path": "models/staging/sources.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "source_unique_postgres_db_raw_orders_id.sql", + "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", + "refs": [], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [ + [ + "postgres_db", + "raw_orders" + ] + ], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "id", + "model": "{{ get_where_subquery(source('postgres_db', 'raw_orders')) }}" + }, + "name": "unique", + "namespace": null + }, + "unique_id": "test.jaffle_shop.source_unique_postgres_db_raw_orders_id.0bf2272247", + "unrendered_config": {} + }, + "test.jaffle_shop.source_unique_postgres_db_raw_payments_id.a4bd02775f": { + "alias": "source_unique_postgres_db_raw_payments_id", + "attached_node": null, + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.8545659, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_unique" + ], + "nodes": [ + "source.jaffle_shop.postgres_db.raw_payments" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "sources.postgres_db", + "fqn": [ + "jaffle_shop", + "staging", + "source_unique_postgres_db_raw_payments_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "source_unique_postgres_db_raw_payments_id", + "original_file_path": "models/staging/sources.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "source_unique_postgres_db_raw_payments_id.sql", + "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", + "refs": [], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", "sources": [ [ - "imdb", - "movies_ratings" + "postgres_db", + "raw_payments" + ] + ], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "id", + "model": "{{ get_where_subquery(source('postgres_db', 'raw_payments')) }}" + }, + "name": "unique", + "namespace": null + }, + "unique_id": "test.jaffle_shop.source_unique_postgres_db_raw_payments_id.a4bd02775f", + "unrendered_config": {} + }, + "test.jaffle_shop.unique_customers_customer_id.c5af1ff4b1": { + "alias": "unique_customers_customer_id", + "attached_node": "model.jaffle_shop.customers", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "customer_id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.747018, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_unique" + ], + "nodes": [ + "model.jaffle_shop.customers" + ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.customers", + "fqn": [ + "jaffle_shop", + "unique_customers_customer_id" + ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "unique_customers_customer_id", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "unique_customers_customer_id.sql", + "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "customers", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "customer_id", + "model": "{{ get_where_subquery(ref('customers')) }}" + }, + "name": "unique", + "namespace": null + }, + "unique_id": "test.jaffle_shop.unique_customers_customer_id.c5af1ff4b1", + "unrendered_config": {} + }, + "test.jaffle_shop.unique_orders_order_id.fed79b3a6e": { + "alias": "unique_orders_order_id", + "attached_node": "model.jaffle_shop.orders", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "order_id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.7487848, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_unique" + ], + "nodes": [ + "model.jaffle_shop.orders" ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.orders", + "fqn": [ + "jaffle_shop", + "unique_orders_order_id" ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "unique_orders_order_id", + "original_file_path": "models/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "unique_orders_order_id.sql", + "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "orders", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], "tags": [], - "unique_id": "model.simple.movies_ratings_simplified", - "unrendered_config": { - "materialized": "table" - } + "test_metadata": { + "kwargs": { + "column_name": "order_id", + "model": "{{ get_where_subquery(ref('orders')) }}" + }, + "name": "unique", + "namespace": null + }, + "unique_id": "test.jaffle_shop.unique_orders_order_id.fed79b3a6e", + "unrendered_config": {} }, - "model.simple.top_animations": { - "alias": "top_animations", + "test.jaffle_shop.unique_stg_customers_customer_id.c7614daada": { + "alias": "unique_stg_customers_customer_id", + "attached_node": "model.jaffle_shop.stg_customers", "build_path": null, "checksum": { - "checksum": "fb6f8991e4c0acb2670b2bf94e4bfa741ffb9a3f222e8c3eba634bea3c38f0a4", - "name": "sha256" + "checksum": "", + "name": "none" }, + "column_name": "customer_id", "columns": {}, "compiled_path": null, "config": { "alias": null, - "column_types": {}, "database": null, - "docs": { - "node_color": null, - "show": true - }, "enabled": true, - "full_refresh": null, - "grants": {}, - "incremental_strategy": null, - "materialized": "table", + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", "meta": {}, - "on_schema_change": "ignore", - "packages": [], - "persist_docs": {}, - "post-hook": [], - "pre-hook": [], - "quoting": {}, - "schema": null, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, "tags": [], - "unique_key": null + "warn_if": "!= 0", + "where": null }, - "created_at": 1697205180.984051, - "database": "database", - "deferred": false, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.785654, + "database": "postgres", "depends_on": { - "macros": [], + "macros": [ + "macro.dbt.test_unique" + ], "nodes": [ - "model.simple.movies_ratings_simplified" + "model.jaffle_shop.stg_customers" ] }, "description": "", @@ -7078,42 +16086,54 @@ "node_color": null, "show": true }, + "file_key_name": "models.stg_customers", "fqn": [ - "simple", - "top_animations" + "jaffle_shop", + "staging", + "unique_stg_customers_customer_id" ], + "group": null, "language": "sql", "meta": {}, "metrics": [], - "name": "top_animations", - "original_file_path": "models/top_animations.sql", - "package_name": "simple", + "name": "unique_stg_customers_customer_id", + "original_file_path": "models/staging/schema.yml", + "package_name": "jaffle_shop", "patch_path": null, - "path": "top_animations.sql", - "raw_code": "{{ config(materialized='table') }}\n\nSELECT Title, Rating\nFROM {{ ref('movies_ratings_simplified') }}\nWHERE Genre1=='Animation'\nORDER BY Rating desc\nLIMIT 5;", + "path": "unique_stg_customers_customer_id.sql", + "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "refs": [ - [ - "movies_ratings_simplified" - ] + { + "name": "stg_customers", + "package": null, + "version": null + } ], - "relation_name": "main.\"top_animations\"", - "resource_type": "model", - "schema": "main", + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", "sources": [], "tags": [], - "unique_id": "model.simple.top_animations", - "unrendered_config": { - "materialized": "table" - } + "test_metadata": { + "kwargs": { + "column_name": "customer_id", + "model": "{{ get_where_subquery(ref('stg_customers')) }}" + }, + "name": "unique", + "namespace": null + }, + "unique_id": "test.jaffle_shop.unique_stg_customers_customer_id.c7614daada", + "unrendered_config": {} }, - "test.simple.source_not_null_imdb_movies_ratings_X.e684bf90f4": { - "alias": "source_not_null_imdb_movies_ratings_X", + "test.jaffle_shop.unique_stg_orders_order_id.e3b841c71a": { + "alias": "unique_stg_orders_order_id", + "attached_node": "model.jaffle_shop.stg_orders", "build_path": null, "checksum": { "checksum": "", "name": "none" }, - "column_name": "X", + "column_name": "order_id", "columns": {}, "compiled_path": null, "config": { @@ -7122,25 +16142,31 @@ "enabled": true, "error_if": "!= 0", "fail_calc": "count(*)", + "group": null, "limit": null, "materialized": "test", "meta": {}, "schema": "dbt_test__audit", "severity": "ERROR", "store_failures": null, + "store_failures_as": null, "tags": [], "warn_if": "!= 0", "where": null }, - "created_at": 1697205181.009168, - "database": "database", - "deferred": false, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.791896, + "database": "postgres", "depends_on": { "macros": [ - "macro.dbt.test_not_null" + "macro.dbt.test_unique" ], "nodes": [ - "source.simple.main.movies_ratings" + "model.jaffle_shop.stg_orders" ] }, "description": "", @@ -7148,67 +16174,380 @@ "node_color": null, "show": true }, - "file_key_name": "sources.imdb", + "file_key_name": "models.stg_orders", "fqn": [ - "simple", - "source_not_null_imdb_movies_ratings_X" + "jaffle_shop", + "staging", + "unique_stg_orders_order_id" ], + "group": null, "language": "sql", "meta": {}, "metrics": [], - "name": "source_not_null_imdb_movies_ratings_X", - "original_file_path": "models/source.yml", - "package_name": "simple", + "name": "unique_stg_orders_order_id", + "original_file_path": "models/staging/schema.yml", + "package_name": "jaffle_shop", "patch_path": null, - "path": "source_not_null_imdb_movies_ratings_X.sql", - "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", - "refs": [], + "path": "unique_stg_orders_order_id.sql", + "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "stg_orders", + "package": null, + "version": null + } + ], "relation_name": null, "resource_type": "test", - "schema": "main_dbt_test__audit", - "sources": [ - [ - "imdb", - "movies_ratings" + "schema": "postgres_dbt_test__audit", + "sources": [], + "tags": [], + "test_metadata": { + "kwargs": { + "column_name": "order_id", + "model": "{{ get_where_subquery(ref('stg_orders')) }}" + }, + "name": "unique", + "namespace": null + }, + "unique_id": "test.jaffle_shop.unique_stg_orders_order_id.e3b841c71a", + "unrendered_config": {} + }, + "test.jaffle_shop.unique_stg_payments_payment_id.3744510712": { + "alias": "unique_stg_payments_payment_id", + "attached_node": "model.jaffle_shop.stg_payments", + "build_path": null, + "checksum": { + "checksum": "", + "name": "none" + }, + "column_name": "payment_id", + "columns": {}, + "compiled_path": null, + "config": { + "alias": null, + "database": null, + "enabled": true, + "error_if": "!= 0", + "fail_calc": "count(*)", + "group": null, + "limit": null, + "materialized": "test", + "meta": {}, + "schema": "dbt_test__audit", + "severity": "ERROR", + "store_failures": null, + "store_failures_as": null, + "tags": [], + "warn_if": "!= 0", + "where": null + }, + "contract": { + "alias_types": true, + "checksum": null, + "enforced": false + }, + "created_at": 1733768712.796554, + "database": "postgres", + "depends_on": { + "macros": [ + "macro.dbt.test_unique" + ], + "nodes": [ + "model.jaffle_shop.stg_payments" ] + }, + "description": "", + "docs": { + "node_color": null, + "show": true + }, + "file_key_name": "models.stg_payments", + "fqn": [ + "jaffle_shop", + "staging", + "unique_stg_payments_payment_id" ], + "group": null, + "language": "sql", + "meta": {}, + "metrics": [], + "name": "unique_stg_payments_payment_id", + "original_file_path": "models/staging/schema.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "unique_stg_payments_payment_id.sql", + "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", + "refs": [ + { + "name": "stg_payments", + "package": null, + "version": null + } + ], + "relation_name": null, + "resource_type": "test", + "schema": "postgres_dbt_test__audit", + "sources": [], "tags": [], "test_metadata": { "kwargs": { - "column_name": "X", - "model": "{{ get_where_subquery(source('imdb', 'movies_ratings')) }}" + "column_name": "payment_id", + "model": "{{ get_where_subquery(ref('stg_payments')) }}" }, - "name": "not_null", + "name": "unique", "namespace": null }, - "unique_id": "test.simple.source_not_null_imdb_movies_ratings_X.e684bf90f4", + "unique_id": "test.jaffle_shop.unique_stg_payments_payment_id.3744510712", "unrendered_config": {} } }, "parent_map": { - "exposure.simple.weekly_metrics": [ - "model.simple.top_animations" + "exposure.jaffle_shop.weekly_metrics": [ + "model.jaffle_shop.customers" + ], + "model.jaffle_shop.customers": [ + "model.jaffle_shop.stg_customers", + "model.jaffle_shop.stg_orders", + "model.jaffle_shop.stg_payments" + ], + "model.jaffle_shop.orders": [ + "model.jaffle_shop.stg_orders", + "model.jaffle_shop.stg_payments" + ], + "model.jaffle_shop.stg_customers": [ + "seed.jaffle_shop.raw_customers", + "source.jaffle_shop.postgres_db.raw_customers" + ], + "model.jaffle_shop.stg_orders": [ + "seed.jaffle_shop.raw_customers", + "source.jaffle_shop.postgres_db.raw_orders" + ], + "model.jaffle_shop.stg_payments": [ + "seed.jaffle_shop.raw_customers", + "source.jaffle_shop.postgres_db.raw_payments" + ], + "model.jaffle_shop.\uff4d\uff55\uff4c\uff54\uff49\uff42\uff59\uff54\uff45": [], + "seed.jaffle_shop.raw_customers": [], + "seed.jaffle_shop.raw_orders": [], + "seed.jaffle_shop.raw_payments": [], + "source.jaffle_shop.postgres_db.raw_customers": [], + "source.jaffle_shop.postgres_db.raw_orders": [], + "source.jaffle_shop.postgres_db.raw_payments": [], + "test.jaffle_shop.accepted_values_orders_status__placed__shipped__completed__return_pending__returned.be6b5b5ec3": [ + "model.jaffle_shop.orders" + ], + "test.jaffle_shop.accepted_values_stg_orders_status__placed__shipped__completed__return_pending__returned.080fb20aad": [ + "model.jaffle_shop.stg_orders" + ], + "test.jaffle_shop.accepted_values_stg_payments_payment_method__credit_card__coupon__bank_transfer__gift_card.3c3820f278": [ + "model.jaffle_shop.stg_payments" + ], + "test.jaffle_shop.not_null_customers_customer_id.5c9bf9911d": [ + "model.jaffle_shop.customers" + ], + "test.jaffle_shop.not_null_orders_amount.106140f9fd": [ + "model.jaffle_shop.orders" + ], + "test.jaffle_shop.not_null_orders_bank_transfer_amount.7743500c49": [ + "model.jaffle_shop.orders" + ], + "test.jaffle_shop.not_null_orders_coupon_amount.ab90c90625": [ + "model.jaffle_shop.orders" + ], + "test.jaffle_shop.not_null_orders_credit_card_amount.d3ca593b59": [ + "model.jaffle_shop.orders" ], - "model.simple.movies_ratings_simplified": [ - "source.simple.main.movies_ratings" + "test.jaffle_shop.not_null_orders_customer_id.c5f02694af": [ + "model.jaffle_shop.orders" ], - "model.simple.top_animations": [ - "model.simple.movies_ratings_simplified" + "test.jaffle_shop.not_null_orders_gift_card_amount.413a0d2d7a": [ + "model.jaffle_shop.orders" ], - "source.simple.main.movies_ratings": [], - "test.simple.source_not_null_imdb_movies_ratings_X.e684bf90f4": [ - "source.simple.main.movies_ratings" + "test.jaffle_shop.not_null_orders_order_id.cf6c17daed": [ + "model.jaffle_shop.orders" + ], + "test.jaffle_shop.not_null_stg_customers_customer_id.e2cfb1f9aa": [ + "model.jaffle_shop.stg_customers" + ], + "test.jaffle_shop.not_null_stg_orders_order_id.81cfe2fe64": [ + "model.jaffle_shop.stg_orders" + ], + "test.jaffle_shop.not_null_stg_payments_payment_id.c19cc50075": [ + "model.jaffle_shop.stg_payments" + ], + "test.jaffle_shop.relationships_orders_customer_id__customer_id__ref_customers_.c6ec7f58f2": [ + "model.jaffle_shop.customers", + "model.jaffle_shop.orders" + ], + "test.jaffle_shop.source_not_null_postgres_db_raw_customers_id.de3e9fff76": [ + "source.jaffle_shop.postgres_db.raw_customers" + ], + "test.jaffle_shop.source_not_null_postgres_db_raw_orders_id.0dc5a4d454": [ + "source.jaffle_shop.postgres_db.raw_orders" + ], + "test.jaffle_shop.source_not_null_postgres_db_raw_payments_id.15f4f169e7": [ + "source.jaffle_shop.postgres_db.raw_payments" + ], + "test.jaffle_shop.source_unique_postgres_db_raw_customers_id.6e5ad1d707": [ + "source.jaffle_shop.postgres_db.raw_customers" + ], + "test.jaffle_shop.source_unique_postgres_db_raw_orders_id.0bf2272247": [ + "source.jaffle_shop.postgres_db.raw_orders" + ], + "test.jaffle_shop.source_unique_postgres_db_raw_payments_id.a4bd02775f": [ + "source.jaffle_shop.postgres_db.raw_payments" + ], + "test.jaffle_shop.unique_customers_customer_id.c5af1ff4b1": [ + "model.jaffle_shop.customers" + ], + "test.jaffle_shop.unique_orders_order_id.fed79b3a6e": [ + "model.jaffle_shop.orders" + ], + "test.jaffle_shop.unique_stg_customers_customer_id.c7614daada": [ + "model.jaffle_shop.stg_customers" + ], + "test.jaffle_shop.unique_stg_orders_order_id.e3b841c71a": [ + "model.jaffle_shop.stg_orders" + ], + "test.jaffle_shop.unique_stg_payments_payment_id.3744510712": [ + "model.jaffle_shop.stg_payments" ] }, + "saved_queries": {}, "selectors": {}, + "semantic_models": {}, "sources": { - "source.simple.main.movies_ratings": { + "source.jaffle_shop.postgres_db.raw_customers": { + "columns": { + "id": { + "constraints": [], + "data_type": null, + "description": "", + "meta": {}, + "name": "id", + "quote": null, + "tags": [] + } + }, + "config": { + "enabled": true + }, + "created_at": 1733768712.8533492, + "database": "postgres", + "description": "", + "external": null, + "fqn": [ + "jaffle_shop", + "staging", + "postgres_db", + "raw_customers" + ], + "freshness": { + "error_after": { + "count": null, + "period": null + }, + "filter": null, + "warn_after": { + "count": null, + "period": null + } + }, + "identifier": "raw_customers", + "loaded_at_field": null, + "loader": "", + "meta": {}, + "name": "raw_customers", + "original_file_path": "models/staging/sources.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "models/staging/sources.yml", + "quoting": { + "column": null, + "database": null, + "identifier": null, + "schema": null + }, + "relation_name": "\"postgres\".\"postgres\".\"raw_customers\"", + "resource_type": "source", + "schema": "postgres", + "source_description": "", + "source_meta": {}, + "source_name": "postgres_db", + "tags": [], + "unique_id": "source.jaffle_shop.postgres_db.raw_customers", + "unrendered_config": {} + }, + "source.jaffle_shop.postgres_db.raw_orders": { + "columns": { + "id": { + "constraints": [], + "data_type": null, + "description": "", + "meta": {}, + "name": "id", + "quote": null, + "tags": [] + } + }, + "config": { + "enabled": true + }, + "created_at": 1733768712.8575401, + "database": "postgres", + "description": "", + "external": null, + "fqn": [ + "jaffle_shop", + "staging", + "postgres_db", + "raw_orders" + ], + "freshness": { + "error_after": { + "count": null, + "period": null + }, + "filter": null, + "warn_after": { + "count": 3650, + "period": "day" + } + }, + "identifier": "raw_orders", + "loaded_at_field": "CAST(order_date AS TIMESTAMP)", + "loader": "", + "meta": {}, + "name": "raw_orders", + "original_file_path": "models/staging/sources.yml", + "package_name": "jaffle_shop", + "patch_path": null, + "path": "models/staging/sources.yml", + "quoting": { + "column": null, + "database": null, + "identifier": null, + "schema": null + }, + "relation_name": "\"postgres\".\"postgres\".\"raw_orders\"", + "resource_type": "source", + "schema": "postgres", + "source_description": "", + "source_meta": {}, + "source_name": "postgres_db", + "tags": [], + "unique_id": "source.jaffle_shop.postgres_db.raw_orders", + "unrendered_config": {} + }, + "source.jaffle_shop.postgres_db.raw_payments": { "columns": { - "X": { + "id": { + "constraints": [], "data_type": null, "description": "", "meta": {}, - "name": "X", + "name": "id", "quote": null, "tags": [] } @@ -7216,14 +16555,15 @@ "config": { "enabled": true }, - "created_at": 1697205181.0098429, - "database": "database", - "description": "Ratings by movie\n", + "created_at": 1733768712.855905, + "database": "postgres", + "description": "", "external": null, "fqn": [ - "simple", - "imdb", - "movies_ratings" + "jaffle_shop", + "staging", + "postgres_db", + "raw_payments" ], "freshness": { "error_after": { @@ -7236,30 +16576,31 @@ "period": null } }, - "identifier": "movies_ratings", + "identifier": "raw_payments", "loaded_at_field": null, "loader": "", "meta": {}, - "name": "movies_ratings", - "original_file_path": "models/source.yml", - "package_name": "simple", + "name": "raw_payments", + "original_file_path": "models/staging/sources.yml", + "package_name": "jaffle_shop", "patch_path": null, - "path": "models/source.yml", + "path": "models/staging/sources.yml", "quoting": { "column": null, "database": null, "identifier": null, "schema": null }, - "relation_name": "imdb.\"movies_ratings\"", + "relation_name": "\"postgres\".\"postgres\".\"raw_payments\"", "resource_type": "source", - "schema": "imdb", - "source_description": "Example of IMDB SQlite database", + "schema": "postgres", + "source_description": "", "source_meta": {}, - "source_name": "imdb", + "source_name": "postgres_db", "tags": [], - "unique_id": "source.simple.main.movies_ratings", + "unique_id": "source.jaffle_shop.postgres_db.raw_payments", "unrendered_config": {} } - } + }, + "unit_tests": {} }