{"metadata": {"dbt_schema_version": "https://schemas.getdbt.com/dbt/manifest/v12.json", "dbt_version": "1.12.0", "generated_at": "2026-07-16T18:07:36.722776Z", "invocation_id": "eb0bb5d4-b111-46cf-9b81-5e2f74744337", "invocation_started_at": "2026-07-16T18:03:53.796839+00:00", "env": {}, "project_name": "school_compare", "project_id": "ad0b158e159ec53d890c04c6537e7574", "user_id": "d8efb97e-d188-4585-899c-3ba2e484f763", "send_anonymous_usage_stats": true, "adapter_type": "postgres", "quoting": {"database": true, "schema": true, "identifier": true, "column": null}, "run_started_at": "2026-07-16T18:03:53.796964+00:00"}, "nodes": {"seed.school_compare.la_code_names": {"database": "school_compare", "schema": "seeds", "name": "la_code_names", "resource_type": "seed", "package_name": "school_compare", "path": "la_code_names.csv", "original_file_path": "seeds/la_code_names.csv", "unique_id": "seed.school_compare.la_code_names", "fqn": ["school_compare", "la_code_names"], "alias": "la_code_names", "checksum": {"name": "sha256", "checksum": "a3924c9bda3cb6be5f85832b0744c21935a4e006bc9e2d71ca03b075157abe8e"}, "config": {"enabled": true, "alias": null, "schema": "seeds", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "seed", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "delimiter": ",", "quote_columns": null}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"schema": "seeds"}, "created_at": 1784225035.5701702, "relation_name": "\"school_compare\".\"seeds\".\"la_code_names\"", "raw_code": "", "doc_blocks": [], "root_path": "/Users/tudor/projects/school_compare/pipeline/transform", "depends_on": {"macros": []}}, "seed.school_compare.gias_code_names": {"database": "school_compare", "schema": "seeds", "name": "gias_code_names", "resource_type": "seed", "package_name": "school_compare", "path": "gias_code_names.csv", "original_file_path": "seeds/gias_code_names.csv", "unique_id": "seed.school_compare.gias_code_names", "fqn": ["school_compare", "gias_code_names"], "alias": "gias_code_names", "checksum": {"name": "sha256", "checksum": "be09e2443f1d0d9ed3d0f8637ae38183e63b9e40c208e8684993e17ac5f2903b"}, "config": {"enabled": true, "alias": null, "schema": "seeds", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "seed", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "delimiter": ",", "quote_columns": null}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"schema": "seeds"}, "created_at": 1784225035.5709639, "relation_name": "\"school_compare\".\"seeds\".\"gias_code_names\"", "raw_code": "", "doc_blocks": [], "root_path": "/Users/tudor/projects/school_compare/pipeline/transform", "depends_on": {"macros": []}}, "seed.school_compare.school_type_codes": {"database": "school_compare", "schema": "seeds", "name": "school_type_codes", "resource_type": "seed", "package_name": "school_compare", "path": "school_type_codes.csv", "original_file_path": "seeds/school_type_codes.csv", "unique_id": "seed.school_compare.school_type_codes", "fqn": ["school_compare", "school_type_codes"], "alias": "school_type_codes", "checksum": {"name": "sha256", "checksum": "6020353ed39356287495de70fd2b44bed411ef059b2e61b0136c0faf3c9769cf"}, "config": {"enabled": true, "alias": null, "schema": "seeds", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "seed", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "delimiter": ",", "quote_columns": null}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"schema": "seeds"}, "created_at": 1784225035.5715232, "relation_name": "\"school_compare\".\"seeds\".\"school_type_codes\"", "raw_code": "", "doc_blocks": [], "root_path": "/Users/tudor/projects/school_compare/pipeline/transform", "depends_on": {"macros": []}}, "model.school_compare.stg_ees_ks4_national": {"database": "school_compare", "schema": "staging", "name": "stg_ees_ks4_national", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_ees_ks4_national.sql", "original_file_path": "models/staging/stg_ees_ks4_national.sql", "unique_id": "model.school_compare.stg_ees_ks4_national", "fqn": ["school_compare", "staging", "stg_ees_ks4_national"], "alias": "stg_ees_ks4_national", "checksum": {"name": "sha256", "checksum": "cdc96082b585ef4940e4d3950a129f9c2a3fec9b10a2261be885f9e59a4c6be8"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "table", "schema": "staging"}, "created_at": 1784225256.821694, "relation_name": "\"school_compare\".\"staging\".\"stg_ees_ks4_national\"", "raw_code": "{{ config(materialized='table') }}\n\n-- Staging model: official DfE KS4 national headline averages \u2014 one row per\n-- academic year (England, all state-funded, all pupils). Source: EES data\n-- catalogue \"National characteristics summary data\". Suppressed values\n-- ('z', 'x') are coerced to NULL by safe_numeric \u2014 Progress 8 is 'z' in\n-- years with no KS2 baseline (e.g. 2024/25): legitimately unpublished.\n\nselect\n cast(trim(time_period) as integer) as year,\n {{ safe_numeric('attainment_8_score') }} as attainment_8_score,\n {{ safe_numeric('progress_8_score') }} as progress_8_score,\n {{ safe_numeric('english_maths_standard_pass_pct') }} as english_maths_standard_pass_pct,\n {{ safe_numeric('english_maths_strong_pass_pct') }} as english_maths_strong_pass_pct,\n {{ safe_numeric('ebacc_entry_pct') }} as ebacc_entry_pct,\n {{ safe_numeric('ebacc_standard_pass_pct') }} as ebacc_standard_pass_pct,\n {{ safe_numeric('ebacc_strong_pass_pct') }} as ebacc_strong_pass_pct,\n {{ safe_numeric('ebacc_avg_score') }} as ebacc_avg_score\nfrom {{ source('raw', 'ees_ks4_national') }}\nwhere time_period ~ '^[0-9]+$'", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "ees_ks4_national"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.school_compare.safe_numeric"], "nodes": ["source.school_compare.raw.ees_ks4_national"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.dim_location": {"database": "school_compare", "schema": "marts", "name": "dim_location", "resource_type": "model", "package_name": "school_compare", "path": "marts/dim_location.sql", "original_file_path": "models/marts/dim_location.sql", "unique_id": "model.school_compare.dim_location", "fqn": ["school_compare", "marts", "dim_location"], "alias": "dim_location", "checksum": {"name": "sha256", "checksum": "d52fb2b99be90d6fa3c9e3e4f75b5f1bf872450a5e4460aea47d6e9dd6d1d210"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "School location dimension with PostGIS geometry", "columns": {"urn": {"name": "urn", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "postcode": {"name": "postcode", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.955647, "relation_name": "\"school_compare\".\"marts\".\"dim_location\"", "raw_code": "-- Mart: School location dimension \u2014 one row per URN, PostGIS-enabled\n-- Geometry derived from GIAS easting/northing (British National Grid \u2192 WGS84).\n-- For schools missing easting/northing, the geocode script backfills via Postcodes.io.\n\nselect\n s.urn,\n s.address_line1,\n s.address_line2,\n s.town,\n s.county,\n s.postcode,\n s.local_authority_code,\n s.local_authority_name,\n s.parliamentary_constituency,\n s.urban_rural,\n s.easting,\n s.northing,\n case\n when s.easting is not null and s.northing is not null\n then ST_Transform(ST_SetSRID(ST_MakePoint(s.easting::double precision, s.northing::double precision), 27700), 4326)\n else null\n end as geom,\n case\n when s.easting is not null and s.northing is not null\n then ST_Y(ST_Transform(ST_SetSRID(ST_MakePoint(s.easting::double precision, s.northing::double precision), 27700), 4326))\n else null\n end as latitude,\n case\n when s.easting is not null and s.northing is not null\n then ST_X(ST_Transform(ST_SetSRID(ST_MakePoint(s.easting::double precision, s.northing::double precision), 27700), 4326))\n else null\n end as longitude\nfrom {{ ref('stg_gias_establishments') }} s\n-- Must match dim_school's status filter exactly (the API inner-joins the two).\nwhere s.status_code in (1, 3)", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_gias_establishments", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_gias_establishments"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": ["urn"], "time_spine": null}, "model.school_compare.dim_school": {"database": "school_compare", "schema": "marts", "name": "dim_school", "resource_type": "model", "package_name": "school_compare", "path": "marts/dim_school.sql", "original_file_path": "models/marts/dim_school.sql", "unique_id": "model.school_compare.dim_school", "fqn": ["school_compare", "marts", "dim_school"], "alias": "dim_school", "checksum": {"name": "sha256", "checksum": "116be1472b8a5ef306d333ad7aec953f47ae184f8ceb8af7bab9770133b7a913"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "Canonical school dimension \u2014 one row per active URN", "columns": {"urn": {"name": "urn", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "school_name": {"name": "school_name", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "phase_code": {"name": "phase_code", "description": "GIAS PhaseOfEducation code (2 = Primary, 4 = Secondary, 7 = All-through, etc. \u2014 see seeds/gias_code_names.csv). May be null for a small number of independent schools where GIAS publishes \"Not Applicable\", no statutory age range, and the school name gives no hint.\n", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "has_sixth_form": {"name": "has_sixth_form", "description": "Authoritative sixth-form flag from GIAS OfficialSixthForm. \"Has a sixth form\" => true; \"Does not have a sixth form\" and \"Not applicable\" => false; blank GIAS value falls back to statutory_high_age >= 18. Replaces the age_range-contains-\"18\" heuristic (spec 2026-07-07 \u00a73).\n", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "status_code": {"name": "status_code", "description": "GIAS EstablishmentStatus code (1 = Open, 3 = Open but proposed to close)", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "school_type_code": {"name": "school_type_code", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "religious_character_code": {"name": "religious_character_code", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "admissions_policy_code": {"name": "admissions_policy_code", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.956583, "relation_name": "\"school_compare\".\"marts\".\"dim_school\"", "raw_code": "-- Mart: Canonical school dimension \u2014 one row per active URN\n\n-- int_ofsted_latest is only ref()'d inside a conditional block below (it may not\n-- exist before the Ofsted pipeline first runs), so declare the dependency\n-- explicitly for dbt's DAG.\n-- depends_on: {{ ref('int_ofsted_latest') }}\n\nwith schools as (\n select * from {{ ref('stg_gias_establishments') }}\n)\n\n{% set ofsted_relation = adapter.get_relation(\n database=target.database,\n schema='intermediate',\n identifier='int_ofsted_latest'\n) %}\n\nselect\n s.urn,\n s.local_authority_code * 1000 + s.establishment_number as laestab,\n s.school_name,\n -- Phase in GIAS code space (see seeds/gias_code_names.csv):\n -- 2 = Primary, 4 = Secondary, 7 = All-through, 0 = Not applicable.\n case\n -- 1. Trust GIAS phase when it's a real value (0 = the catch-all \"Not Applicable\")\n when s.phase_code is not null and s.phase_code != 0\n then s.phase_code\n -- 2. Infer from statutory age range (independent schools still publish these)\n when s.statutory_high_age is not null and s.statutory_high_age <= 11 then 2\n when s.statutory_low_age is not null and s.statutory_low_age >= 11 then 4\n when s.statutory_low_age is not null and s.statutory_high_age is not null\n and s.statutory_low_age < 11 and s.statutory_high_age > 11 then 7\n -- 3. Fallback: infer from school name (covers independents with missing ages)\n when s.school_name ilike '%primary%'\n or s.school_name ilike '%infant%'\n or s.school_name ilike '%junior%'\n or s.school_name ilike '%preparatory%'\n or s.school_name ilike '% prep school%'\n or s.school_name ilike '% prep %'\n then 2\n when s.school_name ilike '%secondary%'\n or s.school_name ilike '%high school%'\n or s.school_name ilike '%grammar%'\n or s.school_name ilike '%senior school%'\n or s.school_name ilike '%upper school%'\n then 4\n -- 4. Give up \u2014 null renders no phase pill\n else null\n end as phase_code,\n s.school_type_code,\n s.academy_trust_name,\n s.academy_trust_uid,\n s.religious_character_code,\n s.gender,\n s.statutory_low_age || '-' || s.statutory_high_age as age_range,\n -- GIAS OfficialSixthForm in code space: 1 = has, 2 = does not, 0 = N/A.\n -- Null (rare, new establishments) falls back to the statutory age range.\n case\n when s.official_sixth_form_code = 1 then true\n when s.official_sixth_form_code in (0, 2) then false\n else coalesce(s.statutory_high_age >= 18, false)\n end as has_sixth_form,\n s.capacity,\n s.total_pupils,\n concat_ws(' ', s.head_title, s.head_first_name, s.head_last_name) as headteacher_name,\n s.website,\n s.telephone,\n s.open_date,\n s.close_date,\n s.status_code,\n s.nursery_provision,\n s.admissions_policy_code,\n\n -- Latest Ofsted (populated after monthly Ofsted pipeline runs)\n {% if ofsted_relation is not none %}\n -- Prefer the graded overall effectiveness; fall back to the grade parsed\n -- from the latest ungraded (Section 8) outcome when no graded grade exists.\n coalesce(o.overall_effectiveness, o.ungraded_grade) as ofsted_grade,\n o.inspection_date as ofsted_date,\n o.framework as ofsted_framework\n {% else %}\n null::text as ofsted_grade,\n null::date as ofsted_date,\n null::text as ofsted_framework\n {% endif %}\n\nfrom schools s\n{% if ofsted_relation is not none %}\nleft join {{ ref('int_ofsted_latest') }} o on s.urn = o.urn\n{% endif %}\n-- 1 = Open; 3 = Open, but proposed to close (still operating; drops out when\n-- GIAS flips to Closed \u2014 marts fully rebuild each run).\nwhere s.status_code in (1, 3)", "doc_blocks": [], "language": "sql", "refs": [{"name": "int_ofsted_latest", "package": null, "version": null}, {"name": "stg_gias_establishments", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.int_ofsted_latest", "model.school_compare.stg_gias_establishments"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": ["urn"], "time_spine": null}, "model.school_compare.stg_gias_establishments": {"database": "school_compare", "schema": "staging", "name": "stg_gias_establishments", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_gias_establishments.sql", "original_file_path": "models/staging/stg_gias_establishments.sql", "unique_id": "model.school_compare.stg_gias_establishments", "fqn": ["school_compare", "staging", "stg_gias_establishments"], "alias": "stg_gias_establishments", "checksum": {"name": "sha256", "checksum": "f441ba1ec21d49447e34206e11189040431a3dd525e4a51bc40e8c7c2ba032b0"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "view", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "view", "schema": "staging"}, "created_at": 1784225256.8353448, "relation_name": "\"school_compare\".\"staging\".\"stg_gias_establishments\"", "raw_code": "-- Staging model: GIAS establishments\n-- Light cleaning, type casting, column renaming from raw GIAS bulk CSV\n\nwith source as (\n select * from {{ source('raw', 'gias_establishments') }}\n),\n\nrenamed as (\n select\n cast(\"URN\" as integer) as urn,\n cast(nullif(\"LA (code)\", '') as integer) as local_authority_code,\n \"LA (name)\" as local_authority_name,\n cast(nullif(\"EstablishmentNumber\", '') as integer) as establishment_number,\n \"EstablishmentName\" as school_name,\n cast(nullif(trim(\"TypeOfEstablishment (code)\"), '') as integer) as school_type_code,\n cast(nullif(trim(\"PhaseOfEducation (code)\"), '') as integer) as phase_code,\n cast(nullif(trim(\"OfficialSixthForm (code)\"), '') as integer) as official_sixth_form_code,\n \"Gender (name)\" as gender,\n cast(nullif(trim(\"ReligiousCharacter (code)\"), '') as integer) as religious_character_code,\n cast(nullif(trim(\"AdmissionsPolicy (code)\"), '') as integer) as admissions_policy_code,\n \"SchoolCapacity\" as capacity,\n cast(nullif(\"NumberOfPupils\", '') as integer) as total_pupils,\n \"HeadTitle (name)\" as head_title,\n \"HeadFirstName\" as head_first_name,\n \"HeadLastName\" as head_last_name,\n \"TelephoneNum\" as telephone,\n \"SchoolWebsite\" as website,\n \"Street\" as address_line1,\n \"Locality\" as address_line2,\n \"Town\" as town,\n \"County (name)\" as county,\n \"Postcode\" as postcode,\n cast(nullif(trim(\"EstablishmentStatus (code)\"), '') as integer) as status_code,\n case when \"OpenDate\" = '' then null else to_date(\"OpenDate\", 'DD-MM-YYYY') end as open_date,\n case when \"CloseDate\" = '' then null else to_date(\"CloseDate\", 'DD-MM-YYYY') end as close_date,\n \"Trusts (name)\" as academy_trust_name,\n cast(nullif(\"Trusts (code)\", '') as integer) as academy_trust_uid,\n \"UrbanRural (name)\" as urban_rural,\n \"ParliamentaryConstituency (name)\" as parliamentary_constituency,\n \"NurseryProvision (name)\" as nursery_provision,\n cast(nullif(\"Easting\", '') as integer) as easting,\n cast(nullif(\"Northing\", '') as integer) as northing,\n cast(nullif(\"StatutoryLowAge\", '') as integer) as statutory_low_age,\n cast(nullif(\"StatutoryHighAge\", '') as integer) as statutory_high_age\n from source\n where \"URN\" is not null\n)\n\nselect * from renamed", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "gias_establishments"]], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["source.school_compare.raw.gias_establishments"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.fact_performance": {"database": "school_compare", "schema": "marts", "name": "fact_performance", "resource_type": "model", "package_name": "school_compare", "path": "marts/fact_performance.sql", "original_file_path": "models/marts/fact_performance.sql", "unique_id": "model.school_compare.fact_performance", "fqn": ["school_compare", "marts", "fact_performance"], "alias": "fact_performance", "checksum": {"name": "sha256", "checksum": "ea8849a6596cdb40066194013400acd5b70cd71b49dd7de8052a67afbe012577"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "Merged KS2 + KS4 performance \u2014 one row per URN per year via FULL OUTER JOIN. All-through schools have both KS2 and KS4 columns populated; pure primary schools have NULL KS4 columns; pure secondary schools have NULL KS2 columns.", "columns": {"urn": {"name": "urn", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "year": {"name": "year", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.957527, "relation_name": "\"school_compare\".\"marts\".\"fact_performance\"", "raw_code": "-- Mart: Merged KS2 + KS4 performance \u2014 one row per URN per year\n-- FULL OUTER JOIN so all-through schools have both KS2 and KS4 columns populated.\n-- Pure primary schools have NULL KS4 columns; pure secondary schools have NULL KS2 columns.\n\nwith ks2 as (\n select * from {{ ref('fact_ks2_performance') }}\n),\n\nks4 as (\n select * from {{ ref('fact_ks4_performance') }}\n)\n\nselect\n -- Join keys (coalesced so neither side is dropped)\n coalesce(ks2.urn, ks4.urn) as urn,\n coalesce(ks2.source_urn, ks4.source_urn) as source_urn,\n coalesce(ks2.year, ks4.year) as year,\n coalesce(ks2.total_pupils, ks4.total_pupils) as total_pupils,\n coalesce(ks2.eligible_pupils, ks4.eligible_pupils) as eligible_pupils,\n\n -- KS2 columns (NULL for pure secondary schools)\n ks2.rwm_expected_pct,\n ks2.rwm_high_pct,\n ks2.reading_expected_pct,\n ks2.reading_high_pct,\n ks2.reading_avg_score,\n ks2.reading_progress,\n ks2.reading_progress_lower_ci,\n ks2.reading_progress_upper_ci,\n ks2.writing_expected_pct,\n ks2.writing_high_pct,\n ks2.writing_progress,\n ks2.writing_progress_lower_ci,\n ks2.writing_progress_upper_ci,\n ks2.writing_working_towards_pct,\n ks2.maths_expected_pct,\n ks2.maths_high_pct,\n ks2.maths_avg_score,\n ks2.maths_progress,\n ks2.maths_progress_lower_ci,\n ks2.maths_progress_upper_ci,\n ks2.gps_expected_pct,\n ks2.gps_high_pct,\n ks2.gps_avg_score,\n ks2.science_expected_pct,\n ks2.reading_absence_pct,\n ks2.writing_absence_pct,\n ks2.maths_absence_pct,\n ks2.gps_absence_pct,\n ks2.science_absence_pct,\n ks2.rwm_expected_boys_pct,\n ks2.rwm_high_boys_pct,\n ks2.rwm_expected_girls_pct,\n ks2.rwm_high_girls_pct,\n ks2.rwm_expected_disadvantaged_pct,\n ks2.rwm_expected_non_disadvantaged_pct,\n ks2.disadvantaged_gap,\n ks2.disadvantaged_pct,\n ks2.eal_pct,\n ks2.stability_pct,\n\n -- KS4 columns (NULL for pure primary schools)\n ks4.attainment_8_score,\n ks4.progress_8_score,\n ks4.progress_8_lower_ci,\n ks4.progress_8_upper_ci,\n ks4.progress_8_english,\n ks4.progress_8_maths,\n ks4.progress_8_ebacc,\n ks4.progress_8_open,\n ks4.progress_8_banding,\n ks4.attainment_8_disadvantage_gap,\n ks4.progress_8_disadvantage_gap,\n ks4.english_maths_strong_pass_pct,\n ks4.english_maths_standard_pass_pct,\n ks4.ebacc_entry_pct,\n ks4.ebacc_strong_pass_pct,\n ks4.ebacc_standard_pass_pct,\n ks4.ebacc_avg_score,\n ks4.gcse_grade_91_pct,\n ks4.prior_attainment_avg,\n ks4.sen_pct,\n\n -- Shared SEN columns \u2014 KS2 preferred, fall back to KS4\n coalesce(ks2.sen_support_pct, ks4.sen_support_pct) as sen_support_pct,\n coalesce(ks2.sen_ehcp_pct, ks4.sen_ehcp_pct) as sen_ehcp_pct\n\nfrom ks2\nfull outer join ks4\n on ks2.urn = ks4.urn\n and ks2.year = ks4.year", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks2_performance", "package": null, "version": null}, {"name": "fact_ks4_performance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.fact_ks2_performance", "model.school_compare.fact_ks4_performance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": ["urn || '-' || year"], "time_spine": null}, "model.school_compare.fact_ks2_performance": {"database": "school_compare", "schema": "marts", "name": "fact_ks2_performance", "resource_type": "model", "package_name": "school_compare", "path": "marts/fact_ks2_performance.sql", "original_file_path": "models/marts/fact_ks2_performance.sql", "unique_id": "model.school_compare.fact_ks2_performance", "fqn": ["school_compare", "marts", "fact_ks2_performance"], "alias": "fact_ks2_performance", "checksum": {"name": "sha256", "checksum": "ee3f734e98d37c6b3459f08eb35e78e193c2c4995fb64a4bbe2d58a2382acf8c"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "KS2 attainment \u2014 one row per URN per year", "columns": {"urn": {"name": "urn", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "year": {"name": "year", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "reading_progress_lower_ci": {"name": "reading_progress_lower_ci", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "reading_progress_upper_ci": {"name": "reading_progress_upper_ci", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "writing_progress_lower_ci": {"name": "writing_progress_lower_ci", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "writing_progress_upper_ci": {"name": "writing_progress_upper_ci", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "writing_working_towards_pct": {"name": "writing_working_towards_pct", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "maths_progress_lower_ci": {"name": "maths_progress_lower_ci", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "maths_progress_upper_ci": {"name": "maths_progress_upper_ci", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.957371, "relation_name": "\"school_compare\".\"marts\".\"fact_ks2_performance\"", "raw_code": "-- Mart: KS2 performance fact table \u2014 one row per URN per year\n-- Includes predecessor data via lineage resolution\n\nselect\n current_urn as urn,\n source_urn,\n year,\n total_pupils,\n eligible_pupils,\n\n -- Core attainment\n rwm_expected_pct,\n rwm_high_pct,\n reading_expected_pct,\n reading_high_pct,\n reading_avg_score,\n reading_progress,\n reading_progress_lower_ci,\n reading_progress_upper_ci,\n writing_expected_pct,\n writing_high_pct,\n writing_progress,\n writing_progress_lower_ci,\n writing_progress_upper_ci,\n writing_working_towards_pct,\n maths_expected_pct,\n maths_high_pct,\n maths_avg_score,\n maths_progress,\n maths_progress_lower_ci,\n maths_progress_upper_ci,\n gps_expected_pct,\n gps_high_pct,\n gps_avg_score,\n science_expected_pct,\n\n -- Absence\n reading_absence_pct,\n writing_absence_pct,\n maths_absence_pct,\n gps_absence_pct,\n science_absence_pct,\n\n -- Gender\n rwm_expected_boys_pct,\n rwm_high_boys_pct,\n rwm_expected_girls_pct,\n rwm_high_girls_pct,\n\n -- Disadvantaged\n rwm_expected_disadvantaged_pct,\n rwm_expected_non_disadvantaged_pct,\n disadvantaged_gap,\n\n -- Context\n disadvantaged_pct,\n eal_pct,\n sen_support_pct,\n sen_ehcp_pct,\n stability_pct\n\nfrom {{ ref('int_ks2_with_lineage') }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "int_ks2_with_lineage", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.int_ks2_with_lineage"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": ["urn || '-' || year"], "time_spine": null}, "model.school_compare.int_ks2_with_lineage": {"database": "school_compare", "schema": "intermediate", "name": "int_ks2_with_lineage", "resource_type": "model", "package_name": "school_compare", "path": "intermediate/int_ks2_with_lineage.sql", "original_file_path": "models/intermediate/int_ks2_with_lineage.sql", "unique_id": "model.school_compare.int_ks2_with_lineage", "fqn": ["school_compare", "intermediate", "int_ks2_with_lineage"], "alias": "int_ks2_with_lineage", "checksum": {"name": "sha256", "checksum": "cf0cd2ad3e55172d40bcdc4c0b5b750bdf5d7c1618f472b359372e34c467a89b"}, "config": {"enabled": true, "alias": null, "schema": "intermediate", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "view", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "view", "schema": "intermediate"}, "created_at": 1784225256.837429, "relation_name": "\"school_compare\".\"intermediate\".\"int_ks2_with_lineage\"", "raw_code": "-- Intermediate model: KS2 data chained across academy conversions\n-- Maps predecessor URN data to the current active URN\n-- Unions EES (2022+) and legacy (2015-2019) school-level data\n\nwith all_ks2 as (\n select * from {{ ref('stg_ees_ks2') }}\n union all\n select * from {{ ref('stg_legacy_ks2') }}\n),\n\ncurrent_ks2 as (\n select\n urn as current_urn,\n urn as source_urn,\n year, total_pupils, eligible_pupils,\n rwm_expected_pct, rwm_high_pct,\n reading_expected_pct, reading_high_pct, reading_avg_score, reading_progress,\n reading_progress_lower_ci, reading_progress_upper_ci,\n writing_expected_pct, writing_high_pct, writing_progress,\n writing_progress_lower_ci, writing_progress_upper_ci, writing_working_towards_pct,\n maths_expected_pct, maths_high_pct, maths_avg_score, maths_progress,\n maths_progress_lower_ci, maths_progress_upper_ci,\n gps_expected_pct, gps_high_pct, gps_avg_score, science_expected_pct,\n reading_absence_pct, writing_absence_pct, maths_absence_pct, gps_absence_pct, science_absence_pct,\n rwm_expected_boys_pct, rwm_high_boys_pct, rwm_expected_girls_pct, rwm_high_girls_pct,\n rwm_expected_disadvantaged_pct, rwm_expected_non_disadvantaged_pct, disadvantaged_gap,\n disadvantaged_pct, eal_pct, sen_support_pct, sen_ehcp_pct, stability_pct\n from all_ks2\n),\n\npredecessor_ks2 as (\n -- If multiple predecessors have data for the same year, keep the one with most pupils.\n select distinct on (lin.current_urn, ks2.year)\n lin.current_urn,\n ks2.urn as source_urn,\n ks2.year, ks2.total_pupils, ks2.eligible_pupils,\n ks2.rwm_expected_pct, ks2.rwm_high_pct,\n ks2.reading_expected_pct, ks2.reading_high_pct, ks2.reading_avg_score, ks2.reading_progress,\n ks2.reading_progress_lower_ci, ks2.reading_progress_upper_ci,\n ks2.writing_expected_pct, ks2.writing_high_pct, ks2.writing_progress,\n ks2.writing_progress_lower_ci, ks2.writing_progress_upper_ci, ks2.writing_working_towards_pct,\n ks2.maths_expected_pct, ks2.maths_high_pct, ks2.maths_avg_score, ks2.maths_progress,\n ks2.maths_progress_lower_ci, ks2.maths_progress_upper_ci,\n ks2.gps_expected_pct, ks2.gps_high_pct, ks2.gps_avg_score, ks2.science_expected_pct,\n ks2.reading_absence_pct, ks2.writing_absence_pct, ks2.maths_absence_pct, ks2.gps_absence_pct, ks2.science_absence_pct,\n ks2.rwm_expected_boys_pct, ks2.rwm_high_boys_pct, ks2.rwm_expected_girls_pct, ks2.rwm_high_girls_pct,\n ks2.rwm_expected_disadvantaged_pct, ks2.rwm_expected_non_disadvantaged_pct, ks2.disadvantaged_gap,\n ks2.disadvantaged_pct, ks2.eal_pct, ks2.sen_support_pct, ks2.sen_ehcp_pct, ks2.stability_pct\n from all_ks2 ks2\n inner join {{ ref('int_school_lineage') }} lin\n on ks2.urn = lin.predecessor_urn\n where not exists (\n select 1 from all_ks2 curr\n where curr.urn = lin.current_urn\n and curr.year = ks2.year\n )\n order by lin.current_urn, ks2.year, ks2.total_pupils desc nulls last\n),\n\ncombined as (\n select * from current_ks2\n union all\n select * from predecessor_ks2\n)\n\nselect * from combined", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_ees_ks2", "package": null, "version": null}, {"name": "stg_legacy_ks2", "package": null, "version": null}, {"name": "int_school_lineage", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_ees_ks2", "model.school_compare.stg_legacy_ks2", "model.school_compare.int_school_lineage"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.fact_ks4_national_averages": {"database": "school_compare", "schema": "marts", "name": "fact_ks4_national_averages", "resource_type": "model", "package_name": "school_compare", "path": "marts/fact_ks4_national_averages.sql", "original_file_path": "models/marts/fact_ks4_national_averages.sql", "unique_id": "model.school_compare.fact_ks4_national_averages", "fqn": ["school_compare", "marts", "fact_ks4_national_averages"], "alias": "fact_ks4_national_averages", "checksum": {"name": "sha256", "checksum": "6652829c2e28bab0f05474060d1cbda23c1009418ccef3791f810553e2f99f98"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "Computed national KS4 averages (means across state schools in our dataset \u2014 not official DfE figures) \u2014 one row per academic year", "columns": {"year": {"name": "year", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.9580421, "relation_name": "\"school_compare\".\"marts\".\"fact_ks4_national_averages\"", "raw_code": "{{ config(materialized='table') }}\n\n-- Mart: OFFICIAL DfE KS4 national headline averages \u2014 one row per academic\n-- year (England, state-funded, all pupils), from the EES national dataset.\n-- Replaces the previous unweighted school-level means, which were 7\u201315\n-- points off every headline measure and produced an arithmetically\n-- impossible national Progress 8. gcse_grade_91_pct has no official\n-- national series and is NULL (schema kept for the API model).\n\nselect\n year,\n attainment_8_score,\n progress_8_score,\n english_maths_standard_pass_pct,\n english_maths_strong_pass_pct,\n ebacc_entry_pct,\n ebacc_standard_pass_pct,\n ebacc_strong_pass_pct,\n ebacc_avg_score,\n cast(null as double precision) as gcse_grade_91_pct\nfrom {{ ref('stg_ees_ks4_national') }}\norder by year", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_ees_ks4_national", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_ees_ks4_national"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": ["year"], "time_spine": null}, "model.school_compare.fact_ks4_performance": {"database": "school_compare", "schema": "marts", "name": "fact_ks4_performance", "resource_type": "model", "package_name": "school_compare", "path": "marts/fact_ks4_performance.sql", "original_file_path": "models/marts/fact_ks4_performance.sql", "unique_id": "model.school_compare.fact_ks4_performance", "fqn": ["school_compare", "marts", "fact_ks4_performance"], "alias": "fact_ks4_performance", "checksum": {"name": "sha256", "checksum": "3afb0dc042db222966de51680b08211c603d099f2db132137dda6abae9ac0b17"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "KS4 attainment \u2014 one row per URN per year", "columns": {"urn": {"name": "urn", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "year": {"name": "year", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "progress_8_banding": {"name": "progress_8_banding", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "attainment_8_disadvantage_gap": {"name": "attainment_8_disadvantage_gap", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "progress_8_disadvantage_gap": {"name": "progress_8_disadvantage_gap", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.95791, "relation_name": "\"school_compare\".\"marts\".\"fact_ks4_performance\"", "raw_code": "-- Mart: KS4 performance fact table \u2014 one row per URN per year\n-- Includes predecessor data via lineage resolution\n\nselect\n current_urn as urn,\n source_urn,\n year,\n total_pupils,\n eligible_pupils,\n prior_attainment_avg,\n\n -- Attainment 8\n attainment_8_score,\n\n -- Progress 8\n progress_8_score,\n progress_8_lower_ci,\n progress_8_upper_ci,\n progress_8_banding,\n attainment_8_disadvantage_gap,\n progress_8_disadvantage_gap,\n progress_8_english,\n progress_8_maths,\n progress_8_ebacc,\n progress_8_open,\n\n -- English & Maths\n english_maths_strong_pass_pct,\n english_maths_standard_pass_pct,\n\n -- EBacc\n ebacc_entry_pct,\n ebacc_strong_pass_pct,\n ebacc_standard_pass_pct,\n ebacc_avg_score,\n\n -- GCSE\n gcse_grade_91_pct,\n\n -- Context\n sen_pct,\n sen_ehcp_pct,\n sen_support_pct\n\nfrom {{ ref('int_ks4_with_lineage') }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "int_ks4_with_lineage", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.int_ks4_with_lineage"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": ["urn || '-' || year"], "time_spine": null}, "model.school_compare.int_ks4_with_lineage": {"database": "school_compare", "schema": "intermediate", "name": "int_ks4_with_lineage", "resource_type": "model", "package_name": "school_compare", "path": "intermediate/int_ks4_with_lineage.sql", "original_file_path": "models/intermediate/int_ks4_with_lineage.sql", "unique_id": "model.school_compare.int_ks4_with_lineage", "fqn": ["school_compare", "intermediate", "int_ks4_with_lineage"], "alias": "int_ks4_with_lineage", "checksum": {"name": "sha256", "checksum": "0f1837fc648e40dea60bdf7a45d60824017665bbc189e497e20203d4739f5a53"}, "config": {"enabled": true, "alias": null, "schema": "intermediate", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "view", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "view", "schema": "intermediate"}, "created_at": 1784225256.839802, "relation_name": "\"school_compare\".\"intermediate\".\"int_ks4_with_lineage\"", "raw_code": "-- Intermediate model: KS4 data chained across academy conversions\n-- Unions EES (2023/24 onwards) and legacy (2015/16\u20132018/19) school-level data\n\nwith all_ks4 as (\n select * from {{ ref('stg_ees_ks4') }}\n union all\n select * from {{ ref('stg_legacy_ks4') }}\n),\n\ncurrent_ks4 as (\n select\n urn as current_urn,\n urn as source_urn,\n year, total_pupils, eligible_pupils, prior_attainment_avg,\n attainment_8_score,\n progress_8_score, progress_8_lower_ci, progress_8_upper_ci,\n progress_8_english, progress_8_maths, progress_8_ebacc, progress_8_open,\n english_maths_strong_pass_pct, english_maths_standard_pass_pct,\n ebacc_entry_pct, ebacc_strong_pass_pct, ebacc_standard_pass_pct, ebacc_avg_score,\n gcse_grade_91_pct,\n sen_pct, sen_support_pct, sen_ehcp_pct,\n progress_8_banding, attainment_8_disadvantage_gap, progress_8_disadvantage_gap\n from all_ks4\n),\n\npredecessor_ks4 as (\n -- If multiple predecessors have data for the same year, keep the one with most pupils.\n select distinct on (lin.current_urn, ks4.year)\n lin.current_urn,\n ks4.urn as source_urn,\n ks4.year, ks4.total_pupils, ks4.eligible_pupils, ks4.prior_attainment_avg,\n ks4.attainment_8_score,\n ks4.progress_8_score, ks4.progress_8_lower_ci, ks4.progress_8_upper_ci,\n ks4.progress_8_english, ks4.progress_8_maths, ks4.progress_8_ebacc, ks4.progress_8_open,\n ks4.english_maths_strong_pass_pct, ks4.english_maths_standard_pass_pct,\n ks4.ebacc_entry_pct, ks4.ebacc_strong_pass_pct, ks4.ebacc_standard_pass_pct, ks4.ebacc_avg_score,\n ks4.gcse_grade_91_pct,\n ks4.sen_pct, ks4.sen_support_pct, ks4.sen_ehcp_pct,\n ks4.progress_8_banding, ks4.attainment_8_disadvantage_gap, ks4.progress_8_disadvantage_gap\n from all_ks4 ks4\n inner join {{ ref('int_school_lineage') }} lin\n on ks4.urn = lin.predecessor_urn\n where not exists (\n select 1 from all_ks4 curr\n where curr.urn = lin.current_urn\n and curr.year = ks4.year\n )\n order by lin.current_urn, ks4.year, ks4.total_pupils desc nulls last\n),\n\ncombined as (\n select * from current_ks4\n union all\n select * from predecessor_ks4\n)\n\nselect * from combined", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_ees_ks4", "package": null, "version": null}, {"name": "stg_legacy_ks4", "package": null, "version": null}, {"name": "int_school_lineage", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_ees_ks4", "model.school_compare.stg_legacy_ks4", "model.school_compare.int_school_lineage"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.map_school_lineage": {"database": "school_compare", "schema": "marts", "name": "map_school_lineage", "resource_type": "model", "package_name": "school_compare", "path": "marts/map_school_lineage.sql", "original_file_path": "models/marts/map_school_lineage.sql", "unique_id": "model.school_compare.map_school_lineage", "fqn": ["school_compare", "marts", "map_school_lineage"], "alias": "map_school_lineage", "checksum": {"name": "sha256", "checksum": "ccc46724286e6f850514c1c0bacb73adc7317c3b9e1e57ca9f8dd51a49b848c4"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "Predecessor/successor lineage map", "columns": {"urn": {"name": "urn", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.958216, "relation_name": "\"school_compare\".\"marts\".\"map_school_lineage\"", "raw_code": "-- Mart: School predecessor/successor lineage map\n\nselect\n current_urn as urn,\n predecessor_urn,\n link_type,\n link_date,\n depth\nfrom {{ ref('int_school_lineage') }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "int_school_lineage", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.int_school_lineage"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.int_school_lineage": {"database": "school_compare", "schema": "intermediate", "name": "int_school_lineage", "resource_type": "model", "package_name": "school_compare", "path": "intermediate/int_school_lineage.sql", "original_file_path": "models/intermediate/int_school_lineage.sql", "unique_id": "model.school_compare.int_school_lineage", "fqn": ["school_compare", "intermediate", "int_school_lineage"], "alias": "int_school_lineage", "checksum": {"name": "sha256", "checksum": "6b5415d216e4fca7dc3802b07795eebf1d0f71cdb5afcb14da3f56661e59c073"}, "config": {"enabled": true, "alias": null, "schema": "intermediate", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "view", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "view", "schema": "intermediate"}, "created_at": 1784225256.8411689, "relation_name": "\"school_compare\".\"intermediate\".\"int_school_lineage\"", "raw_code": "-- Intermediate model: Recursive predecessor mapping\n-- Resolves academy conversion chains so historical data can be attributed\n-- to the current (active) URN.\n\nwith recursive lineage as (\n -- Base: schools that are predecessors (linked via academy conversion, amalgamation, etc.)\n select\n urn,\n linked_urn as predecessor_urn,\n link_type,\n link_date,\n 1 as depth\n from {{ ref('stg_gias_links') }}\n where link_type in (\n 'Predecessor',\n 'Predecessor - Loss of academy converter',\n 'Predecessor - amalgamated',\n 'Predecessor - Fresh Start'\n )\n\n union all\n\n -- Recursive step: follow the chain\n select\n l.urn,\n links.linked_urn as predecessor_urn,\n links.link_type,\n links.link_date,\n l.depth + 1\n from lineage l\n inner join {{ ref('stg_gias_links') }} links\n on l.predecessor_urn = links.urn\n where links.link_type in (\n 'Predecessor',\n 'Predecessor - Loss of academy converter',\n 'Predecessor - amalgamated',\n 'Predecessor - Fresh Start'\n )\n and l.depth < 5 -- safety limit\n)\n\nselect\n urn as current_urn,\n predecessor_urn,\n link_type,\n link_date,\n depth\nfrom lineage", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_gias_links", "package": null, "version": null}, {"name": "stg_gias_links", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_gias_links"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.stg_gias_links": {"database": "school_compare", "schema": "staging", "name": "stg_gias_links", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_gias_links.sql", "original_file_path": "models/staging/stg_gias_links.sql", "unique_id": "model.school_compare.stg_gias_links", "fqn": ["school_compare", "staging", "stg_gias_links"], "alias": "stg_gias_links", "checksum": {"name": "sha256", "checksum": "b63bd2f36eeb2be840a344365a68879242e5cb3310d7a74e7071fe7f6a9724fc"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "view", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "view", "schema": "staging"}, "created_at": 1784225256.841929, "relation_name": "\"school_compare\".\"staging\".\"stg_gias_links\"", "raw_code": "-- Staging model: GIAS school links (predecessor/successor chains)\n\nwith source as (\n select * from {{ source('raw', 'gias_links') }}\n),\n\nrenamed as (\n select\n cast(\"URN\" as integer) as urn,\n cast(\"LinkURN\" as integer) as linked_urn,\n \"LinkType\" as link_type,\n case when \"LinkEstablishedDate\" = '' then null else to_date(\"LinkEstablishedDate\", 'DD-MM-YYYY') end as link_date\n from source\n where \"URN\" is not null\n and \"LinkURN\" is not null\n)\n\nselect * from renamed", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "gias_links"]], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["source.school_compare.raw.gias_links"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.fact_ofsted_inspection": {"database": "school_compare", "schema": "marts", "name": "fact_ofsted_inspection", "resource_type": "model", "package_name": "school_compare", "path": "marts/fact_ofsted_inspection.sql", "original_file_path": "models/marts/fact_ofsted_inspection.sql", "unique_id": "model.school_compare.fact_ofsted_inspection", "fqn": ["school_compare", "marts", "fact_ofsted_inspection"], "alias": "fact_ofsted_inspection", "checksum": {"name": "sha256", "checksum": "0f84ccceb71e7c7d5514164e9c6f3bbabecbca72b3547acc555b47c4dc361096"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "Full Ofsted inspection history", "columns": {"urn": {"name": "urn", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "inspection_date": {"name": "inspection_date", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.95843, "relation_name": "\"school_compare\".\"marts\".\"fact_ofsted_inspection\"", "raw_code": "-- Mart: Full Ofsted inspection history \u2014 one row per inspection\n\nselect\n urn,\n inspection_date,\n inspection_type,\n framework,\n overall_effectiveness,\n quality_of_education,\n behaviour_attitudes,\n personal_development,\n leadership_management,\n early_years_provision,\n sixth_form_provision,\n ungraded_outcome,\n ungraded_grade,\n rc_safeguarding_met,\n rc_inclusion,\n rc_curriculum_teaching,\n rc_achievement,\n rc_attendance_behaviour,\n rc_personal_development,\n rc_leadership_governance,\n rc_early_years,\n rc_sixth_form,\n rc_inspection_date,\n report_url\nfrom {{ ref('stg_ofsted_inspections') }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_ofsted_inspections", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_ofsted_inspections"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.int_ofsted_latest": {"database": "school_compare", "schema": "intermediate", "name": "int_ofsted_latest", "resource_type": "model", "package_name": "school_compare", "path": "intermediate/int_ofsted_latest.sql", "original_file_path": "models/intermediate/int_ofsted_latest.sql", "unique_id": "model.school_compare.int_ofsted_latest", "fqn": ["school_compare", "intermediate", "int_ofsted_latest"], "alias": "int_ofsted_latest", "checksum": {"name": "sha256", "checksum": "82a928978d87dcf8799894786716d1fca35b65e08aaea28573974a4423b06a07"}, "config": {"enabled": true, "alias": null, "schema": "intermediate", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "view", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "view", "schema": "intermediate"}, "created_at": 1784225256.843183, "relation_name": "\"school_compare\".\"intermediate\".\"int_ofsted_latest\"", "raw_code": "-- Intermediate model: Latest Ofsted inspection per URN\n-- Picks the most recent inspection for each school\n\nwith ranked as (\n select\n *,\n row_number() over (\n partition by urn\n order by inspection_date desc\n ) as rn\n from {{ ref('stg_ofsted_inspections') }}\n)\n\nselect\n urn,\n inspection_date,\n inspection_type,\n framework,\n overall_effectiveness,\n quality_of_education,\n behaviour_attitudes,\n personal_development,\n leadership_management,\n early_years_provision,\n sixth_form_provision,\n ungraded_outcome,\n ungraded_grade,\n rc_safeguarding_met,\n rc_inclusion,\n rc_curriculum_teaching,\n rc_achievement,\n rc_attendance_behaviour,\n rc_personal_development,\n rc_leadership_governance,\n rc_early_years,\n rc_sixth_form,\n rc_inspection_date,\n report_url\nfrom ranked\nwhere rn = 1", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_ofsted_inspections", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_ofsted_inspections"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.stg_ofsted_inspections": {"database": "school_compare", "schema": "staging", "name": "stg_ofsted_inspections", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_ofsted_inspections.sql", "original_file_path": "models/staging/stg_ofsted_inspections.sql", "unique_id": "model.school_compare.stg_ofsted_inspections", "fqn": ["school_compare", "staging", "stg_ofsted_inspections"], "alias": "stg_ofsted_inspections", "checksum": {"name": "sha256", "checksum": "69c1b9d3d8ede6f5e5b042c5b3f0fcc3b970d0ad7d43c682a369850cdae8e046"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "view", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "view", "schema": "staging"}, "created_at": 1784225256.8438132, "relation_name": "\"school_compare\".\"staging\".\"stg_ofsted_inspections\"", "raw_code": "-- Staging model: Ofsted inspection records\n-- Handles both OEIF (pre-Nov 2025) and Report Card (post-Nov 2025) frameworks\n\nwith source as (\n select * from {{ source('raw', 'ofsted_inspections') }}\n),\n\nrenamed as (\n select\n cast(urn as integer) as urn,\n -- Inspection event date: the graded inspection when present, otherwise the\n -- ungraded (Section 8) inspection so schools with only an ungraded\n -- inspection are still retained.\n coalesce(\n to_date(nullif(trim(inspection_date), 'NULL'), 'DD/MM/YYYY'),\n to_date(nullif(trim(ungraded_inspection_date), 'NULL'), 'DD/MM/YYYY')\n ) as inspection_date,\n inspection_type,\n event_type_grouping as framework,\n\n -- OEIF grades (1-4 scale)\n {{ safe_numeric('overall_effectiveness') }}::integer as overall_effectiveness,\n {{ safe_numeric('quality_of_education') }}::integer as quality_of_education,\n {{ safe_numeric('behaviour_and_attitudes') }}::integer as behaviour_attitudes,\n {{ safe_numeric('personal_development') }}::integer as personal_development,\n {{ safe_numeric('effectiveness_of_leadership_and_management') }}::integer as leadership_management,\n {{ safe_numeric('early_years_provision') }}::integer as early_years_provision,\n {{ safe_numeric('sixth_form_provision') }}::integer as sixth_form_provision,\n\n -- Ungraded (Section 8) inspection outcome \u2014 free text, plus a grade\n -- parsed from it (1/2/null) used as a last-resort fallback for schools\n -- with no graded overall effectiveness.\n nullif(trim(ungraded_outcome), 'NULL') as ungraded_outcome,\n {{ parse_ungraded_outcome('ungraded_outcome') }}::integer as ungraded_grade,\n\n -- Report Card fields (post-Nov 2025 framework), 5-point scale:\n -- 1 Exceptional \u00b7 2 Strong standard \u00b7 3 Expected standard\n -- \u00b7 4 Needs attention \u00b7 5 Urgent improvement\n case lower(trim(nullif(rc_safeguarding_met, 'NULL')))\n when 'met' then true\n when 'not met' then false\n end as rc_safeguarding_met,\n {{ parse_report_card_grade('rc_inclusion') }}::integer as rc_inclusion,\n {{ parse_report_card_grade('rc_curriculum_teaching') }}::integer as rc_curriculum_teaching,\n {{ parse_report_card_grade('rc_achievement') }}::integer as rc_achievement,\n {{ parse_report_card_grade('rc_attendance_behaviour') }}::integer as rc_attendance_behaviour,\n {{ parse_report_card_grade('rc_personal_development') }}::integer as rc_personal_development,\n {{ parse_report_card_grade('rc_leadership_governance') }}::integer as rc_leadership_governance,\n {{ parse_report_card_grade('rc_early_years') }}::integer as rc_early_years,\n {{ parse_report_card_grade('rc_sixth_form') }}::integer as rc_sixth_form,\n\n -- Start date of the latest FULL inspection (the report-card\n -- inspection in the renewed framework). Guarded in the final select:\n -- only kept when the row actually carries report-card grades, because\n -- in legacy-format files this column is the legacy inspection date.\n to_date(nullif(trim(rc_inspection_date), 'NULL'), 'DD/MM/YYYY') as rc_inspection_date_raw,\n\n nullif(trim(report_url), 'NULL') as report_url\n from source\n where urn is not null\n and (\n nullif(trim(inspection_date), 'NULL') is not null\n or nullif(trim(ungraded_inspection_date), 'NULL') is not null\n )\n)\n\nselect\n *,\n case\n when rc_safeguarding_met is not null\n or rc_inclusion is not null\n or rc_curriculum_teaching is not null\n or rc_achievement is not null\n or rc_attendance_behaviour is not null\n or rc_personal_development is not null\n or rc_leadership_governance is not null\n then rc_inspection_date_raw\n end as rc_inspection_date\nfrom renamed\nwhere inspection_date is not null", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "ofsted_inspections"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.school_compare.safe_numeric", "macro.school_compare.parse_ungraded_outcome", "macro.school_compare.parse_report_card_grade"], "nodes": ["source.school_compare.raw.ofsted_inspections"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.stg_ees_ks2": {"database": "school_compare", "schema": "staging", "name": "stg_ees_ks2", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_ees_ks2.sql", "original_file_path": "models/staging/stg_ees_ks2.sql", "unique_id": "model.school_compare.stg_ees_ks2", "fqn": ["school_compare", "staging", "stg_ees_ks2"], "alias": "stg_ees_ks2", "checksum": {"name": "sha256", "checksum": "b5d1cc5ac353d77b1e067f26efee3ac4ebdefe5ea0e6b405595ac3b054ed82a6"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "table", "schema": "staging"}, "created_at": 1784225256.8471801, "relation_name": "\"school_compare\".\"staging\".\"stg_ees_ks2\"", "raw_code": "{{ config(materialized='table') }}\n\n-- Staging model: KS2 attainment + information\n-- Single-pass pivot: one GROUP BY scan of 1.2M rows handles all subjects\n-- and all breakdowns (All pupils, Boys, Girls, Disadvantaged, Not disadvantaged)\n-- instead of 5 separate CTE scans + 5 LEFT JOINs.\n-- EES uses 'z' (not applicable) and 'c' (confidential) as suppression codes \u2014\n-- safe_numeric handles both by treating any non-numeric string as NULL.\n\nwith attainment as (\n select * from {{ source('raw', 'ees_ks2_attainment') }}\n where school_urn ~ '^[0-9]+$'\n and time_period ~ '^[0-9]+$'\n),\n\npivoted as (\n select\n cast(trim(school_urn) as integer) as urn,\n cast(trim(time_period) as integer) as year,\n\n -- Reading, Writing & Maths combined (All pupils / Total)\n max(case when subject = 'Reading, writing and maths'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('expected_standard_pupil_percent') }} end) as rwm_expected_pct,\n max(case when subject = 'Reading, writing and maths'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('higher_standard_pupil_percent') }} end) as rwm_high_pct,\n\n -- Reading (All pupils / Total)\n max(case when subject = 'Reading'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('expected_standard_pupil_percent') }} end) as reading_expected_pct,\n max(case when subject = 'Reading'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('higher_standard_pupil_percent') }} end) as reading_high_pct,\n max(case when subject = 'Reading'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('average_scaled_score') }} end) as reading_avg_score,\n max(case when subject = 'Reading'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('progress_measure_score') }} end) as reading_progress,\n max(case when subject = 'Reading'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('progress_measure_lower_conf_interval') }} end) as reading_progress_lower_ci,\n max(case when subject = 'Reading'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('progress_measure_upper_conf_interval') }} end) as reading_progress_upper_ci,\n max(case when subject = 'Reading'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('absent_or_not_able_to_access_percent') }} end) as reading_absence_pct,\n\n -- Writing (All pupils / Total)\n max(case when subject = 'Writing'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('expected_standard_pupil_percent') }} end) as writing_expected_pct,\n max(case when subject = 'Writing'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('higher_standard_pupil_percent') }} end) as writing_high_pct,\n max(case when subject = 'Writing'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('progress_measure_score') }} end) as writing_progress,\n max(case when subject = 'Writing'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('progress_measure_lower_conf_interval') }} end) as writing_progress_lower_ci,\n max(case when subject = 'Writing'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('progress_measure_upper_conf_interval') }} end) as writing_progress_upper_ci,\n max(case when subject = 'Writing'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('working_towards_expected_standard_pupil_percent') }} end) as writing_working_towards_pct,\n max(case when subject = 'Writing'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('absent_or_not_able_to_access_percent') }} end) as writing_absence_pct,\n\n -- Maths (All pupils / Total)\n max(case when subject = 'Maths'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('expected_standard_pupil_percent') }} end) as maths_expected_pct,\n max(case when subject = 'Maths'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('higher_standard_pupil_percent') }} end) as maths_high_pct,\n max(case when subject = 'Maths'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('average_scaled_score') }} end) as maths_avg_score,\n max(case when subject = 'Maths'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('progress_measure_score') }} end) as maths_progress,\n max(case when subject = 'Maths'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('progress_measure_lower_conf_interval') }} end) as maths_progress_lower_ci,\n max(case when subject = 'Maths'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('progress_measure_upper_conf_interval') }} end) as maths_progress_upper_ci,\n max(case when subject = 'Maths'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('absent_or_not_able_to_access_percent') }} end) as maths_absence_pct,\n\n -- GPS (All pupils / Total)\n max(case when (subject ilike '%grammar%' or subject = 'GPS')\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('expected_standard_pupil_percent') }} end) as gps_expected_pct,\n max(case when (subject ilike '%grammar%' or subject = 'GPS')\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('higher_standard_pupil_percent') }} end) as gps_high_pct,\n max(case when (subject ilike '%grammar%' or subject = 'GPS')\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('average_scaled_score') }} end) as gps_avg_score,\n max(case when (subject ilike '%grammar%' or subject = 'GPS')\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('absent_or_not_able_to_access_percent') }} end) as gps_absence_pct,\n\n -- Science (All pupils / Total)\n max(case when subject = 'Science'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('expected_standard_pupil_percent') }} end) as science_expected_pct,\n max(case when subject = 'Science'\n and breakdown_topic = 'All pupils' and breakdown = 'Total'\n then {{ safe_numeric('absent_or_not_able_to_access_percent') }} end) as science_absence_pct,\n\n -- Gender breakdown for Reading, Writing & Maths\n max(case when subject = 'Reading, writing and maths' and breakdown = 'Boys'\n then {{ safe_numeric('expected_standard_pupil_percent') }} end) as rwm_expected_boys_pct,\n max(case when subject = 'Reading, writing and maths' and breakdown = 'Boys'\n then {{ safe_numeric('higher_standard_pupil_percent') }} end) as rwm_high_boys_pct,\n max(case when subject = 'Reading, writing and maths' and breakdown = 'Girls'\n then {{ safe_numeric('expected_standard_pupil_percent') }} end) as rwm_expected_girls_pct,\n max(case when subject = 'Reading, writing and maths' and breakdown = 'Girls'\n then {{ safe_numeric('higher_standard_pupil_percent') }} end) as rwm_high_girls_pct,\n\n -- Disadvantaged breakdown for Reading, Writing & Maths\n max(case when subject = 'Reading, writing and maths' and breakdown = 'Disadvantaged'\n then {{ safe_numeric('expected_standard_pupil_percent') }} end) as rwm_expected_disadvantaged_pct,\n max(case when subject = 'Reading, writing and maths' and breakdown = 'Not disadvantaged'\n then {{ safe_numeric('expected_standard_pupil_percent') }} end) as rwm_expected_non_disadvantaged_pct\n\n from attainment\n group by school_urn, time_period\n),\n\ninfo as (\n select\n cast(trim(school_urn) as integer) as urn,\n cast(trim(time_period) as integer) as year,\n {{ safe_numeric('totpups') }}::integer as total_pupils,\n {{ safe_numeric('telig') }}::integer as eligible_pupils,\n {{ safe_numeric('ptfsm6cla1a') }} as disadvantaged_pct,\n {{ safe_numeric('ptealgrp2') }} as eal_pct,\n {{ safe_numeric('psenelk') }} as sen_support_pct,\n {{ safe_numeric('psenele') }} as sen_ehcp_pct,\n {{ safe_numeric('ptmobn') }} as stability_pct\n from {{ source('raw', 'ees_ks2_info') }}\n where school_urn is not null\n)\n\nselect\n p.urn,\n p.year,\n i.total_pupils,\n i.eligible_pupils,\n\n p.rwm_expected_pct,\n p.rwm_high_pct,\n p.reading_expected_pct,\n p.reading_high_pct,\n p.reading_avg_score,\n p.reading_progress,\n p.reading_progress_lower_ci,\n p.reading_progress_upper_ci,\n p.writing_expected_pct,\n p.writing_high_pct,\n p.writing_progress,\n p.writing_progress_lower_ci,\n p.writing_progress_upper_ci,\n p.writing_working_towards_pct,\n p.maths_expected_pct,\n p.maths_high_pct,\n p.maths_avg_score,\n p.maths_progress,\n p.maths_progress_lower_ci,\n p.maths_progress_upper_ci,\n p.gps_expected_pct,\n p.gps_high_pct,\n p.gps_avg_score,\n p.science_expected_pct,\n\n p.reading_absence_pct,\n p.writing_absence_pct,\n p.maths_absence_pct,\n p.gps_absence_pct,\n p.science_absence_pct,\n\n p.rwm_expected_boys_pct,\n p.rwm_high_boys_pct,\n p.rwm_expected_girls_pct,\n p.rwm_high_girls_pct,\n\n p.rwm_expected_disadvantaged_pct,\n p.rwm_expected_non_disadvantaged_pct,\n p.rwm_expected_disadvantaged_pct - p.rwm_expected_non_disadvantaged_pct as disadvantaged_gap,\n\n i.disadvantaged_pct,\n i.eal_pct,\n i.sen_support_pct,\n i.sen_ehcp_pct,\n i.stability_pct\n\nfrom pivoted p\nleft join info i on p.urn = i.urn and p.year = i.year", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "ees_ks2_attainment"], ["raw", "ees_ks2_info"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.school_compare.safe_numeric"], "nodes": ["source.school_compare.raw.ees_ks2_attainment", "source.school_compare.raw.ees_ks2_info"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.stg_legacy_ks2": {"database": "school_compare", "schema": "staging", "name": "stg_legacy_ks2", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_legacy_ks2.sql", "original_file_path": "models/staging/stg_legacy_ks2.sql", "unique_id": "model.school_compare.stg_legacy_ks2", "fqn": ["school_compare", "staging", "stg_legacy_ks2"], "alias": "stg_legacy_ks2", "checksum": {"name": "sha256", "checksum": "d57ce51603d2a1d2945690ba863dca576a96b07b24187f0d603eba40602a2f3a"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "table", "schema": "staging"}, "created_at": 1784225256.851999, "relation_name": "\"school_compare\".\"staging\".\"stg_legacy_ks2\"", "raw_code": "{{ config(materialized='table') }}\n\n-- Staging model: Legacy KS2 data from pre-COVID DfE performance tables\n-- The tap already maps old column names to match stg_ees_ks2 output;\n-- this model just applies safe_numeric casts.\n\nselect\n cast(trim(urn) as integer) as urn,\n cast(trim(year) as integer) as year,\n\n {{ safe_numeric('total_pupils') }}::integer as total_pupils,\n {{ safe_numeric('eligible_pupils') }}::integer as eligible_pupils,\n\n {{ safe_numeric('rwm_expected_pct') }} as rwm_expected_pct,\n {{ safe_numeric('rwm_high_pct') }} as rwm_high_pct,\n {{ safe_numeric('reading_expected_pct') }} as reading_expected_pct,\n {{ safe_numeric('reading_high_pct') }} as reading_high_pct,\n {{ safe_numeric('reading_avg_score') }} as reading_avg_score,\n {{ safe_numeric('reading_progress') }} as reading_progress,\n -- Progress CIs / working-towards: not published in the legacy CSVs.\n -- Typed placeholders keep positional alignment with stg_ees_ks2 in\n -- int_ks2_with_lineage's UNION ALL.\n null::numeric as reading_progress_lower_ci,\n null::numeric as reading_progress_upper_ci,\n {{ safe_numeric('writing_expected_pct') }} as writing_expected_pct,\n {{ safe_numeric('writing_high_pct') }} as writing_high_pct,\n {{ safe_numeric('writing_progress') }} as writing_progress,\n null::numeric as writing_progress_lower_ci,\n null::numeric as writing_progress_upper_ci,\n null::numeric as writing_working_towards_pct,\n {{ safe_numeric('maths_expected_pct') }} as maths_expected_pct,\n {{ safe_numeric('maths_high_pct') }} as maths_high_pct,\n {{ safe_numeric('maths_avg_score') }} as maths_avg_score,\n {{ safe_numeric('maths_progress') }} as maths_progress,\n null::numeric as maths_progress_lower_ci,\n null::numeric as maths_progress_upper_ci,\n {{ safe_numeric('gps_expected_pct') }} as gps_expected_pct,\n {{ safe_numeric('gps_high_pct') }} as gps_high_pct,\n {{ safe_numeric('gps_avg_score') }} as gps_avg_score,\n null::numeric as science_expected_pct,\n\n {{ safe_numeric('reading_absence_pct') }} as reading_absence_pct,\n null::numeric as writing_absence_pct,\n {{ safe_numeric('maths_absence_pct') }} as maths_absence_pct,\n {{ safe_numeric('gps_absence_pct') }} as gps_absence_pct,\n null::numeric as science_absence_pct,\n\n {{ safe_numeric('rwm_expected_boys_pct') }} as rwm_expected_boys_pct,\n {{ safe_numeric('rwm_high_boys_pct') }} as rwm_high_boys_pct,\n {{ safe_numeric('rwm_expected_girls_pct') }} as rwm_expected_girls_pct,\n {{ safe_numeric('rwm_high_girls_pct') }} as rwm_high_girls_pct,\n\n {{ safe_numeric('rwm_expected_disadvantaged_pct') }} as rwm_expected_disadvantaged_pct,\n {{ safe_numeric('rwm_expected_non_disadvantaged_pct') }} as rwm_expected_non_disadvantaged_pct,\n {{ safe_numeric('rwm_expected_disadvantaged_pct') }}\n - {{ safe_numeric('rwm_expected_non_disadvantaged_pct') }} as disadvantaged_gap,\n\n {{ safe_numeric('disadvantaged_pct') }} as disadvantaged_pct,\n {{ safe_numeric('eal_pct') }} as eal_pct,\n {{ safe_numeric('sen_support_pct') }} as sen_support_pct,\n {{ safe_numeric('sen_ehcp_pct') }} as sen_ehcp_pct,\n {{ safe_numeric('stability_pct') }} as stability_pct\n\nfrom {{ source('raw', 'legacy_ks2') }}\nwhere urn is not null\n and urn ~ '^[0-9]+$'", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "legacy_ks2"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.school_compare.safe_numeric"], "nodes": ["source.school_compare.raw.legacy_ks2"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.stg_ees_ks4": {"database": "school_compare", "schema": "staging", "name": "stg_ees_ks4", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_ees_ks4.sql", "original_file_path": "models/staging/stg_ees_ks4.sql", "unique_id": "model.school_compare.stg_ees_ks4", "fqn": ["school_compare", "staging", "stg_ees_ks4"], "alias": "stg_ees_ks4", "checksum": {"name": "sha256", "checksum": "3a3541de61b4d6e6b1bd82c325480e4474a143110f475b50bb3461cb60452091"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "table", "schema": "staging"}, "created_at": 1784225256.855532, "relation_name": "\"school_compare\".\"staging\".\"stg_ees_ks4\"", "raw_code": "{{ config(materialized='table') }}\n\n-- Staging model: KS4 attainment data from EES\n-- KS4 performance data is long-format with breakdown dimensions (breakdown_topic,\n-- breakdown, sex). Unlike KS2 which has a subject dimension, KS4 metrics are\n-- already in separate columns \u2014 we just filter to the all-pupils total row.\n-- EES uses 'z' (not applicable) and 'c' (confidential) as suppression codes \u2014\n-- safe_numeric handles both by treating any non-numeric string as NULL.\n-- NOTE: older EES releases (pre-2023/24) use breakdown_topic = 'All pupils';\n-- the 2023/24 release switched to breakdown_topic = 'Total'. Both are included.\n\nwith performance as (\n select * from {{ source('raw', 'ees_ks4_performance') }}\n where school_urn ~ '^[0-9]+$'\n and time_period ~ '^[0-9]+$'\n),\n\n-- Filter to all-pupils totals (one row per school per year)\nall_pupils as (\n select\n cast(trim(school_urn) as integer) as urn,\n cast(trim(time_period) as integer) as year,\n {{ safe_numeric('pupil_count') }}::integer as total_pupils,\n\n -- Attainment 8\n {{ safe_numeric('attainment8_average') }} as attainment_8_score,\n\n -- Progress 8\n {{ safe_numeric('progress8_average') }} as progress_8_score,\n {{ safe_numeric('progress8_lower_95_ci') }} as progress_8_lower_ci,\n {{ safe_numeric('progress8_upper_95_ci') }} as progress_8_upper_ci,\n {{ safe_numeric('progress8eng_average') }} as progress_8_english,\n {{ safe_numeric('progress8mat_average') }} as progress_8_maths,\n {{ safe_numeric('progress8ebacc_average') }} as progress_8_ebacc,\n {{ safe_numeric('progress8open_average') }} as progress_8_open,\n\n -- English & Maths pass rates\n {{ safe_numeric('engmath_95_percent') }} as english_maths_strong_pass_pct,\n {{ safe_numeric('engmath_94_percent') }} as english_maths_standard_pass_pct,\n\n -- EBacc\n {{ safe_numeric('ebacc_entering_percent') }} as ebacc_entry_pct,\n {{ safe_numeric('ebacc_95_percent') }} as ebacc_strong_pass_pct,\n {{ safe_numeric('ebacc_94_percent') }} as ebacc_standard_pass_pct,\n {{ safe_numeric('ebacc_aps_average') }} as ebacc_avg_score,\n\n -- GCSE grade 9-1\n {{ safe_numeric('gcse_91_percent') }} as gcse_grade_91_pct\n\n from performance\n where breakdown_topic in ('Total', 'All pupils')\n and breakdown = 'Total'\n and sex = 'Total'\n),\n\n-- KS4 info table for context/demographics\ninfo as (\n select\n cast(trim(school_urn) as integer) as urn,\n cast(trim(time_period) as integer) as year,\n {{ safe_numeric('endks4_pupil_count') }}::integer as eligible_pupils,\n {{ safe_numeric('ks2_scaledscore_average') }} as prior_attainment_avg,\n {{ safe_numeric('sen_pupil_percent') }} as sen_pct,\n {{ safe_numeric('sen_with_ehcp_pupil_percent') }} as sen_ehcp_pct,\n {{ safe_numeric('sen_no_ehcp_pupil_percent') }} as sen_support_pct,\n -- EES suppression sentinels (z/c/x/q/u) and blanks must not reach the\n -- mart as banding labels\n case\n when lower(trim(progress8_banding)) in ('', 'z', 'c', 'x', 'q', 'u', 'null')\n then null\n else trim(progress8_banding)\n end as progress_8_banding,\n {{ safe_numeric('attainment8_diffn') }} as attainment_8_disadvantage_gap,\n {{ safe_numeric('progress8_diffn') }} as progress_8_disadvantage_gap\n from {{ source('raw', 'ees_ks4_info') }}\n where school_urn is not null\n)\n\nselect\n p.urn,\n p.year,\n p.total_pupils,\n i.eligible_pupils,\n i.prior_attainment_avg,\n\n -- Attainment 8\n p.attainment_8_score,\n\n -- Progress 8\n p.progress_8_score,\n p.progress_8_lower_ci,\n p.progress_8_upper_ci,\n p.progress_8_english,\n p.progress_8_maths,\n p.progress_8_ebacc,\n p.progress_8_open,\n\n -- English & Maths\n p.english_maths_strong_pass_pct,\n p.english_maths_standard_pass_pct,\n\n -- EBacc\n p.ebacc_entry_pct,\n p.ebacc_strong_pass_pct,\n p.ebacc_standard_pass_pct,\n p.ebacc_avg_score,\n\n -- GCSE\n p.gcse_grade_91_pct,\n\n -- Context\n i.sen_pct,\n i.sen_ehcp_pct,\n i.sen_support_pct,\n i.progress_8_banding,\n i.attainment_8_disadvantage_gap,\n i.progress_8_disadvantage_gap\n\nfrom all_pupils p\nleft join info i on p.urn = i.urn and p.year = i.year", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "ees_ks4_performance"], ["raw", "ees_ks4_info"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.school_compare.safe_numeric"], "nodes": ["source.school_compare.raw.ees_ks4_performance", "source.school_compare.raw.ees_ks4_info"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.stg_legacy_ks4": {"database": "school_compare", "schema": "staging", "name": "stg_legacy_ks4", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_legacy_ks4.sql", "original_file_path": "models/staging/stg_legacy_ks4.sql", "unique_id": "model.school_compare.stg_legacy_ks4", "fqn": ["school_compare", "staging", "stg_legacy_ks4"], "alias": "stg_legacy_ks4", "checksum": {"name": "sha256", "checksum": "794d61332074548bb35a4f49835f8046fb1422695f926d166828f5e423e149db"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "table", "schema": "staging"}, "created_at": 1784225256.858708, "relation_name": "\"school_compare\".\"staging\".\"stg_legacy_ks4\"", "raw_code": "{{ config(materialized='table') }}\n\n-- Staging model: Legacy KS4 data from pre-EES DfE performance tables\n-- Covers 2015/16 \u2013 2018/19; EES provides 2023/24 onwards.\n-- The tap already maps old column names and strips % suffixes;\n-- this model just applies safe_numeric casts and adds NULL placeholders\n-- for columns not available in the legacy format.\n\nselect\n cast(trim(urn) as integer) as urn,\n cast(trim(year) as integer) as year,\n\n {{ safe_numeric('total_pupils') }}::integer as total_pupils,\n {{ safe_numeric('total_pupils') }}::integer as eligible_pupils,\n null::numeric as prior_attainment_avg,\n\n -- Attainment 8\n {{ safe_numeric('attainment_8_score') }} as attainment_8_score,\n\n -- Progress 8\n {{ safe_numeric('progress_8_score') }} as progress_8_score,\n {{ safe_numeric('progress_8_lower_ci') }} as progress_8_lower_ci,\n {{ safe_numeric('progress_8_upper_ci') }} as progress_8_upper_ci,\n {{ safe_numeric('progress_8_english') }} as progress_8_english,\n {{ safe_numeric('progress_8_maths') }} as progress_8_maths,\n {{ safe_numeric('progress_8_ebacc') }} as progress_8_ebacc,\n {{ safe_numeric('progress_8_open') }} as progress_8_open,\n\n -- English & Maths pass rates\n {{ safe_numeric('english_maths_strong_pass_pct') }} as english_maths_strong_pass_pct,\n {{ safe_numeric('english_maths_standard_pass_pct') }} as english_maths_standard_pass_pct,\n\n -- EBacc\n {{ safe_numeric('ebacc_entry_pct') }} as ebacc_entry_pct,\n {{ safe_numeric('ebacc_strong_pass_pct') }} as ebacc_strong_pass_pct,\n {{ safe_numeric('ebacc_standard_pass_pct') }} as ebacc_standard_pass_pct,\n null::numeric as ebacc_avg_score,\n\n -- GCSE grade 9-1 (not published in legacy format)\n null::numeric as gcse_grade_91_pct,\n\n -- SEN\n null::numeric as sen_pct,\n {{ safe_numeric('sen_ehcp_pct') }} as sen_ehcp_pct,\n {{ safe_numeric('sen_support_pct') }} as sen_support_pct,\n\n -- Progress 8 banding & disadvantage gaps (not published in legacy format)\n null::text as progress_8_banding,\n null::numeric as attainment_8_disadvantage_gap,\n null::numeric as progress_8_disadvantage_gap\n\nfrom {{ source('raw', 'legacy_ks4') }}\nwhere urn is not null\n and urn ~ '^[0-9]+$'", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "legacy_ks4"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.school_compare.safe_numeric"], "nodes": ["source.school_compare.raw.legacy_ks4"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.fact_census_benchmarks": {"database": "school_compare", "schema": "marts", "name": "fact_census_benchmarks", "resource_type": "model", "package_name": "school_compare", "path": "marts/fact_census_benchmarks.sql", "original_file_path": "models/marts/fact_census_benchmarks.sql", "unique_id": "model.school_compare.fact_census_benchmarks", "fqn": ["school_compare", "marts", "fact_census_benchmarks"], "alias": "fact_census_benchmarks", "checksum": {"name": "sha256", "checksum": "a81b31b5e1a0834d9c62fe6213a42c01a5d9e5f299235bbc49a4a7b56e20fe19"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "State-school context benchmarks from the pupil census \u2014 one row per phase (primary/secondary), latest census year. fsm_pct/eal_pct are pupil-weighted means; consumers label them \"state-school average (computed from our dataset)\", never \"England average\".\n", "columns": {"phase": {"name": "phase", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.958771, "relation_name": "\"school_compare\".\"marts\".\"fact_census_benchmarks\"", "raw_code": "{{ config(materialized='table') }}\n\n-- Mart: state-school context benchmarks from the pupil census \u2014 one row per\n-- phase, latest census year. Computed at import time (never per request).\n-- fsm_pct / eal_pct are pupil-weighted means, i.e. \"what % of pupils\", not\n-- \"the median school\" \u2014 this matches how DfE quotes national FSM/EAL rates.\n-- Consumers must label these \"state-school average (computed from our\n-- dataset)\" (spec \u00a78.6), never \"England average\".\n\nwith latest as (\n select max(year) as year from {{ ref('fact_pupil_characteristics') }}\n),\n\nclassified as (\n select\n case\n when p.phase_type_grouping ilike '%primary%' then 'primary'\n when p.phase_type_grouping ilike '%secondary%' then 'secondary'\n end as phase,\n p.total_pupils,\n p.fsm_pct,\n p.eal_pct,\n l.year\n from {{ ref('fact_pupil_characteristics') }} p\n join latest l on p.year = l.year\n where p.total_pupils is not null and p.total_pupils > 0\n)\n\nselect\n phase,\n max(year) as year,\n round((sum(fsm_pct * total_pupils) filter (where fsm_pct is not null)\n / nullif(sum(total_pupils) filter (where fsm_pct is not null), 0))::numeric, 1) as fsm_pct,\n round((sum(eal_pct * total_pupils) filter (where eal_pct is not null)\n / nullif(sum(total_pupils) filter (where eal_pct is not null), 0))::numeric, 1) as eal_pct,\n round(percentile_cont(0.5) within group (order by total_pupils))::integer as median_pupils\nfrom classified\nwhere phase is not null\ngroup by phase", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_pupil_characteristics", "package": null, "version": null}, {"name": "fact_pupil_characteristics", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.fact_pupil_characteristics"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": ["phase"], "time_spine": null}, "model.school_compare.fact_pupil_characteristics": {"database": "school_compare", "schema": "marts", "name": "fact_pupil_characteristics", "resource_type": "model", "package_name": "school_compare", "path": "marts/fact_pupil_characteristics.sql", "original_file_path": "models/marts/fact_pupil_characteristics.sql", "unique_id": "model.school_compare.fact_pupil_characteristics", "fqn": ["school_compare", "marts", "fact_pupil_characteristics"], "alias": "fact_pupil_characteristics", "checksum": {"name": "sha256", "checksum": "cffde5cbc7b2e42d0df227cd2f32410b87f817b738715017c1fc46b6a3f7122c"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "Pupil demographics \u2014 one row per URN per year", "columns": {"urn": {"name": "urn", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "year": {"name": "year", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.9585762, "relation_name": "\"school_compare\".\"marts\".\"fact_pupil_characteristics\"", "raw_code": "-- Mart: Pupil characteristics \u2014 one row per URN per year\n\nselect\n urn,\n year,\n phase_type_grouping,\n total_pupils,\n female_pupils,\n male_pupils,\n full_time_pupils,\n part_time_pupils,\n total_boarders,\n fsm_eligible_n,\n fsm_pct,\n eal_pct,\n young_carer_pct,\n ethnicity_white_british_pct,\n ethnicity_white_other_pct,\n ethnicity_gypsy_roma_pct,\n ethnicity_mixed_wbc_pct,\n ethnicity_mixed_wba_pct,\n ethnicity_mixed_wa_pct,\n ethnicity_mixed_other_pct,\n ethnicity_asian_indian_pct,\n ethnicity_asian_pakistani_pct,\n ethnicity_asian_bangladeshi_pct,\n ethnicity_asian_other_pct,\n ethnicity_black_caribbean_pct,\n ethnicity_black_african_pct,\n ethnicity_black_other_pct,\n ethnicity_chinese_pct,\n ethnicity_other_pct,\n ethnicity_unclassified_pct\nfrom {{ ref('int_pupil_chars_merged') }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "int_pupil_chars_merged", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.int_pupil_chars_merged"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.int_pupil_chars_merged": {"database": "school_compare", "schema": "intermediate", "name": "int_pupil_chars_merged", "resource_type": "model", "package_name": "school_compare", "path": "intermediate/int_pupil_chars_merged.sql", "original_file_path": "models/intermediate/int_pupil_chars_merged.sql", "unique_id": "model.school_compare.int_pupil_chars_merged", "fqn": ["school_compare", "intermediate", "int_pupil_chars_merged"], "alias": "int_pupil_chars_merged", "checksum": {"name": "sha256", "checksum": "e14f55eb1d34878f1b2ba334ab719ab6221efb62c147df1d7c0866ff28d9a10b"}, "config": {"enabled": true, "alias": null, "schema": "intermediate", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "view", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "view", "schema": "intermediate"}, "created_at": 1784225256.862957, "relation_name": "\"school_compare\".\"intermediate\".\"int_pupil_chars_merged\"", "raw_code": "-- Intermediate model: Merged pupil characteristics from census data\n\nselect\n urn,\n year,\n phase_type_grouping,\n total_pupils,\n female_pupils,\n male_pupils,\n full_time_pupils,\n part_time_pupils,\n total_boarders,\n fsm_eligible_n,\n fsm_pct,\n eal_pct,\n young_carer_pct,\n ethnicity_white_british_pct,\n ethnicity_white_other_pct,\n ethnicity_gypsy_roma_pct,\n ethnicity_mixed_wbc_pct,\n ethnicity_mixed_wba_pct,\n ethnicity_mixed_wa_pct,\n ethnicity_mixed_other_pct,\n ethnicity_asian_indian_pct,\n ethnicity_asian_pakistani_pct,\n ethnicity_asian_bangladeshi_pct,\n ethnicity_asian_other_pct,\n ethnicity_black_caribbean_pct,\n ethnicity_black_african_pct,\n ethnicity_black_other_pct,\n ethnicity_chinese_pct,\n ethnicity_other_pct,\n ethnicity_unclassified_pct\nfrom {{ ref('stg_ees_census') }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_ees_census", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_ees_census"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.stg_ees_census": {"database": "school_compare", "schema": "staging", "name": "stg_ees_census", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_ees_census.sql", "original_file_path": "models/staging/stg_ees_census.sql", "unique_id": "model.school_compare.stg_ees_census", "fqn": ["school_compare", "staging", "stg_ees_census"], "alias": "stg_ees_census", "checksum": {"name": "sha256", "checksum": "ff3c516a20ad25b525d4be015a9fcfe0a5329899c2ae7fc5aad4aa6b123fcb22"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "table", "schema": "staging"}, "created_at": 1784225256.863596, "relation_name": "\"school_compare\".\"staging\".\"stg_ees_census\"", "raw_code": "{{ config(materialized='table') }}\n\n-- Staging model: School Pupils and Characteristics (census)\n-- One row per school per year. CSV has 269 columns; we extract the\n-- aggregate demographic summaries only (not per-age/year-group breakdowns).\n-- Column renames happen in the tap before Singer persists to raw.ees_census.\n\nwith source as (\n select * from {{ source('raw', 'ees_census') }}\n where school_urn ~ '^[0-9]+$'\n and time_period ~ '^[0-9]+$'\n)\n\nselect\n cast(trim(school_urn) as integer) as urn,\n cast(trim(time_period) as integer) as year,\n school_name,\n phase_type_grouping,\n\n -- Pupil counts\n {{ safe_numeric('total_pupils') }}::integer as total_pupils,\n {{ safe_numeric('female_pupils') }}::integer as female_pupils,\n {{ safe_numeric('male_pupils') }}::integer as male_pupils,\n {{ safe_numeric('full_time_pupils') }}::integer as full_time_pupils,\n {{ safe_numeric('part_time_pupils') }}::integer as part_time_pupils,\n {{ safe_numeric('total_boarders') }}::integer as total_boarders,\n\n -- FSM\n {{ safe_numeric('fsm_eligible_n') }}::integer as fsm_eligible_n,\n {{ safe_numeric('fsm_pct') }} as fsm_pct,\n\n -- EAL & young carers\n {{ safe_numeric('eal_pct') }} as eal_pct,\n {{ safe_numeric('young_carer_pct') }} as young_carer_pct,\n\n -- Ethnicity\n {{ safe_numeric('ethnicity_white_british_pct') }} as ethnicity_white_british_pct,\n {{ safe_numeric('ethnicity_white_other_pct') }} as ethnicity_white_other_pct,\n {{ safe_numeric('ethnicity_gypsy_roma_pct') }} as ethnicity_gypsy_roma_pct,\n {{ safe_numeric('ethnicity_mixed_wbc_pct') }} as ethnicity_mixed_wbc_pct,\n {{ safe_numeric('ethnicity_mixed_wba_pct') }} as ethnicity_mixed_wba_pct,\n {{ safe_numeric('ethnicity_mixed_wa_pct') }} as ethnicity_mixed_wa_pct,\n {{ safe_numeric('ethnicity_mixed_other_pct') }} as ethnicity_mixed_other_pct,\n {{ safe_numeric('ethnicity_asian_indian_pct') }} as ethnicity_asian_indian_pct,\n {{ safe_numeric('ethnicity_asian_pakistani_pct') }} as ethnicity_asian_pakistani_pct,\n {{ safe_numeric('ethnicity_asian_bangladeshi_pct') }} as ethnicity_asian_bangladeshi_pct,\n {{ safe_numeric('ethnicity_asian_other_pct') }} as ethnicity_asian_other_pct,\n {{ safe_numeric('ethnicity_black_caribbean_pct') }} as ethnicity_black_caribbean_pct,\n {{ safe_numeric('ethnicity_black_african_pct') }} as ethnicity_black_african_pct,\n {{ safe_numeric('ethnicity_black_other_pct') }} as ethnicity_black_other_pct,\n {{ safe_numeric('ethnicity_chinese_pct') }} as ethnicity_chinese_pct,\n {{ safe_numeric('ethnicity_other_pct') }} as ethnicity_other_pct,\n {{ safe_numeric('ethnicity_unclassified_pct') }} as ethnicity_unclassified_pct\n\nfrom source", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "ees_census"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.school_compare.safe_numeric"], "nodes": ["source.school_compare.raw.ees_census"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.fact_admissions": {"database": "school_compare", "schema": "marts", "name": "fact_admissions", "resource_type": "model", "package_name": "school_compare", "path": "marts/fact_admissions.sql", "original_file_path": "models/marts/fact_admissions.sql", "unique_id": "model.school_compare.fact_admissions", "fqn": ["school_compare", "marts", "fact_admissions"], "alias": "fact_admissions", "checksum": {"name": "sha256", "checksum": "b3c18e42c3c8961ca8856cf67f421a7794ac896c61dce1febe3cadade107e3c6"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "School admissions \u2014 one row per URN per year", "columns": {"urn": {"name": "urn", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "year": {"name": "year", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "second_preference_offers": {"name": "second_preference_offers", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "third_preference_offers": {"name": "third_preference_offers", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "cross_la_applications": {"name": "cross_la_applications", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "cross_la_offers": {"name": "cross_la_offers", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "total_offers": {"name": "total_offers", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.959255, "relation_name": "\"school_compare\".\"marts\".\"fact_admissions\"", "raw_code": "-- Mart: School admissions \u2014 one row per URN per year\n\nselect\n urn,\n year,\n school_phase,\n places_offered,\n total_offers,\n total_applications,\n first_preference_applications,\n first_preference_offers,\n second_preference_offers,\n third_preference_offers,\n cross_la_applications,\n cross_la_offers,\n first_preference_offer_pct,\n oversubscription_ratio,\n oversubscribed,\n admissions_policy\nfrom {{ ref('stg_ees_admissions') }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_ees_admissions", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_ees_admissions"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.stg_ees_admissions": {"database": "school_compare", "schema": "staging", "name": "stg_ees_admissions", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_ees_admissions.sql", "original_file_path": "models/staging/stg_ees_admissions.sql", "unique_id": "model.school_compare.stg_ees_admissions", "fqn": ["school_compare", "staging", "stg_ees_admissions"], "alias": "stg_ees_admissions", "checksum": {"name": "sha256", "checksum": "b4e9317532796ab3413861305cf091cd216e1e4f07efec9d08c17f83cf23afbc"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "view", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "view", "schema": "staging"}, "created_at": 1784225256.86735, "relation_name": "\"school_compare\".\"staging\".\"stg_ees_admissions\"", "raw_code": "-- Staging model: Primary and secondary school admissions from EES\n-- Wide format, one row per school per year. No geographic_level column.\n-- Note: FSM_eligible_percent is stored with mixed case by target-postgres and\n-- must be double-quoted in SQL to avoid case-folding to fsm_eligible_percent.\n\nwith source as (\n select * from {{ source('raw', 'ees_admissions') }}\n -- Exclude rows where school_urn is null, empty, or non-numeric (e.g. \"n/a\" LA aggregates)\n where school_urn ~ '^[0-9]+$'\n and time_period ~ '^[0-9]+$'\n),\n\nrenamed as (\n select\n cast(trim(school_urn) as integer) as urn,\n cast(trim(time_period) as integer) as year,\n school_phase,\n entry_year,\n\n -- Places and offers\n -- places_offered: number of places the school actually offered in this\n -- year's admissions round. NOT the Published Admission Number (PAN),\n -- which is the school's published capacity \u2014 EES does not expose PAN\n -- at school level, so we use the count of offers as the best proxy.\n {{ safe_numeric('total_number_places_offered') }}::integer as places_offered,\n {{ safe_numeric('number_preferred_offers') }}::integer as total_offers,\n {{ safe_numeric('number_1st_preference_offers') }}::integer as first_preference_offers,\n {{ safe_numeric('number_2nd_preference_offers') }}::integer as second_preference_offers,\n {{ safe_numeric('number_3rd_preference_offers') }}::integer as third_preference_offers,\n\n -- Applications\n {{ safe_numeric('times_put_as_any_preferred_school') }}::integer as total_applications,\n {{ safe_numeric('times_put_as_1st_preference') }}::integer as first_preference_applications,\n\n -- Cross-borough demand: applications naming this school from families\n -- living in another local authority, and offers made to them.\n {{ safe_numeric('\"all_applications_from_another_LA\"') }}::integer as cross_la_applications,\n {{ safe_numeric('\"offers_to_applicants_from_another_LA\"') }}::integer as cross_la_offers,\n\n -- Proportions\n -- first_preference_offer_pct: of families who listed this school FIRST,\n -- the percentage that received an offer. 0\u2013100 scale.\n -- The raw EES column `proportion_1stprefs_v_totaloffers` stores a\n -- different, misleading figure (first-preference applications divided\n -- by total offers, i.e. an oversubscription ratio) \u2014 do not use it.\n case\n when {{ safe_numeric('times_put_as_1st_preference') }} > 0\n then 100.0\n * {{ safe_numeric('number_1st_preference_offers') }}\n / {{ safe_numeric('times_put_as_1st_preference') }}\n end as first_preference_offer_pct,\n\n -- Oversubscription ratio: 1st-preference applications per place offered.\n -- >1 means the school is oversubscribed on first preferences.\n case\n when {{ safe_numeric('total_number_places_offered') }} > 0\n then {{ safe_numeric('times_put_as_1st_preference') }}::numeric\n / {{ safe_numeric('total_number_places_offered') }}\n end as oversubscription_ratio,\n\n -- Derived: oversubscribed if 1st-preference applications > places offered\n -- Use already-cast columns to avoid repeating the regex expression\n (\n {{ safe_numeric('times_put_as_1st_preference') }}\n > {{ safe_numeric('total_number_places_offered') }}\n ) as oversubscribed,\n\n -- Context\n admissions_policy,\n {{ safe_numeric('\"FSM_eligible_percent\"') }} as fsm_eligible_pct\n\n from source\n)\n\nselect * from renamed", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "ees_admissions"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.school_compare.safe_numeric"], "nodes": ["source.school_compare.raw.ees_admissions"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.fact_ks2_national_averages": {"database": "school_compare", "schema": "marts", "name": "fact_ks2_national_averages", "resource_type": "model", "package_name": "school_compare", "path": "marts/fact_ks2_national_averages.sql", "original_file_path": "models/marts/fact_ks2_national_averages.sql", "unique_id": "model.school_compare.fact_ks2_national_averages", "fqn": ["school_compare", "marts", "fact_ks2_national_averages"], "alias": "fact_ks2_national_averages", "checksum": {"name": "sha256", "checksum": "7e4a689b3ac405ed7311ad43cff791455f4b74e6e12dab8f75bb747e30070c20"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "Official DfE KS2 national headline averages \u2014 one row per academic year", "columns": {"year": {"name": "year", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.9593852, "relation_name": "\"school_compare\".\"marts\".\"fact_ks2_national_averages\"", "raw_code": "{{ config(materialized='table') }}\n\n-- Mart: Official DfE KS2 national headline averages \u2014 one row per academic year.\n-- These are the published England-wide figures, not computed means from our school dataset.\n-- Used by the /api/national-averages endpoint to provide accurate per-year reference lines\n-- on the school history chart and for hero stat comparisons.\n\nselect\n year,\n rwm_expected_pct,\n rwm_high_pct,\n reading_expected_pct,\n reading_high_pct,\n reading_avg_score,\n writing_expected_pct,\n writing_gd_pct,\n maths_expected_pct,\n maths_high_pct,\n maths_avg_score,\n gps_expected_pct,\n gps_high_pct,\n gps_avg_score,\n science_expected_pct\nfrom {{ ref('stg_ees_ks2_national') }}\norder by year", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_ees_ks2_national", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_ees_ks2_national"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": ["year"], "time_spine": null}, "model.school_compare.stg_ees_ks2_national": {"database": "school_compare", "schema": "staging", "name": "stg_ees_ks2_national", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_ees_ks2_national.sql", "original_file_path": "models/staging/stg_ees_ks2_national.sql", "unique_id": "model.school_compare.stg_ees_ks2_national", "fqn": ["school_compare", "staging", "stg_ees_ks2_national"], "alias": "stg_ees_ks2_national", "checksum": {"name": "sha256", "checksum": "7306cd5981b55f5a6505f89122cee9a4ca4c1d384431536b5240edf5f8c8e898"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "table", "schema": "staging"}, "created_at": 1784225256.870332, "relation_name": "\"school_compare\".\"staging\".\"stg_ees_ks2_national\"", "raw_code": "{{ config(materialized='table') }}\n\n-- Staging model: DfE KS2 national headline averages\n-- Source: EES data catalogue CSV (one row per academic year, England national total)\n-- COVID years 2019/20 and 2020/21 are naturally absent \u2014 DfE did not publish figures\n-- because national assessments were cancelled. Those years produce no rows here.\n-- 'x' (not applicable) and suppressed values are coerced to NULL by safe_numeric.\n\nselect\n cast(trim(time_period) as integer) as year,\n\n {{ safe_numeric('rwm_expected_pct') }} as rwm_expected_pct,\n {{ safe_numeric('rwm_high_pct') }} as rwm_high_pct,\n\n {{ safe_numeric('reading_expected_pct') }} as reading_expected_pct,\n {{ safe_numeric('reading_high_pct') }} as reading_high_pct,\n {{ safe_numeric('reading_avg_score') }} as reading_avg_score,\n\n {{ safe_numeric('writing_expected_pct') }} as writing_expected_pct,\n {{ safe_numeric('writing_gd_pct') }} as writing_gd_pct,\n\n {{ safe_numeric('maths_expected_pct') }} as maths_expected_pct,\n {{ safe_numeric('maths_high_pct') }} as maths_high_pct,\n {{ safe_numeric('maths_avg_score') }} as maths_avg_score,\n\n {{ safe_numeric('gps_expected_pct') }} as gps_expected_pct,\n {{ safe_numeric('gps_high_pct') }} as gps_high_pct,\n {{ safe_numeric('gps_avg_score') }} as gps_avg_score,\n\n {{ safe_numeric('science_expected_pct') }} as science_expected_pct\n\nfrom {{ source('raw', 'ees_ks2_national') }}\nwhere time_period ~ '^[0-9]+$'\n -- 2015/16 was the first year of the current expected-standard tests, so it's\n -- the correct floor (not 2016/17 -- that excluded a real, comparable national\n -- row). GPS/science/scaled-score columns are already mapped correctly end to\n -- end (tap.py's _KS2_NATIONAL_COL_MAP + this model select them fine); the\n -- prod NULLs for those fields are stale raw.ees_ks2_national data from before\n -- the map covered them, not a mapping bug -- no map change accompanies this fix.\n and cast(trim(time_period) as integer) >= 201516", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "ees_ks2_national"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.school_compare.safe_numeric"], "nodes": ["source.school_compare.raw.ees_ks2_national"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.fact_finance": {"database": "school_compare", "schema": "marts", "name": "fact_finance", "resource_type": "model", "package_name": "school_compare", "path": "marts/fact_finance.sql", "original_file_path": "models/marts/fact_finance.sql", "unique_id": "model.school_compare.fact_finance", "fqn": ["school_compare", "marts", "fact_finance"], "alias": "fact_finance", "checksum": {"name": "sha256", "checksum": "b9eb2ac96af2d48206fe73fbc8d956619c8505fea7e0f95c529484d45fe1e60a"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "School financial data \u2014 one row per URN per year", "columns": {"urn": {"name": "urn", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}, "year": {"name": "year", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.95952, "relation_name": "\"school_compare\".\"marts\".\"fact_finance\"", "raw_code": "-- Mart: School financial data \u2014 one row per URN per year\n\nselect\n urn,\n year,\n per_pupil_spend,\n staff_cost_pct,\n teacher_cost_pct,\n support_staff_cost_pct,\n premises_cost_pct\nfrom {{ ref('stg_fbit_finance') }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_fbit_finance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_fbit_finance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.stg_fbit_finance": {"database": "school_compare", "schema": "staging", "name": "stg_fbit_finance", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_fbit_finance.sql", "original_file_path": "models/staging/stg_fbit_finance.sql", "unique_id": "model.school_compare.stg_fbit_finance", "fqn": ["school_compare", "staging", "stg_fbit_finance"], "alias": "stg_fbit_finance", "checksum": {"name": "sha256", "checksum": "bc4c4b98c46a4a6122258cb6115f9418db5827b47cebc20a2c97641c6e90f1a2"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "view", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "view", "schema": "staging"}, "created_at": 1784225256.8732932, "relation_name": "\"school_compare\".\"staging\".\"stg_fbit_finance\"", "raw_code": "-- Staging model: Financial benchmarking data from FBIT API\n\nwith source as (\n select * from {{ source('raw', 'fbit_finance') }}\n),\n\nrenamed as (\n select\n cast(urn as integer) as urn,\n cast(year as integer) as year,\n cast(per_pupil_spend as numeric) as per_pupil_spend,\n cast(staff_cost_pct as numeric) as staff_cost_pct,\n cast(teacher_cost_pct as numeric) as teacher_cost_pct,\n cast(support_staff_cost_pct as numeric) as support_staff_cost_pct,\n cast(premises_cost_pct as numeric) as premises_cost_pct\n from source\n where urn is not null\n)\n\nselect * from renamed", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "fbit_finance"]], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["source.school_compare.raw.fbit_finance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "model.school_compare.fact_deprivation": {"database": "school_compare", "schema": "marts", "name": "fact_deprivation", "resource_type": "model", "package_name": "school_compare", "path": "marts/fact_deprivation.sql", "original_file_path": "models/marts/fact_deprivation.sql", "unique_id": "model.school_compare.fact_deprivation", "fqn": ["school_compare", "marts", "fact_deprivation"], "alias": "fact_deprivation", "checksum": {"name": "sha256", "checksum": "270f49fcf16d710be2f05b9f5ce1e5c4826bdee0f5273104276fc65eec1f2d28"}, "config": {"enabled": true, "alias": null, "schema": "marts", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "table", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "IDACI deprivation index \u2014 one row per URN", "columns": {"urn": {"name": "urn", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": null, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": "school_compare://models/marts/_marts_schema.yml", "build_path": null, "unrendered_config": {"materialized": "table", "schema": "marts"}, "created_at": 1784225256.959689, "relation_name": "\"school_compare\".\"marts\".\"fact_deprivation\"", "raw_code": "-- Mart: Deprivation index \u2014 one row per URN\n-- The IDACI tap already resolves postcode \u2192 LSOA \u2192 IoD2019 score per school.\n\nselect\n urn,\n lsoa_code,\n idaci_score,\n idaci_decile\nfrom {{ ref('stg_idaci') }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "stg_idaci", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.stg_idaci"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": ["urn"], "time_spine": null}, "model.school_compare.stg_idaci": {"database": "school_compare", "schema": "staging", "name": "stg_idaci", "resource_type": "model", "package_name": "school_compare", "path": "staging/stg_idaci.sql", "original_file_path": "models/staging/stg_idaci.sql", "unique_id": "model.school_compare.stg_idaci", "fqn": ["school_compare", "staging", "stg_idaci"], "alias": "stg_idaci", "checksum": {"name": "sha256", "checksum": "840a949c12c1480f1cdd874c0af6fcd3d3cbb4cc6f74cee01202f6ffa9754b7c"}, "config": {"enabled": true, "alias": null, "schema": "staging", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "view", "incremental_strategy": null, "batch_size": null, "lookback": 1, "begin": null, "persist_docs": {}, "post-hook": [], "pre-hook": [], "quoting": {}, "column_types": {}, "full_refresh": null, "unique_key": null, "on_schema_change": "ignore", "on_configuration_change": "apply", "grants": {}, "packages": [], "docs": {"show": true, "node_color": null}, "contract": {"enforced": false, "alias_types": true}, "event_time": null, "concurrent_batches": null, "access": "protected", "freshness": null, "on_error": null, "latest_version_pointer": {"enabled": null, "alias": null}}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"materialized": "view", "schema": "staging"}, "created_at": 1784225256.8745248, "relation_name": "\"school_compare\".\"staging\".\"stg_idaci\"", "raw_code": "-- Staging model: Income Deprivation Affecting Children Index\n-- The IDACI tap resolves postcode \u2192 LSOA and joins to IoD2019 data,\n-- so each row already has a URN.\n\nwith source as (\n select * from {{ source('raw', 'idaci') }}\n),\n\nrenamed as (\n select\n cast(urn as integer) as urn,\n lsoa_code,\n cast(idaci_score as numeric) as idaci_score,\n cast(idaci_decile as integer) as idaci_decile\n from source\n where urn is not null\n)\n\nselect * from renamed", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "idaci"]], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["source.school_compare.raw.idaci"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "access": "protected", "constraints": [], "version": null, "latest_version": null, "deprecation_date": null, "primary_key": [], "time_spine": null}, "test.school_compare.assert_urns_in_uk_bounds": {"database": "school_compare", "schema": "dbt_test__audit", "name": "assert_urns_in_uk_bounds", "resource_type": "test", "package_name": "school_compare", "path": "assert_urns_in_uk_bounds.sql", "original_file_path": "tests/assert_urns_in_uk_bounds.sql", "unique_id": "test.school_compare.assert_urns_in_uk_bounds", "fqn": ["school_compare", "assert_urns_in_uk_bounds"], "alias": "assert_urns_in_uk_bounds", "checksum": {"name": "sha256", "checksum": "b5bcc4736f23422874d0ec9963b32da568245eb4978170dc680ceccfeb22a153"}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.9002, "relation_name": null, "raw_code": "-- Custom test: All geocoded schools should have coordinates within the UK\n\nselect\n urn,\n easting,\n northing\nfrom {{ ref('dim_location') }}\nwhere easting is not null\n and northing is not null\n and (\n easting < 0 or easting > 700000\n or northing < 0 or northing > 1300000\n )", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_location", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.dim_location"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}}, "test.school_compare.assert_no_orphaned_facts": {"database": "school_compare", "schema": "dbt_test__audit", "name": "assert_no_orphaned_facts", "resource_type": "test", "package_name": "school_compare", "path": "assert_no_orphaned_facts.sql", "original_file_path": "tests/assert_no_orphaned_facts.sql", "unique_id": "test.school_compare.assert_no_orphaned_facts", "fqn": ["school_compare", "assert_no_orphaned_facts"], "alias": "assert_no_orphaned_facts", "checksum": {"name": "sha256", "checksum": "fd5287fef72054c2f8bf3ef2450eafe63da791a301642a6b3667d0b2853cc3ee"}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "warn", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"severity": "warn"}, "created_at": 1784225256.902774, "relation_name": null, "raw_code": "-- Custom test: All fact table URNs should exist in dim_school\n\nselect f.urn\nfrom {{ ref('fact_ks2_performance') }} f\nleft join {{ ref('dim_school') }} d on f.urn = d.urn\nwhere d.urn is null\nlimit 10", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks2_performance", "package": null, "version": null}, {"name": "dim_school", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["model.school_compare.fact_ks2_performance", "model.school_compare.dim_school"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}}, "test.school_compare.assert_gias_code_names_match_seed": {"database": "school_compare", "schema": "dbt_test__audit", "name": "assert_gias_code_names_match_seed", "resource_type": "test", "package_name": "school_compare", "path": "assert_gias_code_names_match_seed.sql", "original_file_path": "tests/assert_gias_code_names_match_seed.sql", "unique_id": "test.school_compare.assert_gias_code_names_match_seed", "fqn": ["school_compare", "assert_gias_code_names_match_seed"], "alias": "assert_gias_code_names_match_seed", "checksum": {"name": "sha256", "checksum": "51084dfebf62e9f965242b1487dd043cf50a85c6305355c3403fcfb28e64967d"}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "warn", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"severity": "warn"}, "created_at": 1784225256.90382, "relation_name": null, "raw_code": "-- Warn when the live GIAS CSV carries a (code, name) pair we don't have in\n-- the dictionary seed \u2014 i.e. DfE added or renamed a value. Fix by rerunning\n-- pipeline/scripts/generate_gias_codes.py and committing the regenerated\n-- dictionaries + seed together.\n{{ config(severity='warn') }}\n\nwith raw_pairs as (\n {% for field_key, code_col, name_col in [\n ('school_type', 'TypeOfEstablishment (code)', 'TypeOfEstablishment (name)'),\n ('establishment_status', 'EstablishmentStatus (code)', 'EstablishmentStatus (name)'),\n ('phase_of_education', 'PhaseOfEducation (code)', 'PhaseOfEducation (name)'),\n ('official_sixth_form', 'OfficialSixthForm (code)', 'OfficialSixthForm (name)'),\n ('religious_character', 'ReligiousCharacter (code)', 'ReligiousCharacter (name)'),\n ('admissions_policy', 'AdmissionsPolicy (code)', 'AdmissionsPolicy (name)')\n ] %}\n select distinct\n '{{ field_key }}' as field,\n cast(nullif(trim(\"{{ code_col }}\"), '') as integer) as code,\n nullif(trim(\"{{ name_col }}\"), '') as name\n from {{ source('raw', 'gias_establishments') }}\n where nullif(trim(\"{{ code_col }}\"), '') is not null\n and nullif(trim(\"{{ name_col }}\"), '') is not null\n {% if not loop.last %}union all{% endif %}\n {% endfor %}\n)\n\nselect r.*\nfrom raw_pairs r\nleft join {{ ref('gias_code_names') }} s\n on s.field = r.field\n and s.code = r.code\n and s.name = r.name\nwhere s.field is null", "doc_blocks": [], "language": "sql", "refs": [{"name": "gias_code_names", "package": null, "version": null}], "sources": [["raw", "gias_establishments"], ["raw", "gias_establishments"], ["raw", "gias_establishments"], ["raw", "gias_establishments"], ["raw", "gias_establishments"], ["raw", "gias_establishments"]], "metrics": [], "functions": [], "depends_on": {"macros": [], "nodes": ["source.school_compare.raw.gias_establishments", "seed.school_compare.gias_code_names"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}}, "test.school_compare.not_null_dim_location_urn.aefc04518b": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_dim_location_urn", "resource_type": "test", "package_name": "school_compare", "path": "not_null_dim_location_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_dim_location_urn.aefc04518b", "fqn": ["school_compare", "marts", "not_null_dim_location_urn"], "alias": "not_null_dim_location_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.980829, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_location", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.dim_location"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.dim_location", "attached_node": "model.school_compare.dim_location", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('dim_location')) }}"}, "namespace": null}}, "test.school_compare.unique_dim_location_urn.7acc2482eb": {"database": "school_compare", "schema": "dbt_test__audit", "name": "unique_dim_location_urn", "resource_type": "test", "package_name": "school_compare", "path": "unique_dim_location_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.unique_dim_location_urn.7acc2482eb", "fqn": ["school_compare", "marts", "unique_dim_location_urn"], "alias": "unique_dim_location_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.981445, "relation_name": null, "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_location", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_unique"], "nodes": ["model.school_compare.dim_location"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.dim_location", "attached_node": "model.school_compare.dim_location", "test_metadata": {"name": "unique", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('dim_location')) }}"}, "namespace": null}}, "test.school_compare.relationships_dim_location_urn__urn__ref_dim_school_.719013884a": {"database": "school_compare", "schema": "dbt_test__audit", "name": "relationships_dim_location_urn__urn__ref_dim_school_", "resource_type": "test", "package_name": "school_compare", "path": "relationships_dim_location_urn__urn__ref_dim_school_.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.relationships_dim_location_urn__urn__ref_dim_school_.719013884a", "fqn": ["school_compare", "marts", "relationships_dim_location_urn__urn__ref_dim_school_"], "alias": "relationships_dim_location_urn__urn__ref_dim_school_", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.982482, "relation_name": null, "raw_code": "{{ test_relationships(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_school", "package": null, "version": null}, {"name": "dim_location", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_relationships", "macro.dbt.get_where_subquery"], "nodes": ["model.school_compare.dim_school", "model.school_compare.dim_location"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.dim_location", "attached_node": "model.school_compare.dim_location", "test_metadata": {"name": "relationships", "kwargs": {"to": "ref('dim_school')", "field": "urn", "column_name": "urn", "model": "{{ get_where_subquery(ref('dim_location')) }}"}, "namespace": null}}, "test.school_compare.not_null_dim_location_postcode.1693ab4948": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_dim_location_postcode", "resource_type": "test", "package_name": "school_compare", "path": "not_null_dim_location_postcode.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_dim_location_postcode.1693ab4948", "fqn": ["school_compare", "marts", "not_null_dim_location_postcode"], "alias": "not_null_dim_location_postcode", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.987798, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_location", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.dim_location"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "postcode", "file_key_name": "models.dim_location", "attached_node": "model.school_compare.dim_location", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "postcode", "model": "{{ get_where_subquery(ref('dim_location')) }}"}, "namespace": null}}, "test.school_compare.not_null_dim_school_urn.06fbd2ff26": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_dim_school_urn", "resource_type": "test", "package_name": "school_compare", "path": "not_null_dim_school_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_dim_school_urn.06fbd2ff26", "fqn": ["school_compare", "marts", "not_null_dim_school_urn"], "alias": "not_null_dim_school_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.988222, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_school", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.dim_school"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.dim_school", "attached_node": "model.school_compare.dim_school", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('dim_school')) }}"}, "namespace": null}}, "test.school_compare.unique_dim_school_urn.9851fcd288": {"database": "school_compare", "schema": "dbt_test__audit", "name": "unique_dim_school_urn", "resource_type": "test", "package_name": "school_compare", "path": "unique_dim_school_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.unique_dim_school_urn.9851fcd288", "fqn": ["school_compare", "marts", "unique_dim_school_urn"], "alias": "unique_dim_school_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.988626, "relation_name": null, "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_school", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_unique"], "nodes": ["model.school_compare.dim_school"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.dim_school", "attached_node": "model.school_compare.dim_school", "test_metadata": {"name": "unique", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('dim_school')) }}"}, "namespace": null}}, "test.school_compare.not_null_dim_school_school_name.2a2e381565": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_dim_school_school_name", "resource_type": "test", "package_name": "school_compare", "path": "not_null_dim_school_school_name.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_dim_school_school_name.2a2e381565", "fqn": ["school_compare", "marts", "not_null_dim_school_school_name"], "alias": "not_null_dim_school_school_name", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.9890718, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_school", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.dim_school"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "school_name", "file_key_name": "models.dim_school", "attached_node": "model.school_compare.dim_school", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "school_name", "model": "{{ get_where_subquery(ref('dim_school')) }}"}, "namespace": null}}, "test.school_compare.not_null_dim_school_phase_code.3140ca1112": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_dim_school_phase_code", "resource_type": "test", "package_name": "school_compare", "path": "not_null_dim_school_phase_code.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_dim_school_phase_code.3140ca1112", "fqn": ["school_compare", "marts", "not_null_dim_school_phase_code"], "alias": "not_null_dim_school_phase_code", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "warn", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"severity": "warn"}, "created_at": 1784225256.989849, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}{{ config(severity=\"warn\") }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_school", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.dim_school"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "phase_code", "file_key_name": "models.dim_school", "attached_node": "model.school_compare.dim_school", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "phase_code", "model": "{{ get_where_subquery(ref('dim_school')) }}"}, "namespace": null}}, "test.school_compare.not_null_dim_school_has_sixth_form.ea8e313799": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_dim_school_has_sixth_form", "resource_type": "test", "package_name": "school_compare", "path": "not_null_dim_school_has_sixth_form.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_dim_school_has_sixth_form.ea8e313799", "fqn": ["school_compare", "marts", "not_null_dim_school_has_sixth_form"], "alias": "not_null_dim_school_has_sixth_form", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.990271, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_school", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.dim_school"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "has_sixth_form", "file_key_name": "models.dim_school", "attached_node": "model.school_compare.dim_school", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "has_sixth_form", "model": "{{ get_where_subquery(ref('dim_school')) }}"}, "namespace": null}}, "test.school_compare.accepted_values_dim_school_has_sixth_form__True__False.41eaa1ffd6": {"database": "school_compare", "schema": "dbt_test__audit", "name": "accepted_values_dim_school_has_sixth_form__True__False", "resource_type": "test", "package_name": "school_compare", "path": "accepted_values_dim_school_has_sixth_form__True__False.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.accepted_values_dim_school_has_sixth_form__True__False.41eaa1ffd6", "fqn": ["school_compare", "marts", "accepted_values_dim_school_has_sixth_form__True__False"], "alias": "accepted_values_dim_school_has_sixth_form__True__False", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.9906812, "relation_name": null, "raw_code": "{{ test_accepted_values(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_school", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_accepted_values", "macro.dbt.get_where_subquery"], "nodes": ["model.school_compare.dim_school"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "has_sixth_form", "file_key_name": "models.dim_school", "attached_node": "model.school_compare.dim_school", "test_metadata": {"name": "accepted_values", "kwargs": {"values": [true, false], "column_name": "has_sixth_form", "model": "{{ get_where_subquery(ref('dim_school')) }}"}, "namespace": null}}, "test.school_compare.accepted_values_dim_school_status_code__1__3.b0a0bd9a3a": {"database": "school_compare", "schema": "dbt_test__audit", "name": "accepted_values_dim_school_status_code__1__3", "resource_type": "test", "package_name": "school_compare", "path": "accepted_values_dim_school_status_code__1__3.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.accepted_values_dim_school_status_code__1__3.b0a0bd9a3a", "fqn": ["school_compare", "marts", "accepted_values_dim_school_status_code__1__3"], "alias": "accepted_values_dim_school_status_code__1__3", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.992705, "relation_name": null, "raw_code": "{{ test_accepted_values(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_school", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_accepted_values", "macro.dbt.get_where_subquery"], "nodes": ["model.school_compare.dim_school"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "status_code", "file_key_name": "models.dim_school", "attached_node": "model.school_compare.dim_school", "test_metadata": {"name": "accepted_values", "kwargs": {"values": [1, 3], "column_name": "status_code", "model": "{{ get_where_subquery(ref('dim_school')) }}"}, "namespace": null}}, "test.school_compare.accepted_values_dim_school_school_type_code__1__2__3__5__6__7__8__10__11__12__14__15__18__24__25__26__27__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__49__56__57.66c218b8b6": {"database": "school_compare", "schema": "dbt_test__audit", "name": "accepted_values_dim_school_school_type_code__1__2__3__5__6__7__8__10__11__12__14__15__18__24__25__26__27__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__49__56__57", "resource_type": "test", "package_name": "school_compare", "path": "accepted_values_dim_school_acfbcb3c3f27e749b793e06a71dcf52b.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.accepted_values_dim_school_school_type_code__1__2__3__5__6__7__8__10__11__12__14__15__18__24__25__26__27__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__49__56__57.66c218b8b6", "fqn": ["school_compare", "marts", "accepted_values_dim_school_school_type_code__1__2__3__5__6__7__8__10__11__12__14__15__18__24__25__26__27__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__49__56__57"], "alias": "accepted_values_dim_school_acfbcb3c3f27e749b793e06a71dcf52b", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": "accepted_values_dim_school_acfbcb3c3f27e749b793e06a71dcf52b", "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "warn", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"severity": "warn", "alias": "accepted_values_dim_school_acfbcb3c3f27e749b793e06a71dcf52b"}, "created_at": 1784225256.9936929, "relation_name": null, "raw_code": "{{ test_accepted_values(**_dbt_generic_test_kwargs) }}{{ config(severity=\"warn\",alias=\"accepted_values_dim_school_acfbcb3c3f27e749b793e06a71dcf52b\") }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_school", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_accepted_values", "macro.dbt.get_where_subquery"], "nodes": ["model.school_compare.dim_school"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "school_type_code", "file_key_name": "models.dim_school", "attached_node": "model.school_compare.dim_school", "test_metadata": {"name": "accepted_values", "kwargs": {"values": [1, 2, 3, 5, 6, 7, 8, 10, 11, 12, 14, 15, 18, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 49, 56, 57], "column_name": "school_type_code", "model": "{{ get_where_subquery(ref('dim_school')) }}"}, "namespace": null}}, "test.school_compare.accepted_values_dim_school_religious_character_code__0__2__3__4__5__6__7__8__9__10__11__12__13__14__15__16__17__18__19__20__21__22__24__25__26__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__47__48__49__99.16074ac494": {"database": "school_compare", "schema": "dbt_test__audit", "name": "accepted_values_dim_school_religious_character_code__0__2__3__4__5__6__7__8__9__10__11__12__13__14__15__16__17__18__19__20__21__22__24__25__26__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__47__48__49__99", "resource_type": "test", "package_name": "school_compare", "path": "accepted_values_dim_school_1a238e6e3f01d47aeac019cd1c400d51.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.accepted_values_dim_school_religious_character_code__0__2__3__4__5__6__7__8__9__10__11__12__13__14__15__16__17__18__19__20__21__22__24__25__26__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__47__48__49__99.16074ac494", "fqn": ["school_compare", "marts", "accepted_values_dim_school_religious_character_code__0__2__3__4__5__6__7__8__9__10__11__12__13__14__15__16__17__18__19__20__21__22__24__25__26__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__47__48__49__99"], "alias": "accepted_values_dim_school_1a238e6e3f01d47aeac019cd1c400d51", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": "accepted_values_dim_school_1a238e6e3f01d47aeac019cd1c400d51", "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "warn", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"severity": "warn", "alias": "accepted_values_dim_school_1a238e6e3f01d47aeac019cd1c400d51"}, "created_at": 1784225256.9949062, "relation_name": null, "raw_code": "{{ test_accepted_values(**_dbt_generic_test_kwargs) }}{{ config(severity=\"warn\",alias=\"accepted_values_dim_school_1a238e6e3f01d47aeac019cd1c400d51\") }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_school", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_accepted_values", "macro.dbt.get_where_subquery"], "nodes": ["model.school_compare.dim_school"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "religious_character_code", "file_key_name": "models.dim_school", "attached_node": "model.school_compare.dim_school", "test_metadata": {"name": "accepted_values", "kwargs": {"values": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 99], "column_name": "religious_character_code", "model": "{{ get_where_subquery(ref('dim_school')) }}"}, "namespace": null}}, "test.school_compare.accepted_values_dim_school_admissions_policy_code__0__2__4__9.cfb6e9f008": {"database": "school_compare", "schema": "dbt_test__audit", "name": "accepted_values_dim_school_admissions_policy_code__0__2__4__9", "resource_type": "test", "package_name": "school_compare", "path": "accepted_values_dim_school_admissions_policy_code__0__2__4__9.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.accepted_values_dim_school_admissions_policy_code__0__2__4__9.cfb6e9f008", "fqn": ["school_compare", "marts", "accepted_values_dim_school_admissions_policy_code__0__2__4__9"], "alias": "accepted_values_dim_school_admissions_policy_code__0__2__4__9", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "warn", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"severity": "warn"}, "created_at": 1784225256.996076, "relation_name": null, "raw_code": "{{ test_accepted_values(**_dbt_generic_test_kwargs) }}{{ config(severity=\"warn\") }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "dim_school", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_accepted_values", "macro.dbt.get_where_subquery"], "nodes": ["model.school_compare.dim_school"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "admissions_policy_code", "file_key_name": "models.dim_school", "attached_node": "model.school_compare.dim_school", "test_metadata": {"name": "accepted_values", "kwargs": {"values": [0, 2, 4, 9], "column_name": "admissions_policy_code", "model": "{{ get_where_subquery(ref('dim_school')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_ks2_performance_urn.7b7546cb10": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_ks2_performance_urn", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_ks2_performance_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_ks2_performance_urn.7b7546cb10", "fqn": ["school_compare", "marts", "not_null_fact_ks2_performance_urn"], "alias": "not_null_fact_ks2_performance_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.997118, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks2_performance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_ks2_performance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.fact_ks2_performance", "attached_node": "model.school_compare.fact_ks2_performance", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('fact_ks2_performance')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_ks2_performance_year.bf28467bae": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_ks2_performance_year", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_ks2_performance_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_ks2_performance_year.bf28467bae", "fqn": ["school_compare", "marts", "not_null_fact_ks2_performance_year"], "alias": "not_null_fact_ks2_performance_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.99752, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks2_performance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_ks2_performance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "year", "file_key_name": "models.fact_ks2_performance", "attached_node": "model.school_compare.fact_ks2_performance", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "year", "model": "{{ get_where_subquery(ref('fact_ks2_performance')) }}"}, "namespace": null}}, "test.school_compare.unique_fact_ks2_performance_urn_year.240e6de465": {"database": "school_compare", "schema": "dbt_test__audit", "name": "unique_fact_ks2_performance_urn_year", "resource_type": "test", "package_name": "school_compare", "path": "unique_fact_ks2_performance_urn_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.unique_fact_ks2_performance_urn_year.240e6de465", "fqn": ["school_compare", "marts", "unique_fact_ks2_performance_urn_year"], "alias": "unique_fact_ks2_performance_urn_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.9979892, "relation_name": null, "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks2_performance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_unique"], "nodes": ["model.school_compare.fact_ks2_performance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": null, "file_key_name": "models.fact_ks2_performance", "attached_node": "model.school_compare.fact_ks2_performance", "test_metadata": {"name": "unique", "kwargs": {"column_name": "urn || '-' || year", "model": "{{ get_where_subquery(ref('fact_ks2_performance')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_performance_urn.334fe56f01": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_performance_urn", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_performance_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_performance_urn.334fe56f01", "fqn": ["school_compare", "marts", "not_null_fact_performance_urn"], "alias": "not_null_fact_performance_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.998399, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_performance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_performance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.fact_performance", "attached_node": "model.school_compare.fact_performance", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('fact_performance')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_performance_year.eed5795761": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_performance_year", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_performance_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_performance_year.eed5795761", "fqn": ["school_compare", "marts", "not_null_fact_performance_year"], "alias": "not_null_fact_performance_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.998792, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_performance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_performance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "year", "file_key_name": "models.fact_performance", "attached_node": "model.school_compare.fact_performance", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "year", "model": "{{ get_where_subquery(ref('fact_performance')) }}"}, "namespace": null}}, "test.school_compare.unique_fact_performance_urn_year.f5c028dcb0": {"database": "school_compare", "schema": "dbt_test__audit", "name": "unique_fact_performance_urn_year", "resource_type": "test", "package_name": "school_compare", "path": "unique_fact_performance_urn_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.unique_fact_performance_urn_year.f5c028dcb0", "fqn": ["school_compare", "marts", "unique_fact_performance_urn_year"], "alias": "unique_fact_performance_urn_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.999189, "relation_name": null, "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_performance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_unique"], "nodes": ["model.school_compare.fact_performance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": null, "file_key_name": "models.fact_performance", "attached_node": "model.school_compare.fact_performance", "test_metadata": {"name": "unique", "kwargs": {"column_name": "urn || '-' || year", "model": "{{ get_where_subquery(ref('fact_performance')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_ks4_performance_urn.dc24537cea": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_ks4_performance_urn", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_ks4_performance_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_ks4_performance_urn.dc24537cea", "fqn": ["school_compare", "marts", "not_null_fact_ks4_performance_urn"], "alias": "not_null_fact_ks4_performance_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225256.999593, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks4_performance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_ks4_performance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.fact_ks4_performance", "attached_node": "model.school_compare.fact_ks4_performance", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('fact_ks4_performance')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_ks4_performance_year.ca2d34b977": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_ks4_performance_year", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_ks4_performance_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_ks4_performance_year.ca2d34b977", "fqn": ["school_compare", "marts", "not_null_fact_ks4_performance_year"], "alias": "not_null_fact_ks4_performance_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.000018, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks4_performance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_ks4_performance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "year", "file_key_name": "models.fact_ks4_performance", "attached_node": "model.school_compare.fact_ks4_performance", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "year", "model": "{{ get_where_subquery(ref('fact_ks4_performance')) }}"}, "namespace": null}}, "test.school_compare.accepted_values_fact_ks4_performance_progress_8_banding__Well_above_average__Above_average__Average__Below_average__Well_below_average.1f92b23f9b": {"database": "school_compare", "schema": "dbt_test__audit", "name": "accepted_values_fact_ks4_performance_progress_8_banding__Well_above_average__Above_average__Average__Below_average__Well_below_average", "resource_type": "test", "package_name": "school_compare", "path": "accepted_values_fact_ks4_perfo_cae327e9ae1b05c2c878e063014181be.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.accepted_values_fact_ks4_performance_progress_8_banding__Well_above_average__Above_average__Average__Below_average__Well_below_average.1f92b23f9b", "fqn": ["school_compare", "marts", "accepted_values_fact_ks4_performance_progress_8_banding__Well_above_average__Above_average__Average__Below_average__Well_below_average"], "alias": "accepted_values_fact_ks4_perfo_cae327e9ae1b05c2c878e063014181be", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": "accepted_values_fact_ks4_perfo_cae327e9ae1b05c2c878e063014181be", "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "warn", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": "progress_8_banding is not null", "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {"severity": "warn", "where": "progress_8_banding is not null", "alias": "accepted_values_fact_ks4_perfo_cae327e9ae1b05c2c878e063014181be"}, "created_at": 1784225257.0005372, "relation_name": null, "raw_code": "{{ test_accepted_values(**_dbt_generic_test_kwargs) }}{{ config(severity=\"warn\",where=\"progress_8_banding is not null\",alias=\"accepted_values_fact_ks4_perfo_cae327e9ae1b05c2c878e063014181be\") }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks4_performance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_accepted_values", "macro.dbt.get_where_subquery"], "nodes": ["model.school_compare.fact_ks4_performance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "progress_8_banding", "file_key_name": "models.fact_ks4_performance", "attached_node": "model.school_compare.fact_ks4_performance", "test_metadata": {"name": "accepted_values", "kwargs": {"values": ["Well above average", "Above average", "Average", "Below average", "Well below average"], "column_name": "progress_8_banding", "model": "{{ get_where_subquery(ref('fact_ks4_performance')) }}"}, "namespace": null}}, "test.school_compare.unique_fact_ks4_performance_urn_year.eba97e8000": {"database": "school_compare", "schema": "dbt_test__audit", "name": "unique_fact_ks4_performance_urn_year", "resource_type": "test", "package_name": "school_compare", "path": "unique_fact_ks4_performance_urn_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.unique_fact_ks4_performance_urn_year.eba97e8000", "fqn": ["school_compare", "marts", "unique_fact_ks4_performance_urn_year"], "alias": "unique_fact_ks4_performance_urn_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.002696, "relation_name": null, "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks4_performance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_unique"], "nodes": ["model.school_compare.fact_ks4_performance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": null, "file_key_name": "models.fact_ks4_performance", "attached_node": "model.school_compare.fact_ks4_performance", "test_metadata": {"name": "unique", "kwargs": {"column_name": "urn || '-' || year", "model": "{{ get_where_subquery(ref('fact_ks4_performance')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_ks4_national_averages_year.43387931fd": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_ks4_national_averages_year", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_ks4_national_averages_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_ks4_national_averages_year.43387931fd", "fqn": ["school_compare", "marts", "not_null_fact_ks4_national_averages_year"], "alias": "not_null_fact_ks4_national_averages_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.003171, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks4_national_averages", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_ks4_national_averages"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "year", "file_key_name": "models.fact_ks4_national_averages", "attached_node": "model.school_compare.fact_ks4_national_averages", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "year", "model": "{{ get_where_subquery(ref('fact_ks4_national_averages')) }}"}, "namespace": null}}, "test.school_compare.unique_fact_ks4_national_averages_year.9e4ab94935": {"database": "school_compare", "schema": "dbt_test__audit", "name": "unique_fact_ks4_national_averages_year", "resource_type": "test", "package_name": "school_compare", "path": "unique_fact_ks4_national_averages_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.unique_fact_ks4_national_averages_year.9e4ab94935", "fqn": ["school_compare", "marts", "unique_fact_ks4_national_averages_year"], "alias": "unique_fact_ks4_national_averages_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.0036201, "relation_name": null, "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks4_national_averages", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_unique"], "nodes": ["model.school_compare.fact_ks4_national_averages"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "year", "file_key_name": "models.fact_ks4_national_averages", "attached_node": "model.school_compare.fact_ks4_national_averages", "test_metadata": {"name": "unique", "kwargs": {"column_name": "year", "model": "{{ get_where_subquery(ref('fact_ks4_national_averages')) }}"}, "namespace": null}}, "test.school_compare.not_null_map_school_lineage_urn.24da1a9909": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_map_school_lineage_urn", "resource_type": "test", "package_name": "school_compare", "path": "not_null_map_school_lineage_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_map_school_lineage_urn.24da1a9909", "fqn": ["school_compare", "marts", "not_null_map_school_lineage_urn"], "alias": "not_null_map_school_lineage_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.0040388, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "map_school_lineage", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.map_school_lineage"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.map_school_lineage", "attached_node": "model.school_compare.map_school_lineage", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('map_school_lineage')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_ofsted_inspection_urn.65304a896d": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_ofsted_inspection_urn", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_ofsted_inspection_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_ofsted_inspection_urn.65304a896d", "fqn": ["school_compare", "marts", "not_null_fact_ofsted_inspection_urn"], "alias": "not_null_fact_ofsted_inspection_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.00444, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ofsted_inspection", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_ofsted_inspection"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.fact_ofsted_inspection", "attached_node": "model.school_compare.fact_ofsted_inspection", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('fact_ofsted_inspection')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_ofsted_inspection_inspection_date.5aa4bf0513": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_ofsted_inspection_inspection_date", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_ofsted_inspection_inspection_date.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_ofsted_inspection_inspection_date.5aa4bf0513", "fqn": ["school_compare", "marts", "not_null_fact_ofsted_inspection_inspection_date"], "alias": "not_null_fact_ofsted_inspection_inspection_date", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.0048928, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ofsted_inspection", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_ofsted_inspection"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "inspection_date", "file_key_name": "models.fact_ofsted_inspection", "attached_node": "model.school_compare.fact_ofsted_inspection", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "inspection_date", "model": "{{ get_where_subquery(ref('fact_ofsted_inspection')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_pupil_characteristics_urn.bdeebf869b": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_pupil_characteristics_urn", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_pupil_characteristics_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_pupil_characteristics_urn.bdeebf869b", "fqn": ["school_compare", "marts", "not_null_fact_pupil_characteristics_urn"], "alias": "not_null_fact_pupil_characteristics_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.0053, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_pupil_characteristics", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_pupil_characteristics"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.fact_pupil_characteristics", "attached_node": "model.school_compare.fact_pupil_characteristics", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('fact_pupil_characteristics')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_pupil_characteristics_year.19bec90c81": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_pupil_characteristics_year", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_pupil_characteristics_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_pupil_characteristics_year.19bec90c81", "fqn": ["school_compare", "marts", "not_null_fact_pupil_characteristics_year"], "alias": "not_null_fact_pupil_characteristics_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.0057049, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_pupil_characteristics", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_pupil_characteristics"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "year", "file_key_name": "models.fact_pupil_characteristics", "attached_node": "model.school_compare.fact_pupil_characteristics", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "year", "model": "{{ get_where_subquery(ref('fact_pupil_characteristics')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_census_benchmarks_phase.c4c9ad96c1": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_census_benchmarks_phase", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_census_benchmarks_phase.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_census_benchmarks_phase.c4c9ad96c1", "fqn": ["school_compare", "marts", "not_null_fact_census_benchmarks_phase"], "alias": "not_null_fact_census_benchmarks_phase", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.006102, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_census_benchmarks", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_census_benchmarks"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "phase", "file_key_name": "models.fact_census_benchmarks", "attached_node": "model.school_compare.fact_census_benchmarks", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "phase", "model": "{{ get_where_subquery(ref('fact_census_benchmarks')) }}"}, "namespace": null}}, "test.school_compare.unique_fact_census_benchmarks_phase.c06d73d097": {"database": "school_compare", "schema": "dbt_test__audit", "name": "unique_fact_census_benchmarks_phase", "resource_type": "test", "package_name": "school_compare", "path": "unique_fact_census_benchmarks_phase.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.unique_fact_census_benchmarks_phase.c06d73d097", "fqn": ["school_compare", "marts", "unique_fact_census_benchmarks_phase"], "alias": "unique_fact_census_benchmarks_phase", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.006498, "relation_name": null, "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_census_benchmarks", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_unique"], "nodes": ["model.school_compare.fact_census_benchmarks"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "phase", "file_key_name": "models.fact_census_benchmarks", "attached_node": "model.school_compare.fact_census_benchmarks", "test_metadata": {"name": "unique", "kwargs": {"column_name": "phase", "model": "{{ get_where_subquery(ref('fact_census_benchmarks')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_admissions_urn.fdf334f63c": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_admissions_urn", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_admissions_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_admissions_urn.fdf334f63c", "fqn": ["school_compare", "marts", "not_null_fact_admissions_urn"], "alias": "not_null_fact_admissions_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.0069299, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_admissions", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_admissions"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.fact_admissions", "attached_node": "model.school_compare.fact_admissions", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('fact_admissions')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_admissions_year.11169d1a1f": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_admissions_year", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_admissions_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_admissions_year.11169d1a1f", "fqn": ["school_compare", "marts", "not_null_fact_admissions_year"], "alias": "not_null_fact_admissions_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.007335, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_admissions", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_admissions"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "year", "file_key_name": "models.fact_admissions", "attached_node": "model.school_compare.fact_admissions", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "year", "model": "{{ get_where_subquery(ref('fact_admissions')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_ks2_national_averages_year.84b854a9ce": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_ks2_national_averages_year", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_ks2_national_averages_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_ks2_national_averages_year.84b854a9ce", "fqn": ["school_compare", "marts", "not_null_fact_ks2_national_averages_year"], "alias": "not_null_fact_ks2_national_averages_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.007735, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks2_national_averages", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_ks2_national_averages"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "year", "file_key_name": "models.fact_ks2_national_averages", "attached_node": "model.school_compare.fact_ks2_national_averages", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "year", "model": "{{ get_where_subquery(ref('fact_ks2_national_averages')) }}"}, "namespace": null}}, "test.school_compare.unique_fact_ks2_national_averages_year.99f3ae39bb": {"database": "school_compare", "schema": "dbt_test__audit", "name": "unique_fact_ks2_national_averages_year", "resource_type": "test", "package_name": "school_compare", "path": "unique_fact_ks2_national_averages_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.unique_fact_ks2_national_averages_year.99f3ae39bb", "fqn": ["school_compare", "marts", "unique_fact_ks2_national_averages_year"], "alias": "unique_fact_ks2_national_averages_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.008128, "relation_name": null, "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_ks2_national_averages", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_unique"], "nodes": ["model.school_compare.fact_ks2_national_averages"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "year", "file_key_name": "models.fact_ks2_national_averages", "attached_node": "model.school_compare.fact_ks2_national_averages", "test_metadata": {"name": "unique", "kwargs": {"column_name": "year", "model": "{{ get_where_subquery(ref('fact_ks2_national_averages')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_finance_urn.162f08d129": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_finance_urn", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_finance_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_finance_urn.162f08d129", "fqn": ["school_compare", "marts", "not_null_fact_finance_urn"], "alias": "not_null_fact_finance_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.008537, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_finance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_finance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.fact_finance", "attached_node": "model.school_compare.fact_finance", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('fact_finance')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_finance_year.d96868883e": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_finance_year", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_finance_year.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_finance_year.d96868883e", "fqn": ["school_compare", "marts", "not_null_fact_finance_year"], "alias": "not_null_fact_finance_year", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.008935, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_finance", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_finance"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "year", "file_key_name": "models.fact_finance", "attached_node": "model.school_compare.fact_finance", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "year", "model": "{{ get_where_subquery(ref('fact_finance')) }}"}, "namespace": null}}, "test.school_compare.not_null_fact_deprivation_urn.96d84c2c61": {"database": "school_compare", "schema": "dbt_test__audit", "name": "not_null_fact_deprivation_urn", "resource_type": "test", "package_name": "school_compare", "path": "not_null_fact_deprivation_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.not_null_fact_deprivation_urn.96d84c2c61", "fqn": ["school_compare", "marts", "not_null_fact_deprivation_urn"], "alias": "not_null_fact_deprivation_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.0093708, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_deprivation", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["model.school_compare.fact_deprivation"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.fact_deprivation", "attached_node": "model.school_compare.fact_deprivation", "test_metadata": {"name": "not_null", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('fact_deprivation')) }}"}, "namespace": null}}, "test.school_compare.unique_fact_deprivation_urn.194d6d1f01": {"database": "school_compare", "schema": "dbt_test__audit", "name": "unique_fact_deprivation_urn", "resource_type": "test", "package_name": "school_compare", "path": "unique_fact_deprivation_urn.sql", "original_file_path": "models/marts/_marts_schema.yml", "unique_id": "test.school_compare.unique_fact_deprivation_urn.194d6d1f01", "fqn": ["school_compare", "marts", "unique_fact_deprivation_urn"], "alias": "unique_fact_deprivation_urn", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.009774, "relation_name": null, "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [{"name": "fact_deprivation", "package": null, "version": null}], "sources": [], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_unique"], "nodes": ["model.school_compare.fact_deprivation"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "urn", "file_key_name": "models.fact_deprivation", "attached_node": "model.school_compare.fact_deprivation", "test_metadata": {"name": "unique", "kwargs": {"column_name": "urn", "model": "{{ get_where_subquery(ref('fact_deprivation')) }}"}, "namespace": null}}, "test.school_compare.source_not_null_raw_gias_establishments__URN_.daa9473baf": {"database": "school_compare", "schema": "dbt_test__audit", "name": "source_not_null_raw_gias_establishments__URN_", "resource_type": "test", "package_name": "school_compare", "path": "source_not_null_raw_gias_establishments__URN_.sql", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "test.school_compare.source_not_null_raw_gias_establishments__URN_.daa9473baf", "fqn": ["school_compare", "staging", "source_not_null_raw_gias_establishments__URN_"], "alias": "source_not_null_raw_gias_establishments__URN_", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.036978, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "gias_establishments"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["source.school_compare.raw.gias_establishments"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "\"URN\"", "file_key_name": "sources.raw", "attached_node": null, "test_metadata": {"name": "not_null", "kwargs": {"column_name": "\"URN\"", "model": "{{ get_where_subquery(source('raw', 'gias_establishments')) }}"}, "namespace": null}}, "test.school_compare.source_unique_raw_gias_establishments__URN_.9f6d358797": {"database": "school_compare", "schema": "dbt_test__audit", "name": "source_unique_raw_gias_establishments__URN_", "resource_type": "test", "package_name": "school_compare", "path": "source_unique_raw_gias_establishments__URN_.sql", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "test.school_compare.source_unique_raw_gias_establishments__URN_.9f6d358797", "fqn": ["school_compare", "staging", "source_unique_raw_gias_establishments__URN_"], "alias": "source_unique_raw_gias_establishments__URN_", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.0374432, "relation_name": null, "raw_code": "{{ test_unique(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "gias_establishments"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_unique"], "nodes": ["source.school_compare.raw.gias_establishments"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "\"URN\"", "file_key_name": "sources.raw", "attached_node": null, "test_metadata": {"name": "unique", "kwargs": {"column_name": "\"URN\"", "model": "{{ get_where_subquery(source('raw', 'gias_establishments')) }}"}, "namespace": null}}, "test.school_compare.source_not_null_raw_gias_links__URN_.588070236c": {"database": "school_compare", "schema": "dbt_test__audit", "name": "source_not_null_raw_gias_links__URN_", "resource_type": "test", "package_name": "school_compare", "path": "source_not_null_raw_gias_links__URN_.sql", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "test.school_compare.source_not_null_raw_gias_links__URN_.588070236c", "fqn": ["school_compare", "staging", "source_not_null_raw_gias_links__URN_"], "alias": "source_not_null_raw_gias_links__URN_", "checksum": {"name": "none", "checksum": ""}, "config": {"enabled": true, "alias": null, "schema": "dbt_test__audit", "database": null, "tags": [], "meta": {}, "group": null, "static_analysis": null, "materialized": "test", "severity": "ERROR", "store_failures": null, "store_failures_as": null, "sql_header": null, "where": null, "limit": null, "fail_calc": "count(*)", "warn_if": "!= 0", "error_if": "!= 0"}, "tags": [], "description": "", "columns": {}, "meta": {}, "group": null, "docs": {"show": true, "node_color": null}, "patch_path": null, "build_path": null, "unrendered_config": {}, "created_at": 1784225257.0445042, "relation_name": null, "raw_code": "{{ test_not_null(**_dbt_generic_test_kwargs) }}", "doc_blocks": [], "language": "sql", "refs": [], "sources": [["raw", "gias_links"]], "metrics": [], "functions": [], "depends_on": {"macros": ["macro.dbt.test_not_null"], "nodes": ["source.school_compare.raw.gias_links"]}, "compiled_path": null, "contract": {"enforced": false, "alias_types": true, "checksum": null}, "column_name": "\"URN\"", "file_key_name": "sources.raw", "attached_node": null, "test_metadata": {"name": "not_null", "kwargs": {"column_name": "\"URN\"", "model": "{{ get_where_subquery(source('raw', 'gias_links')) }}"}, "namespace": null}}}, "sources": {"source.school_compare.raw.gias_establishments": {"database": "school_compare", "schema": "raw", "name": "gias_establishments", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.gias_establishments", "fqn": ["school_compare", "staging", "raw", "gias_establishments"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "gias_establishments", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "GIAS bulk establishment data (one row per URN)", "columns": {"URN": {"name": "URN", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": true, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"gias_establishments\"", "created_at": 1784225257.0438552, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.gias_links": {"database": "school_compare", "schema": "raw", "name": "gias_links", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.gias_links", "fqn": ["school_compare", "staging", "raw", "gias_links"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "gias_links", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "GIAS predecessor/successor links between schools", "columns": {"URN": {"name": "URN", "description": "", "meta": {}, "data_type": null, "constraints": [], "quote": true, "config": {"meta": {}, "tags": []}, "tags": [], "granularity": null, "dimension": null, "entity": null, "doc_blocks": []}}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"gias_links\"", "created_at": 1784225257.044908, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.ofsted_inspections": {"database": "school_compare", "schema": "raw", "name": "ofsted_inspections", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.ofsted_inspections", "fqn": ["school_compare", "staging", "raw", "ofsted_inspections"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "ofsted_inspections", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "Ofsted Management Information inspection records", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"ofsted_inspections\"", "created_at": 1784225257.0450501, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.ees_ks2_attainment": {"database": "school_compare", "schema": "raw", "name": "ees_ks2_attainment", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.ees_ks2_attainment", "fqn": ["school_compare", "staging", "raw", "ees_ks2_attainment"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "ees_ks2_attainment", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "KS2 school attainment (long format \u2014 one row per school \u00d7 subject \u00d7 breakdown)", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"ees_ks2_attainment\"", "created_at": 1784225257.045182, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.ees_ks2_info": {"database": "school_compare", "schema": "raw", "name": "ees_ks2_info", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.ees_ks2_info", "fqn": ["school_compare", "staging", "raw", "ees_ks2_info"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "ees_ks2_info", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "KS2 school information (wide format \u2014 context/demographics per school)", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"ees_ks2_info\"", "created_at": 1784225257.045315, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.legacy_ks2": {"database": "school_compare", "schema": "raw", "name": "legacy_ks2", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.legacy_ks2", "fqn": ["school_compare", "staging", "raw", "legacy_ks2"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "legacy_ks2", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "Pre-COVID KS2 school-level data (2015-16 to 2018-19) from DfE performance tables", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"legacy_ks2\"", "created_at": 1784225257.045443, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.ees_ks4_performance": {"database": "school_compare", "schema": "raw", "name": "ees_ks4_performance", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.ees_ks4_performance", "fqn": ["school_compare", "staging", "raw", "ees_ks4_performance"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "ees_ks4_performance", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "KS4 performance tables (long format \u2014 one row per school \u00d7 breakdown \u00d7 sex)", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"ees_ks4_performance\"", "created_at": 1784225257.045571, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.ees_ks4_info": {"database": "school_compare", "schema": "raw", "name": "ees_ks4_info", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.ees_ks4_info", "fqn": ["school_compare", "staging", "raw", "ees_ks4_info"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "ees_ks4_info", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "KS4 school information (wide format \u2014 context/demographics per school)", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"ees_ks4_info\"", "created_at": 1784225257.0456982, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.legacy_ks4": {"database": "school_compare", "schema": "raw", "name": "legacy_ks4", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.legacy_ks4", "fqn": ["school_compare", "staging", "raw", "legacy_ks4"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "legacy_ks4", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "Pre-EES KS4 school-level data (2015/16\u20132018/19) from DfE Compare School Performance ZIPs", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"legacy_ks4\"", "created_at": 1784225257.045825, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.ees_census": {"database": "school_compare", "schema": "raw", "name": "ees_census", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.ees_census", "fqn": ["school_compare", "staging", "raw", "ees_census"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "ees_census", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "School census pupil characteristics", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"ees_census\"", "created_at": 1784225257.0459478, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.ees_admissions": {"database": "school_compare", "schema": "raw", "name": "ees_admissions", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.ees_admissions", "fqn": ["school_compare", "staging", "raw", "ees_admissions"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "ees_admissions", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "Primary and secondary school admissions data", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"ees_admissions\"", "created_at": 1784225257.046114, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.ees_ks2_national": {"database": "school_compare", "schema": "raw", "name": "ees_ks2_national", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.ees_ks2_national", "fqn": ["school_compare", "staging", "raw", "ees_ks2_national"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "ees_ks2_national", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "KS2 national headline averages from DfE EES data catalogue \u2014 one row per academic year", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"ees_ks2_national\"", "created_at": 1784225257.0462809, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.ees_ks4_national": {"database": "school_compare", "schema": "raw", "name": "ees_ks4_national", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.ees_ks4_national", "fqn": ["school_compare", "staging", "raw", "ees_ks4_national"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "ees_ks4_national", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "Official KS4 national headline averages from DfE EES data catalogue \u2014 one row per academic year", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"ees_ks4_national\"", "created_at": 1784225257.046441, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.fbit_finance": {"database": "school_compare", "schema": "raw", "name": "fbit_finance", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.fbit_finance", "fqn": ["school_compare", "staging", "raw", "fbit_finance"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "fbit_finance", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "Financial benchmarking data from FBIT API", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"fbit_finance\"", "created_at": 1784225257.046582, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}, "source.school_compare.raw.idaci": {"database": "school_compare", "schema": "raw", "name": "idaci", "resource_type": "source", "package_name": "school_compare", "path": "models/staging/_stg_sources.yml", "original_file_path": "models/staging/_stg_sources.yml", "unique_id": "source.school_compare.raw.idaci", "fqn": ["school_compare", "staging", "raw", "idaci"], "source_name": "raw", "source_description": "Raw data loaded by Meltano Singer taps into the raw schema", "loader": "", "identifier": "idaci", "quoting": {"database": null, "schema": null, "identifier": null, "column": null}, "loaded_at_field": null, "loaded_at_query": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "external": null, "description": "Income Deprivation Affecting Children Index lookups", "columns": {}, "meta": {}, "source_meta": {}, "tags": [], "config": {"enabled": true, "event_time": null, "freshness": {"warn_after": {"count": null, "period": null}, "error_after": {"count": null, "period": null}, "filter": null}, "loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": [], "static_analysis": null}, "patch_path": null, "unrendered_config": {"loaded_at_field": null, "loaded_at_query": null, "meta": {}, "tags": []}, "relation_name": "\"school_compare\".\"raw\".\"idaci\"", "created_at": 1784225257.0467148, "unrendered_database": null, "unrendered_schema": "raw", "doc_blocks": []}}, "macros": {"macro.school_compare.parse_ofsted_grade": {"name": "parse_ofsted_grade", "resource_type": "macro", "package_name": "school_compare", "path": "macros/parse_ofsted_grade.sql", "original_file_path": "macros/parse_ofsted_grade.sql", "unique_id": "macro.school_compare.parse_ofsted_grade", "macro_sql": "{% macro parse_ofsted_grade(column) %}\n case\n when {{ column }}::text in ('1', 'Outstanding') then 1\n when {{ column }}::text in ('2', 'Good') then 2\n when {{ column }}::text in ('3', 'Requires improvement', 'Requires Improvement', 'Satisfactory') then 3\n when {{ column }}::text in ('4', 'Inadequate') then 4\n when {{ column }}::text in ('9', 'SWK', 'Serious Weaknesses') then 4\n when {{ column }}::text in ('SM', 'Special Measures') then 4\n else null\n end\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "column", "type": null, "description": ""}], "created_at": 1784225035.212215, "supported_languages": null}, "macro.school_compare.validate_uk_coordinates": {"name": "validate_uk_coordinates", "resource_type": "macro", "package_name": "school_compare", "path": "macros/validate_uk_coordinates.sql", "original_file_path": "macros/validate_uk_coordinates.sql", "unique_id": "macro.school_compare.validate_uk_coordinates", "macro_sql": "{% macro validate_uk_coordinates(lat_col, lng_col) %}\n (\n {{ lat_col }} between 49.0 and 61.0\n and {{ lng_col }} between -8.0 and 2.0\n )\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "lat_col", "type": null, "description": ""}, {"name": "lng_col", "type": null, "description": ""}], "created_at": 1784225035.212335, "supported_languages": null}, "macro.school_compare.parse_report_card_grade": {"name": "parse_report_card_grade", "resource_type": "macro", "package_name": "school_compare", "path": "macros/parse_report_card_grade.sql", "original_file_path": "macros/parse_report_card_grade.sql", "unique_id": "macro.school_compare.parse_report_card_grade", "macro_sql": "{% macro parse_report_card_grade(column_name) %}\n case lower(trim(nullif({{ column_name }}, 'NULL')))\n when 'exceptional' then 1\n when 'strong standard' then 2\n when 'expected standard' then 3\n when 'needs attention' then 4\n when 'urgent improvement' then 5\n else null\n end\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "column_name", "type": null, "description": ""}], "created_at": 1784225035.212427, "supported_languages": null}, "macro.school_compare.parse_ungraded_outcome": {"name": "parse_ungraded_outcome", "resource_type": "macro", "package_name": "school_compare", "path": "macros/parse_ungraded_outcome.sql", "original_file_path": "macros/parse_ungraded_outcome.sql", "unique_id": "macro.school_compare.parse_ungraded_outcome", "macro_sql": "{% macro parse_ungraded_outcome(column) %}\n case\n when {{ column }} ilike '%remains Outstanding%' then 1\n when {{ column }} ilike '%remains Good%' then 2\n else null\n end\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "column", "type": null, "description": ""}], "created_at": 1784225035.2125282, "supported_languages": null}, "macro.school_compare.generate_schema_name": {"name": "generate_schema_name", "resource_type": "macro", "package_name": "school_compare", "path": "macros/generate_schema_name.sql", "original_file_path": "macros/generate_schema_name.sql", "unique_id": "macro.school_compare.generate_schema_name", "macro_sql": "{% macro generate_schema_name(custom_schema_name, node) -%}\n {%- if custom_schema_name is not none -%}\n {{ custom_schema_name | trim }}\n {%- else -%}\n {{ target.schema }}\n {%- endif -%}\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "custom_schema_name", "type": null, "description": ""}, {"name": "node", "type": null, "description": ""}], "created_at": 1784225035.212668, "supported_languages": null}, "macro.school_compare.safe_numeric": {"name": "safe_numeric", "resource_type": "macro", "package_name": "school_compare", "path": "macros/safe_numeric.sql", "original_file_path": "macros/safe_numeric.sql", "unique_id": "macro.school_compare.safe_numeric", "macro_sql": "{% macro safe_numeric(col) -%}\n CASE WHEN {{ col }} ~ '^-?[0-9]+(\\.[0-9]+)?$' THEN {{ col }}::numeric ELSE NULL END\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "col", "type": null, "description": ""}], "created_at": 1784225035.212754, "supported_languages": null}, "macro.school_compare.chain_lineage": {"name": "chain_lineage", "resource_type": "macro", "package_name": "school_compare", "path": "macros/chain_lineage.sql", "original_file_path": "macros/chain_lineage.sql", "unique_id": "macro.school_compare.chain_lineage", "macro_sql": "{% macro chain_lineage(source_ref, urn_col='urn', year_col='year') %}\n\nwith current_data as (\n select\n {{ urn_col }} as current_urn,\n {{ urn_col }} as source_urn,\n *\n from {{ source_ref }}\n),\n\npredecessor_data as (\n select\n lin.current_urn,\n src.{{ urn_col }} as source_urn,\n src.*\n from {{ source_ref }} src\n inner join {{ ref('int_school_lineage') }} lin\n on src.{{ urn_col }} = lin.predecessor_urn\n where not exists (\n select 1 from {{ source_ref }} curr\n where curr.{{ urn_col }} = lin.current_urn\n and curr.{{ year_col }} = src.{{ year_col }}\n )\n),\n\ncombined as (\n select * from current_data\n union all\n select * from predecessor_data\n)\n\nselect * from combined\n\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source_ref", "type": null, "description": ""}, {"name": "urn_col", "type": null, "description": ""}, {"name": "year_col", "type": null, "description": ""}], "created_at": 1784225035.2130072, "supported_languages": null}, "macro.dbt_postgres.postgres__current_timestamp": {"name": "postgres__current_timestamp", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/timestamps.sql", "original_file_path": "macros/timestamps.sql", "unique_id": "macro.dbt_postgres.postgres__current_timestamp", "macro_sql": "{% macro postgres__current_timestamp() -%}\n now()\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.213104, "supported_languages": null}, "macro.dbt_postgres.postgres__snapshot_string_as_time": {"name": "postgres__snapshot_string_as_time", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/timestamps.sql", "original_file_path": "macros/timestamps.sql", "unique_id": "macro.dbt_postgres.postgres__snapshot_string_as_time", "macro_sql": "{% macro postgres__snapshot_string_as_time(timestamp) -%}\n {%- set result = \"'\" ~ timestamp ~ \"'::timestamp without time zone\" -%}\n {{ return(result) }}\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "timestamp", "type": null, "description": ""}], "created_at": 1784225035.21347, "supported_languages": null}, "macro.dbt_postgres.postgres__snapshot_get_time": {"name": "postgres__snapshot_get_time", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/timestamps.sql", "original_file_path": "macros/timestamps.sql", "unique_id": "macro.dbt_postgres.postgres__snapshot_get_time", "macro_sql": "{% macro postgres__snapshot_get_time() -%}\n {{ current_timestamp() }}::timestamp without time zone\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.current_timestamp"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2135198, "supported_languages": null}, "macro.dbt_postgres.postgres__current_timestamp_backcompat": {"name": "postgres__current_timestamp_backcompat", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/timestamps.sql", "original_file_path": "macros/timestamps.sql", "unique_id": "macro.dbt_postgres.postgres__current_timestamp_backcompat", "macro_sql": "{% macro postgres__current_timestamp_backcompat() %}\n current_timestamp::{{ type_timestamp() }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.type_timestamp"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.213564, "supported_languages": null}, "macro.dbt_postgres.postgres__current_timestamp_in_utc_backcompat": {"name": "postgres__current_timestamp_in_utc_backcompat", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/timestamps.sql", "original_file_path": "macros/timestamps.sql", "unique_id": "macro.dbt_postgres.postgres__current_timestamp_in_utc_backcompat", "macro_sql": "{% macro postgres__current_timestamp_in_utc_backcompat() %}\n (current_timestamp at time zone 'utc')::{{ type_timestamp() }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.type_timestamp"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2136068, "supported_languages": null}, "macro.dbt_postgres.postgres__get_catalog_relations": {"name": "postgres__get_catalog_relations", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/catalog.sql", "original_file_path": "macros/catalog.sql", "unique_id": "macro.dbt_postgres.postgres__get_catalog_relations", "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 %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "information_schema", "type": null, "description": ""}, {"name": "relations", "type": null, "description": ""}], "created_at": 1784225035.214046, "supported_languages": null}, "macro.dbt_postgres.postgres__get_catalog": {"name": "postgres__get_catalog", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/catalog.sql", "original_file_path": "macros/catalog.sql", "unique_id": "macro.dbt_postgres.postgres__get_catalog", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_catalog_relations"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "information_schema", "type": null, "description": ""}, {"name": "schemas", "type": null, "description": ""}], "created_at": 1784225035.2141912, "supported_languages": null}, "macro.dbt_postgres.postgres__get_relations": {"name": "postgres__get_relations", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations.sql", "original_file_path": "macros/relations.sql", "unique_id": "macro.dbt_postgres.postgres__get_relations", "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 select distinct\n dependent_namespace.nspname as dependent_schema,\n dependent_class.relname as dependent_name,\n referenced_namespace.nspname as referenced_schema,\n referenced_class.relname as referenced_name\n\n -- Query for views: views are entries in pg_class with an entry in pg_rewrite, but we avoid\n -- a seq scan on pg_rewrite by leveraging the fact there is an \"internal\" row in pg_depend for\n -- the view...\n from pg_class as dependent_class\n join pg_namespace as dependent_namespace on dependent_namespace.oid = dependent_class.relnamespace\n join pg_depend as dependent_depend on dependent_depend.refobjid = dependent_class.oid\n and dependent_depend.classid = 'pg_rewrite'::regclass\n and dependent_depend.refclassid = 'pg_class'::regclass\n and dependent_depend.deptype = 'i'\n\n -- ... and via pg_depend (that has a row per column, hence the need for \"distinct\" above, and\n -- making sure to exclude the internal row to avoid a view appearing to depend on itself)...\n join pg_depend as joining_depend on joining_depend.objid = dependent_depend.objid\n and joining_depend.classid = 'pg_rewrite'::regclass\n and joining_depend.refclassid = 'pg_class'::regclass\n and joining_depend.refobjid != dependent_depend.refobjid\n\n -- ... we can find the tables they query from in pg_class, but excluding system tables. Note we\n -- don't need need to exclude _dependent_ system tables, because they only query from other\n -- system tables, and so are automatically excluded by excluding _referenced_ system tables\n join pg_class as referenced_class on referenced_class.oid = joining_depend.refobjid\n join pg_namespace as referenced_namespace on referenced_namespace.oid = referenced_class.relnamespace\n and referenced_namespace.nspname != 'information_schema'\n and referenced_namespace.nspname not like 'pg\\_%'\n\n order by\n dependent_schema, dependent_name, referenced_schema, referenced_name;\n\n {%- endcall -%}\n\n {{ return(load_result('relations').table) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.214432, "supported_languages": null}, "macro.dbt_postgres.postgres_get_relations": {"name": "postgres_get_relations", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations.sql", "original_file_path": "macros/relations.sql", "unique_id": "macro.dbt_postgres.postgres_get_relations", "macro_sql": "{% macro postgres_get_relations() %}\n {{ return(postgres__get_relations()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_relations"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2144818, "supported_languages": null}, "macro.dbt_postgres.postgres__create_table_as": {"name": "postgres__create_table_as", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__create_table_as", "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 %}", "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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "temporary", "type": null, "description": ""}, {"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.215414, "supported_languages": null}, "macro.dbt_postgres.postgres__get_create_index_sql": {"name": "postgres__get_create_index_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__get_create_index_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "index_dict", "type": null, "description": ""}], "created_at": 1784225035.2156029, "supported_languages": null}, "macro.dbt_postgres.postgres__create_schema": {"name": "postgres__create_schema", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__create_schema", "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 %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.215725, "supported_languages": null}, "macro.dbt_postgres.postgres__drop_schema": {"name": "postgres__drop_schema", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__drop_schema", "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 %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.215845, "supported_languages": null}, "macro.dbt_postgres.postgres__get_columns_in_relation": {"name": "postgres__get_columns_in_relation", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__get_columns_in_relation", "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 %}", "depends_on": {"macros": ["macro.dbt.statement", "macro.dbt.sql_convert_columns_in_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.2160242, "supported_languages": null}, "macro.dbt_postgres.postgres__list_relations_without_caching": {"name": "postgres__list_relations_without_caching", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__list_relations_without_caching", "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 union all\n select distinct\n '{{ schema_relation.database }}' as database,\n proname as name,\n ns.nspname as schema,\n 'function' as type\n from pg_proc\n join pg_namespace as ns on pronamespace = ns.oid\n where ns.nspname ilike '{{ schema_relation.schema }}'\n {% endcall %}\n {{ return(load_result('list_relations_without_caching').table) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "schema_relation", "type": null, "description": ""}], "created_at": 1784225035.216217, "supported_languages": null}, "macro.dbt_postgres.postgres__information_schema_name": {"name": "postgres__information_schema_name", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__information_schema_name", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "database", "type": null, "description": ""}], "created_at": 1784225035.216286, "supported_languages": null}, "macro.dbt_postgres.postgres__list_schemas": {"name": "postgres__list_schemas", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__list_schemas", "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 %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "database", "type": null, "description": ""}], "created_at": 1784225035.216414, "supported_languages": null}, "macro.dbt_postgres.postgres__check_schema_exists": {"name": "postgres__check_schema_exists", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__check_schema_exists", "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 %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "information_schema", "type": null, "description": ""}, {"name": "schema", "type": null, "description": ""}], "created_at": 1784225035.216556, "supported_languages": null}, "macro.dbt_postgres.postgres__make_relation_with_suffix": {"name": "postgres__make_relation_with_suffix", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__make_relation_with_suffix", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "base_relation", "type": null, "description": ""}, {"name": "suffix", "type": null, "description": ""}, {"name": "dstring", "type": null, "description": ""}], "created_at": 1784225035.216872, "supported_languages": null}, "macro.dbt_postgres.postgres__make_intermediate_relation": {"name": "postgres__make_intermediate_relation", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__make_intermediate_relation", "macro_sql": "{% macro postgres__make_intermediate_relation(base_relation, suffix) %}\n {{ return(postgres__make_relation_with_suffix(base_relation, suffix, dstring=False)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__make_relation_with_suffix"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "base_relation", "type": null, "description": ""}, {"name": "suffix", "type": null, "description": ""}], "created_at": 1784225035.2169468, "supported_languages": null}, "macro.dbt_postgres.postgres__make_temp_relation": {"name": "postgres__make_temp_relation", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__make_temp_relation", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__make_relation_with_suffix"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "base_relation", "type": null, "description": ""}, {"name": "suffix", "type": null, "description": ""}], "created_at": 1784225035.2170691, "supported_languages": null}, "macro.dbt_postgres.postgres__make_backup_relation": {"name": "postgres__make_backup_relation", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__make_backup_relation", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__make_relation_with_suffix"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "base_relation", "type": null, "description": ""}, {"name": "backup_relation_type", "type": null, "description": ""}, {"name": "suffix", "type": null, "description": ""}], "created_at": 1784225035.217172, "supported_languages": null}, "macro.dbt_postgres.postgres_escape_comment": {"name": "postgres_escape_comment", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres_escape_comment", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "comment", "type": null, "description": ""}], "created_at": 1784225035.217377, "supported_languages": null}, "macro.dbt_postgres.postgres__alter_relation_comment": {"name": "postgres__alter_relation_comment", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__alter_relation_comment", "macro_sql": "{% macro postgres__alter_relation_comment(relation, comment) %}\n {% set escaped_comment = postgres_escape_comment(comment) %}\n {% if relation.type == 'materialized_view' -%}\n {% set relation_type = \"materialized view\" %}\n {%- else -%}\n {%- set relation_type = relation.type -%}\n {%- endif -%}\n comment on {{ relation_type }} {{ relation }} is {{ escaped_comment }};\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres_escape_comment"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "comment", "type": null, "description": ""}], "created_at": 1784225035.217526, "supported_languages": null}, "macro.dbt_postgres.postgres__alter_column_comment": {"name": "postgres__alter_column_comment", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__alter_column_comment", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres_escape_comment"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "column_dict", "type": null, "description": ""}], "created_at": 1784225035.2177532, "supported_languages": null}, "macro.dbt_postgres.postgres__get_show_grant_sql": {"name": "postgres__get_show_grant_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__get_show_grant_sql", "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", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.217837, "supported_languages": null}, "macro.dbt_postgres.postgres__copy_grants": {"name": "postgres__copy_grants", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__copy_grants", "macro_sql": "{% macro postgres__copy_grants() %}\n {{ return(False) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2178838, "supported_languages": null}, "macro.dbt_postgres.postgres__get_show_indexes_sql": {"name": "postgres__get_show_indexes_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__get_show_indexes_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.217956, "supported_languages": null}, "macro.dbt_postgres.postgres__get_drop_index_sql": {"name": "postgres__get_drop_index_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/adapters.sql", "original_file_path": "macros/adapters.sql", "unique_id": "macro.dbt_postgres.postgres__get_drop_index_sql", "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 -%}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "index_name", "type": null, "description": ""}], "created_at": 1784225035.2180102, "supported_languages": null}, "macro.dbt_postgres.postgres__get_incremental_default_sql": {"name": "postgres__get_incremental_default_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/materializations/incremental_strategies.sql", "original_file_path": "macros/materializations/incremental_strategies.sql", "unique_id": "macro.dbt_postgres.postgres__get_incremental_default_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_incremental_delete_insert_sql", "macro.dbt.get_incremental_append_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.218184, "supported_languages": null}, "macro.dbt_postgres.postgres__get_incremental_microbatch_sql": {"name": "postgres__get_incremental_microbatch_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/materializations/incremental_strategies.sql", "original_file_path": "macros/materializations/incremental_strategies.sql", "unique_id": "macro.dbt_postgres.postgres__get_incremental_microbatch_sql", "macro_sql": "{% macro postgres__get_incremental_microbatch_sql(arg_dict) %}\n\n {% if arg_dict[\"unique_key\"] %}\n {% do return(adapter.dispatch('get_incremental_merge_sql', 'dbt')(arg_dict)) %}\n {% else %}\n {{ exceptions.raise_compiler_error(\"dbt-postgres 'microbatch' requires a `unique_key` config\") }}\n {% endif %}\n\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.get_incremental_merge_sql", "macro.dbt.default__get_incremental_merge_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.2183092, "supported_languages": null}, "macro.dbt_postgres.postgres__snapshot_merge_sql": {"name": "postgres__snapshot_merge_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/materializations/snapshot_merge.sql", "original_file_path": "macros/materializations/snapshot_merge.sql", "unique_id": "macro.dbt_postgres.postgres__snapshot_merge_sql", "macro_sql": "{% macro postgres__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 update {{ target }}\n set {{ columns.dbt_valid_to }} = DBT_INTERNAL_SOURCE.{{ columns.dbt_valid_to }}\n from {{ source }} as DBT_INTERNAL_SOURCE\n where DBT_INTERNAL_SOURCE.{{ columns.dbt_scd_id }}::text = {{ target }}.{{ columns.dbt_scd_id }}::text\n and DBT_INTERNAL_SOURCE.dbt_change_type::text in ('update'::text, 'delete'::text)\n {% if config.get(\"dbt_valid_to_current\") %}\n and ({{ target }}.{{ columns.dbt_valid_to }} = {{ config.get('dbt_valid_to_current') }} or {{ target }}.{{ columns.dbt_valid_to }} is null);\n {% else %}\n and {{ target }}.{{ columns.dbt_valid_to }} is null;\n {% endif %}\n\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 %}", "depends_on": {"macros": ["macro.dbt.get_snapshot_table_column_names"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target", "type": null, "description": ""}, {"name": "source", "type": null, "description": ""}, {"name": "insert_cols", "type": null, "description": ""}], "created_at": 1784225035.218737, "supported_languages": null}, "macro.dbt_postgres.postgres__formatted_scalar_function_args_sql": {"name": "postgres__formatted_scalar_function_args_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt_postgres.postgres__formatted_scalar_function_args_sql", "macro_sql": "{% macro postgres__formatted_scalar_function_args_sql() %}\n {% set args = [] %}\n {% for arg in model.arguments -%}\n {% set default_value = arg.get('default_value', none) %}\n {% if default_value != none %}\n {%- do args.append(arg.name ~ ' ' ~ arg.data_type ~ ' DEFAULT ' ~ default_value) -%}\n {% else %}\n {%- do args.append(arg.name ~ ' ' ~ arg.data_type) -%}\n {% endif %}\n {%- endfor %}\n {{ args | join(', ') }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.219011, "supported_languages": null}, "macro.dbt_postgres.postgres__drop_materialized_view": {"name": "postgres__drop_materialized_view", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/materialized_view/drop.sql", "original_file_path": "macros/relations/materialized_view/drop.sql", "unique_id": "macro.dbt_postgres.postgres__drop_materialized_view", "macro_sql": "{% macro postgres__drop_materialized_view(relation) -%}\n drop materialized view if exists {{ relation }} cascade\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.219073, "supported_languages": null}, "macro.dbt_postgres.postgres__describe_materialized_view": {"name": "postgres__describe_materialized_view", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/materialized_view/describe.sql", "original_file_path": "macros/relations/materialized_view/describe.sql", "unique_id": "macro.dbt_postgres.postgres__describe_materialized_view", "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 %}", "depends_on": {"macros": ["macro.dbt.run_query", "macro.dbt.get_show_indexes_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.219189, "supported_languages": null}, "macro.dbt_postgres.postgres__refresh_materialized_view": {"name": "postgres__refresh_materialized_view", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/materialized_view/refresh.sql", "original_file_path": "macros/relations/materialized_view/refresh.sql", "unique_id": "macro.dbt_postgres.postgres__refresh_materialized_view", "macro_sql": "{% macro postgres__refresh_materialized_view(relation) %}\n refresh materialized view {{ relation }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.219249, "supported_languages": null}, "macro.dbt_postgres.postgres__get_rename_materialized_view_sql": {"name": "postgres__get_rename_materialized_view_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/materialized_view/rename.sql", "original_file_path": "macros/relations/materialized_view/rename.sql", "unique_id": "macro.dbt_postgres.postgres__get_rename_materialized_view_sql", "macro_sql": "{% macro postgres__get_rename_materialized_view_sql(relation, new_name) %}\n alter materialized view {{ relation }} rename to {{ new_name }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "new_name", "type": null, "description": ""}], "created_at": 1784225035.219317, "supported_languages": null}, "macro.dbt_postgres.postgres__get_alter_materialized_view_as_sql": {"name": "postgres__get_alter_materialized_view_as_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/materialized_view/alter.sql", "original_file_path": "macros/relations/materialized_view/alter.sql", "unique_id": "macro.dbt_postgres.postgres__get_alter_materialized_view_as_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_replace_sql", "macro.dbt_postgres.postgres__update_indexes_on_materialized_view"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "configuration_changes", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}, {"name": "existing_relation", "type": null, "description": ""}, {"name": "backup_relation", "type": null, "description": ""}, {"name": "intermediate_relation", "type": null, "description": ""}], "created_at": 1784225035.219558, "supported_languages": null}, "macro.dbt_postgres.postgres__update_indexes_on_materialized_view": {"name": "postgres__update_indexes_on_materialized_view", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/materialized_view/alter.sql", "original_file_path": "macros/relations/materialized_view/alter.sql", "unique_id": "macro.dbt_postgres.postgres__update_indexes_on_materialized_view", "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", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_drop_index_sql", "macro.dbt_postgres.postgres__get_create_index_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "index_changes", "type": null, "description": ""}], "created_at": 1784225035.219774, "supported_languages": null}, "macro.dbt_postgres.postgres__get_materialized_view_configuration_changes": {"name": "postgres__get_materialized_view_configuration_changes", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/materialized_view/alter.sql", "original_file_path": "macros/relations/materialized_view/alter.sql", "unique_id": "macro.dbt_postgres.postgres__get_materialized_view_configuration_changes", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__describe_materialized_view"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "existing_relation", "type": null, "description": ""}, {"name": "new_config", "type": null, "description": ""}], "created_at": 1784225035.219894, "supported_languages": null}, "macro.dbt_postgres.postgres__get_create_materialized_view_as_sql": {"name": "postgres__get_create_materialized_view_as_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/materialized_view/create.sql", "original_file_path": "macros/relations/materialized_view/create.sql", "unique_id": "macro.dbt_postgres.postgres__get_create_materialized_view_as_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_create_index_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.220066, "supported_languages": null}, "macro.dbt_postgres.postgres__drop_table": {"name": "postgres__drop_table", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/table/drop.sql", "original_file_path": "macros/relations/table/drop.sql", "unique_id": "macro.dbt_postgres.postgres__drop_table", "macro_sql": "{% macro postgres__drop_table(relation) -%}\n drop table if exists {{ relation }} cascade\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.220125, "supported_languages": null}, "macro.dbt_postgres.postgres__get_replace_table_sql": {"name": "postgres__get_replace_table_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/table/replace.sql", "original_file_path": "macros/relations/table/replace.sql", "unique_id": "macro.dbt_postgres.postgres__get_replace_table_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_assert_columns_equivalent", "macro.dbt.get_table_columns_and_constraints", "macro.dbt.get_select_subquery"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.220371, "supported_languages": null}, "macro.dbt_postgres.postgres__get_rename_table_sql": {"name": "postgres__get_rename_table_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/table/rename.sql", "original_file_path": "macros/relations/table/rename.sql", "unique_id": "macro.dbt_postgres.postgres__get_rename_table_sql", "macro_sql": "{% macro postgres__get_rename_table_sql(relation, new_name) %}\n alter table {{ relation }} rename to {{ new_name }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "new_name", "type": null, "description": ""}], "created_at": 1784225035.220448, "supported_languages": null}, "macro.dbt_postgres.postgres__drop_view": {"name": "postgres__drop_view", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/view/drop.sql", "original_file_path": "macros/relations/view/drop.sql", "unique_id": "macro.dbt_postgres.postgres__drop_view", "macro_sql": "{% macro postgres__drop_view(relation) -%}\n drop view if exists {{ relation }} cascade\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.2205088, "supported_languages": null}, "macro.dbt_postgres.postgres__get_replace_view_sql": {"name": "postgres__get_replace_view_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/view/replace.sql", "original_file_path": "macros/relations/view/replace.sql", "unique_id": "macro.dbt_postgres.postgres__get_replace_view_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_assert_columns_equivalent"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.220763, "supported_languages": null}, "macro.dbt_postgres.postgres__get_rename_view_sql": {"name": "postgres__get_rename_view_sql", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/relations/view/rename.sql", "original_file_path": "macros/relations/view/rename.sql", "unique_id": "macro.dbt_postgres.postgres__get_rename_view_sql", "macro_sql": "{% macro postgres__get_rename_view_sql(relation, new_name) %}\n alter view {{ relation }} rename to {{ new_name }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "new_name", "type": null, "description": ""}], "created_at": 1784225035.220841, "supported_languages": null}, "macro.dbt_postgres.postgres__dateadd": {"name": "postgres__dateadd", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/utils/dateadd.sql", "original_file_path": "macros/utils/dateadd.sql", "unique_id": "macro.dbt_postgres.postgres__dateadd", "macro_sql": "{% macro postgres__dateadd(datepart, interval, from_date_or_timestamp) %}\n\n {{ from_date_or_timestamp }} + ((interval '1 {{ datepart }}') * ({{ interval }}))\n\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "datepart", "type": null, "description": ""}, {"name": "interval", "type": null, "description": ""}, {"name": "from_date_or_timestamp", "type": null, "description": ""}], "created_at": 1784225035.220931, "supported_languages": null}, "macro.dbt_postgres.postgres__listagg": {"name": "postgres__listagg", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/utils/listagg.sql", "original_file_path": "macros/utils/listagg.sql", "unique_id": "macro.dbt_postgres.postgres__listagg", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "measure", "type": null, "description": ""}, {"name": "delimiter_text", "type": null, "description": ""}, {"name": "order_by_clause", "type": null, "description": ""}, {"name": "limit_num", "type": null, "description": ""}], "created_at": 1784225035.2211368, "supported_languages": null}, "macro.dbt_postgres.postgres__datediff": {"name": "postgres__datediff", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/utils/datediff.sql", "original_file_path": "macros/utils/datediff.sql", "unique_id": "macro.dbt_postgres.postgres__datediff", "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 %}", "depends_on": {"macros": ["macro.dbt.datediff"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "first_date", "type": null, "description": ""}, {"name": "second_date", "type": null, "description": ""}, {"name": "datepart", "type": null, "description": ""}], "created_at": 1784225035.222014, "supported_languages": null}, "macro.dbt_postgres.postgres__equals": {"name": "postgres__equals", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/utils/equals.sql", "original_file_path": "macros/utils/equals.sql", "unique_id": "macro.dbt_postgres.postgres__equals", "macro_sql": "{% macro postgres__equals(expr1, expr2) -%}\n{%- if adapter.behavior.enable_truthy_nulls_equals_macro.no_warn %}\n ({{ expr1 }} IS NOT DISTINCT FROM {{ expr2 }})\n{%- else -%}\n ({{ expr1 }} = {{ expr2 }})\n{%- endif %}\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expr1", "type": null, "description": ""}, {"name": "expr2", "type": null, "description": ""}], "created_at": 1784225035.2221708, "supported_languages": null}, "macro.dbt_postgres.postgres__any_value": {"name": "postgres__any_value", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/utils/any_value.sql", "original_file_path": "macros/utils/any_value.sql", "unique_id": "macro.dbt_postgres.postgres__any_value", "macro_sql": "{% macro postgres__any_value(expression) -%}\n\n min({{ expression }})\n\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expression", "type": null, "description": ""}], "created_at": 1784225035.2222452, "supported_languages": null}, "macro.dbt_postgres.postgres__last_day": {"name": "postgres__last_day", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/utils/last_day.sql", "original_file_path": "macros/utils/last_day.sql", "unique_id": "macro.dbt_postgres.postgres__last_day", "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 %}", "depends_on": {"macros": ["macro.dbt.dateadd", "macro.dbt.date_trunc", "macro.dbt.default_last_day"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "date", "type": null, "description": ""}, {"name": "datepart", "type": null, "description": ""}], "created_at": 1784225035.2224572, "supported_languages": null}, "macro.dbt_postgres.postgres__split_part": {"name": "postgres__split_part", "resource_type": "macro", "package_name": "dbt_postgres", "path": "macros/utils/split_part.sql", "original_file_path": "macros/utils/split_part.sql", "unique_id": "macro.dbt_postgres.postgres__split_part", "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 %}", "depends_on": {"macros": ["macro.dbt.default__split_part", "macro.dbt._split_part_negative"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "string_text", "type": null, "description": ""}, {"name": "delimiter_text", "type": null, "description": ""}, {"name": "part_number", "type": null, "description": ""}], "created_at": 1784225035.222636, "supported_languages": null}, "macro.dbt.run_hooks": {"name": "run_hooks", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/hooks.sql", "original_file_path": "macros/materializations/hooks.sql", "unique_id": "macro.dbt.run_hooks", "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 %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "hooks", "type": null, "description": ""}, {"name": "inside_transaction", "type": null, "description": ""}], "created_at": 1784225035.222998, "supported_languages": null}, "macro.dbt.make_hook_config": {"name": "make_hook_config", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/hooks.sql", "original_file_path": "macros/materializations/hooks.sql", "unique_id": "macro.dbt.make_hook_config", "macro_sql": "{% macro make_hook_config(sql, inside_transaction) %}\n {{ tojson({\"sql\": sql, \"transaction\": inside_transaction}) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}, {"name": "inside_transaction", "type": null, "description": ""}], "created_at": 1784225035.2230809, "supported_languages": null}, "macro.dbt.before_begin": {"name": "before_begin", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/hooks.sql", "original_file_path": "macros/materializations/hooks.sql", "unique_id": "macro.dbt.before_begin", "macro_sql": "{% macro before_begin(sql) %}\n {{ make_hook_config(sql, inside_transaction=False) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.make_hook_config"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.22314, "supported_languages": null}, "macro.dbt.in_transaction": {"name": "in_transaction", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/hooks.sql", "original_file_path": "macros/materializations/hooks.sql", "unique_id": "macro.dbt.in_transaction", "macro_sql": "{% macro in_transaction(sql) %}\n {{ make_hook_config(sql, inside_transaction=True) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.make_hook_config"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.2231948, "supported_languages": null}, "macro.dbt.after_commit": {"name": "after_commit", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/hooks.sql", "original_file_path": "macros/materializations/hooks.sql", "unique_id": "macro.dbt.after_commit", "macro_sql": "{% macro after_commit(sql) %}\n {{ make_hook_config(sql, inside_transaction=False) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.make_hook_config"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.223249, "supported_languages": null}, "macro.dbt.set_sql_header": {"name": "set_sql_header", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/configs.sql", "original_file_path": "macros/materializations/configs.sql", "unique_id": "macro.dbt.set_sql_header", "macro_sql": "{% macro set_sql_header(config) -%}\n {{ config.set('sql_header', caller()) }}\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "config", "type": null, "description": ""}], "created_at": 1784225035.223378, "supported_languages": null}, "macro.dbt.should_full_refresh": {"name": "should_full_refresh", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/configs.sql", "original_file_path": "macros/materializations/configs.sql", "unique_id": "macro.dbt.should_full_refresh", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.223497, "supported_languages": null}, "macro.dbt.should_store_failures": {"name": "should_store_failures", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/configs.sql", "original_file_path": "macros/materializations/configs.sql", "unique_id": "macro.dbt.should_store_failures", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.223615, "supported_languages": null}, "macro.dbt.snapshot_merge_sql": {"name": "snapshot_merge_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/snapshot_merge.sql", "original_file_path": "macros/materializations/snapshots/snapshot_merge.sql", "unique_id": "macro.dbt.snapshot_merge_sql", "macro_sql": "{% macro snapshot_merge_sql(target, source, insert_cols) -%}\n {{ adapter.dispatch('snapshot_merge_sql', 'dbt')(target, source, insert_cols) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__snapshot_merge_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target", "type": null, "description": ""}, {"name": "source", "type": null, "description": ""}, {"name": "insert_cols", "type": null, "description": ""}], "created_at": 1784225035.223797, "supported_languages": null}, "macro.dbt.default__snapshot_merge_sql": {"name": "default__snapshot_merge_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/snapshot_merge.sql", "original_file_path": "macros/materializations/snapshots/snapshot_merge.sql", "unique_id": "macro.dbt.default__snapshot_merge_sql", "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 {% if config.get(\"dbt_valid_to_current\") %}\n\t{% set source_unique_key = (\"DBT_INTERNAL_DEST.\" ~ columns.dbt_valid_to) | trim %}\n\t{% set target_unique_key = config.get('dbt_valid_to_current') | trim %}\n\tand ({{ equals(source_unique_key, target_unique_key) }} or {{ source_unique_key }} is null)\n\n {% else %}\n and DBT_INTERNAL_DEST.{{ columns.dbt_valid_to }} is null\n {% endif %}\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 %}", "depends_on": {"macros": ["macro.dbt.get_snapshot_table_column_names", "macro.dbt.equals"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target", "type": null, "description": ""}, {"name": "source", "type": null, "description": ""}, {"name": "insert_cols", "type": null, "description": ""}], "created_at": 1784225035.224118, "supported_languages": null}, "macro.dbt.strategy_dispatch": {"name": "strategy_dispatch", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/strategies.sql", "original_file_path": "macros/materializations/snapshots/strategies.sql", "unique_id": "macro.dbt.strategy_dispatch", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "name", "type": null, "description": ""}], "created_at": 1784225035.225087, "supported_languages": null}, "macro.dbt.snapshot_hash_arguments": {"name": "snapshot_hash_arguments", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/strategies.sql", "original_file_path": "macros/materializations/snapshots/strategies.sql", "unique_id": "macro.dbt.snapshot_hash_arguments", "macro_sql": "{% macro snapshot_hash_arguments(args) -%}\n {{ adapter.dispatch('snapshot_hash_arguments', 'dbt')(args) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__snapshot_hash_arguments"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "args", "type": null, "description": ""}], "created_at": 1784225035.225164, "supported_languages": null}, "macro.dbt.default__snapshot_hash_arguments": {"name": "default__snapshot_hash_arguments", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/strategies.sql", "original_file_path": "macros/materializations/snapshots/strategies.sql", "unique_id": "macro.dbt.default__snapshot_hash_arguments", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "args", "type": null, "description": ""}], "created_at": 1784225035.225264, "supported_languages": null}, "macro.dbt.snapshot_timestamp_strategy": {"name": "snapshot_timestamp_strategy", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/strategies.sql", "original_file_path": "macros/materializations/snapshots/strategies.sql", "unique_id": "macro.dbt.snapshot_timestamp_strategy", "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 hard_deletes = adapter.get_hard_deletes_behavior(config) %}\n {% set invalidate_hard_deletes = hard_deletes == 'invalidate' %}\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_args = api.Relation.scd_args(primary_key, updated_at) %}\n {% set scd_id_expr = snapshot_hash_arguments(scd_args) %}\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 \"hard_deletes\": hard_deletes\n }) %}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.get_snapshot_table_column_names", "macro.dbt.snapshot_hash_arguments"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "node", "type": null, "description": ""}, {"name": "snapshotted_rel", "type": null, "description": ""}, {"name": "current_rel", "type": null, "description": ""}, {"name": "model_config", "type": null, "description": ""}, {"name": "target_exists", "type": null, "description": ""}], "created_at": 1784225035.225667, "supported_languages": null}, "macro.dbt.snapshot_string_as_time": {"name": "snapshot_string_as_time", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/strategies.sql", "original_file_path": "macros/materializations/snapshots/strategies.sql", "unique_id": "macro.dbt.snapshot_string_as_time", "macro_sql": "{% macro snapshot_string_as_time(timestamp) -%}\n {{ adapter.dispatch('snapshot_string_as_time', 'dbt')(timestamp) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__snapshot_string_as_time"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "timestamp", "type": null, "description": ""}], "created_at": 1784225035.225736, "supported_languages": null}, "macro.dbt.default__snapshot_string_as_time": {"name": "default__snapshot_string_as_time", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/strategies.sql", "original_file_path": "macros/materializations/snapshots/strategies.sql", "unique_id": "macro.dbt.default__snapshot_string_as_time", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "timestamp", "type": null, "description": ""}], "created_at": 1784225035.225808, "supported_languages": null}, "macro.dbt.snapshot_check_all_get_existing_columns": {"name": "snapshot_check_all_get_existing_columns", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/strategies.sql", "original_file_path": "macros/materializations/snapshots/strategies.sql", "unique_id": "macro.dbt.snapshot_check_all_get_existing_columns", "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 %}", "depends_on": {"macros": ["macro.dbt.get_columns_in_query"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "node", "type": null, "description": ""}, {"name": "target_exists", "type": null, "description": ""}, {"name": "check_cols_config", "type": null, "description": ""}], "created_at": 1784225035.226366, "supported_languages": null}, "macro.dbt.snapshot_check_strategy": {"name": "snapshot_check_strategy", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/strategies.sql", "original_file_path": "macros/materializations/snapshots/strategies.sql", "unique_id": "macro.dbt.snapshot_check_strategy", "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 hard_deletes = adapter.get_hard_deletes_behavior(config) %}\n {% set invalidate_hard_deletes = hard_deletes == 'invalidate' %}\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_args = api.Relation.scd_args(primary_key, updated_at) %}\n {% set scd_id_expr = snapshot_hash_arguments(scd_args) %}\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 \"hard_deletes\": hard_deletes\n }) %}\n{% endmacro %}", "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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "node", "type": null, "description": ""}, {"name": "snapshotted_rel", "type": null, "description": ""}, {"name": "current_rel", "type": null, "description": ""}, {"name": "model_config", "type": null, "description": ""}, {"name": "target_exists", "type": null, "description": ""}], "created_at": 1784225035.226913, "supported_languages": null}, "macro.dbt.create_columns": {"name": "create_columns", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.create_columns", "macro_sql": "{% macro create_columns(relation, columns) %}\n {{ adapter.dispatch('create_columns', 'dbt')(relation, columns) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__create_columns"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "columns", "type": null, "description": ""}], "created_at": 1784225035.22782, "supported_languages": null}, "macro.dbt.default__create_columns": {"name": "default__create_columns", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.default__create_columns", "macro_sql": "{% macro default__create_columns(relation, columns) %}\n {% for column in columns %}\n {% call statement() %}\n alter table {{ relation.render() }} add column {{ adapter.quote(column.name) }} {{ column.expanded_data_type }};\n {% endcall %}\n {% endfor %}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "columns", "type": null, "description": ""}], "created_at": 1784225035.227948, "supported_languages": null}, "macro.dbt.post_snapshot": {"name": "post_snapshot", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.post_snapshot", "macro_sql": "{% macro post_snapshot(staging_relation) %}\n {{ adapter.dispatch('post_snapshot', 'dbt')(staging_relation) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__post_snapshot"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "staging_relation", "type": null, "description": ""}], "created_at": 1784225035.2280169, "supported_languages": null}, "macro.dbt.default__post_snapshot": {"name": "default__post_snapshot", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.default__post_snapshot", "macro_sql": "{% macro default__post_snapshot(staging_relation) %}\n {# no-op #}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "staging_relation", "type": null, "description": ""}], "created_at": 1784225035.228054, "supported_languages": null}, "macro.dbt.get_true_sql": {"name": "get_true_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.get_true_sql", "macro_sql": "{% macro get_true_sql() %}\n {{ adapter.dispatch('get_true_sql', 'dbt')() }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_true_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.228112, "supported_languages": null}, "macro.dbt.default__get_true_sql": {"name": "default__get_true_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.default__get_true_sql", "macro_sql": "{% macro default__get_true_sql() %}\n {{ return('TRUE') }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.228158, "supported_languages": null}, "macro.dbt.snapshot_staging_table": {"name": "snapshot_staging_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.snapshot_staging_table", "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 %}", "depends_on": {"macros": ["macro.dbt.default__snapshot_staging_table"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "strategy", "type": null, "description": ""}, {"name": "source_sql", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.228236, "supported_languages": null}, "macro.dbt.get_snapshot_table_column_names": {"name": "get_snapshot_table_column_names", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.get_snapshot_table_column_names", "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', 'dbt_is_deleted': 'dbt_is_deleted'}) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.228341, "supported_languages": null}, "macro.dbt.default__snapshot_staging_table": {"name": "default__snapshot_staging_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.default__snapshot_staging_table", "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 {% if strategy.hard_deletes == 'new_record' %}\n {% set new_scd_id = snapshot_hash_arguments([columns.dbt_scd_id, snapshot_get_time()]) %}\n {% endif %}\n with snapshot_query as (\n\n {{ source_sql }}\n\n ),\n\n snapshotted_data as (\n\n select *, {{ unique_key_fields(strategy.unique_key) }}\n from {{ target_relation }}\n where\n {% if config.get('dbt_valid_to_current') %}\n\t\t{% set source_unique_key = columns.dbt_valid_to | trim %}\n\t\t{% set target_unique_key = config.get('dbt_valid_to_current') | trim %}\n\n\t\t{# The exact equals semantics between NULL values depends on the current behavior flag set. Also, update records if the source field is null #}\n ( {{ equals(source_unique_key, target_unique_key) }} or {{ source_unique_key }} is null )\n {% else %}\n {{ columns.dbt_valid_to }} is null\n {% endif %}\n\n ),\n\n insertions_source_data as (\n\n select *, {{ unique_key_fields(strategy.unique_key) }},\n {{ strategy.updated_at }} as {{ columns.dbt_updated_at }},\n {{ strategy.updated_at }} as {{ columns.dbt_valid_from }},\n {{ get_dbt_valid_to_current(strategy, columns) }},\n {{ strategy.scd_id }} as {{ columns.dbt_scd_id }}\n\n from snapshot_query\n ),\n\n updates_source_data as (\n\n select *, {{ unique_key_fields(strategy.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.hard_deletes == 'invalidate' or strategy.hard_deletes == 'new_record' %}\n\n deletes_source_data as (\n\n select *, {{ unique_key_fields(strategy.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 {%- if strategy.hard_deletes == 'new_record' -%}\n ,'False' as {{ columns.dbt_is_deleted }}\n {%- endif %}\n\n from insertions_source_data as source_data\n left outer join snapshotted_data\n on {{ unique_key_join_on(strategy.unique_key, \"snapshotted_data\", \"source_data\") }}\n where {{ unique_key_is_null(strategy.unique_key, \"snapshotted_data\") }}\n or ({{ unique_key_is_not_null(strategy.unique_key, \"snapshotted_data\") }} and (\n {{ strategy.row_changed }} {%- if strategy.hard_deletes == 'new_record' -%} or snapshotted_data.{{ columns.dbt_is_deleted }} = 'True' {% endif %}\n )\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 {%- if strategy.hard_deletes == 'new_record' -%}\n , snapshotted_data.{{ columns.dbt_is_deleted }}\n {%- endif %}\n\n from updates_source_data as source_data\n join snapshotted_data\n on {{ unique_key_join_on(strategy.unique_key, \"snapshotted_data\", \"source_data\") }}\n where (\n {{ strategy.row_changed }} {%- if strategy.hard_deletes == 'new_record' -%} or snapshotted_data.{{ columns.dbt_is_deleted }} = 'True' {% endif %}\n )\n )\n\n {%- if strategy.hard_deletes == 'invalidate' or strategy.hard_deletes == 'new_record' %}\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 {%- if strategy.hard_deletes == 'new_record' -%}\n , snapshotted_data.{{ columns.dbt_is_deleted }}\n {%- endif %}\n from snapshotted_data\n left join deletes_source_data as source_data\n on {{ unique_key_join_on(strategy.unique_key, \"snapshotted_data\", \"source_data\") }}\n where {{ unique_key_is_null(strategy.unique_key, \"source_data\") }}\n\n {%- if strategy.hard_deletes == 'new_record' %}\n and not (\n --avoid updating the record's valid_to if the latest entry is marked as deleted\n snapshotted_data.{{ columns.dbt_is_deleted }} = 'True'\n and\n {% if config.get('dbt_valid_to_current') -%}\n snapshotted_data.{{ columns.dbt_valid_to }} = {{ config.get('dbt_valid_to_current') }}\n {%- else -%}\n snapshotted_data.{{ columns.dbt_valid_to }} is null\n {%- endif %}\n )\n {%- endif %}\n )\n {%- endif %}\n\n {%- if strategy.hard_deletes == 'new_record' %}\n {% set snapshotted_cols = get_list_of_column_names(get_columns_in_relation(target_relation)) %}\n {% set source_col_names = get_columns_in_query(source_sql) %}\n ,\n deletion_records as (\n\n select\n 'insert' as dbt_change_type,\n {%- for col_name in source_col_names -%}\n {%- if col_name in snapshotted_cols -%}\n snapshotted_data.{{ adapter.quote(col_name) }},\n {%- else -%}\n source_data.{{ adapter.quote(col_name) }},\n {%- endif -%}\n {% endfor -%}\n {%- if strategy.unique_key | is_list -%}\n {%- for key in strategy.unique_key -%}\n snapshotted_data.{{ key }} as dbt_unique_key_{{ loop.index }},\n {% endfor -%}\n {%- else -%}\n snapshotted_data.dbt_unique_key as dbt_unique_key,\n {% endif -%}\n {{ snapshot_get_time() }} as {{ columns.dbt_valid_from }},\n {{ snapshot_get_time() }} as {{ columns.dbt_updated_at }},\n snapshotted_data.{{ columns.dbt_valid_to }} as {{ columns.dbt_valid_to }},\n {{ new_scd_id }} as {{ columns.dbt_scd_id }},\n 'True' as {{ columns.dbt_is_deleted }}\n from snapshotted_data\n left join deletes_source_data as source_data\n on {{ unique_key_join_on(strategy.unique_key, \"snapshotted_data\", \"source_data\") }}\n where {{ unique_key_is_null(strategy.unique_key, \"source_data\") }}\n and not (\n --avoid inserting a new record if the latest one is marked as deleted\n snapshotted_data.{{ columns.dbt_is_deleted }} = 'True'\n and\n {% if config.get('dbt_valid_to_current') -%}\n snapshotted_data.{{ columns.dbt_valid_to }} = {{ config.get('dbt_valid_to_current') }}\n {%- else -%}\n snapshotted_data.{{ columns.dbt_valid_to }} is null\n {%- endif %}\n )\n\n )\n {%- endif %}\n\n select * from insertions\n union all\n select * from updates\n {%- if strategy.hard_deletes == 'invalidate' or strategy.hard_deletes == 'new_record' %}\n union all\n select * from deletes\n {%- endif %}\n {%- if strategy.hard_deletes == 'new_record' %}\n union all\n select * from deletion_records\n {%- endif %}\n\n\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.get_snapshot_table_column_names", "macro.dbt.snapshot_hash_arguments", "macro.dbt.snapshot_get_time", "macro.dbt.unique_key_fields", "macro.dbt.equals", "macro.dbt.get_dbt_valid_to_current", "macro.dbt.unique_key_join_on", "macro.dbt.unique_key_is_null", "macro.dbt.unique_key_is_not_null", "macro.dbt.get_list_of_column_names", "macro.dbt.get_columns_in_relation", "macro.dbt.get_columns_in_query"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "strategy", "type": null, "description": ""}, {"name": "source_sql", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.2300842, "supported_languages": null}, "macro.dbt.build_snapshot_table": {"name": "build_snapshot_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.build_snapshot_table", "macro_sql": "{% macro build_snapshot_table(strategy, sql) -%}\n {{ adapter.dispatch('build_snapshot_table', 'dbt')(strategy, sql) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__build_snapshot_table"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "strategy", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.230189, "supported_languages": null}, "macro.dbt.default__build_snapshot_table": {"name": "default__build_snapshot_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.default__build_snapshot_table", "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 {{ get_dbt_valid_to_current(strategy, columns) }}\n {%- if strategy.hard_deletes == 'new_record' -%}\n , 'False' as {{ columns.dbt_is_deleted }}\n {% endif -%}\n from (\n {{ sql }}\n ) sbq\n\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.get_snapshot_table_column_names", "macro.dbt.get_dbt_valid_to_current"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "strategy", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.230402, "supported_languages": null}, "macro.dbt.build_snapshot_staging_table": {"name": "build_snapshot_staging_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.build_snapshot_staging_table", "macro_sql": "{% macro build_snapshot_staging_table(strategy, sql, target_relation) %}\n {% set temp_relation = make_temp_relation(target_relation) %}\n\n {% set select = snapshot_staging_table(strategy, sql, target_relation) %}\n\n {% call statement('build_snapshot_staging_relation') %}\n {{ create_table_as(True, temp_relation, select) }}\n {% endcall %}\n\n {% do return(temp_relation) %}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.make_temp_relation", "macro.dbt.snapshot_staging_table", "macro.dbt.statement", "macro.dbt.create_table_as"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "strategy", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.230578, "supported_languages": null}, "macro.dbt.get_updated_at_column_data_type": {"name": "get_updated_at_column_data_type", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.get_updated_at_column_data_type", "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 %}", "depends_on": {"macros": ["macro.dbt.get_column_schema_from_query"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "snapshot_sql", "type": null, "description": ""}], "created_at": 1784225035.23084, "supported_languages": null}, "macro.dbt.check_time_data_types": {"name": "check_time_data_types", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.check_time_data_types", "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 %}", "depends_on": {"macros": ["macro.dbt.get_updated_at_column_data_type", "macro.dbt.get_snapshot_get_time_data_type"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.2310138, "supported_languages": null}, "macro.dbt.get_dbt_valid_to_current": {"name": "get_dbt_valid_to_current", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.get_dbt_valid_to_current", "macro_sql": "{% macro get_dbt_valid_to_current(strategy, columns) %}\n {% set dbt_valid_to_current = config.get('dbt_valid_to_current') or \"null\" %}\n coalesce(nullif({{ strategy.updated_at }}, {{ strategy.updated_at }}), {{dbt_valid_to_current}})\n as {{ columns.dbt_valid_to }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "strategy", "type": null, "description": ""}, {"name": "columns", "type": null, "description": ""}], "created_at": 1784225035.2311318, "supported_languages": null}, "macro.dbt.unique_key_fields": {"name": "unique_key_fields", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.unique_key_fields", "macro_sql": "{% macro unique_key_fields(unique_key) %}\n {% if unique_key | is_list %}\n {% for key in unique_key %}\n {{ key }} as dbt_unique_key_{{ loop.index }}\n {%- if not loop.last %} , {%- endif %}\n {% endfor %}\n {% else %}\n {{ unique_key }} as dbt_unique_key\n {% endif %}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "unique_key", "type": null, "description": ""}], "created_at": 1784225035.231342, "supported_languages": null}, "macro.dbt.unique_key_join_on": {"name": "unique_key_join_on", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.unique_key_join_on", "macro_sql": "{% macro unique_key_join_on(unique_key, identifier, from_identifier) %}\n {% if unique_key | is_list %}\n {% for key in unique_key %}\n\t {% set source_unique_key = (identifier ~ \".dbt_unique_key_\" ~ loop.index) | trim %}\n\t {% set target_unique_key = (from_identifier ~ \".dbt_unique_key_\" ~ loop.index) | trim %}\n\t {{ equals(source_unique_key, target_unique_key) }}\n {%- if not loop.last %} and {%- endif %}\n {% endfor %}\n {% else %}\n {{ identifier }}.dbt_unique_key = {{ from_identifier }}.dbt_unique_key\n {% endif %}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.equals"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "unique_key", "type": null, "description": ""}, {"name": "identifier", "type": null, "description": ""}, {"name": "from_identifier", "type": null, "description": ""}], "created_at": 1784225035.2316, "supported_languages": null}, "macro.dbt.unique_key_is_null": {"name": "unique_key_is_null", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.unique_key_is_null", "macro_sql": "{% macro unique_key_is_null(unique_key, identifier) %}\n {% if unique_key | is_list %}\n {{ identifier }}.dbt_unique_key_1 is null\n {% else %}\n {{ identifier }}.dbt_unique_key is null\n {% endif %}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "unique_key", "type": null, "description": ""}, {"name": "identifier", "type": null, "description": ""}], "created_at": 1784225035.231696, "supported_languages": null}, "macro.dbt.unique_key_is_not_null": {"name": "unique_key_is_not_null", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/helpers.sql", "original_file_path": "macros/materializations/snapshots/helpers.sql", "unique_id": "macro.dbt.unique_key_is_not_null", "macro_sql": "{% macro unique_key_is_not_null(unique_key, identifier) %}\n {% if unique_key | is_list %}\n {{ identifier }}.dbt_unique_key_1 is not null\n {% else %}\n {{ identifier }}.dbt_unique_key is not null\n {% endif %}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "unique_key", "type": null, "description": ""}, {"name": "identifier", "type": null, "description": ""}], "created_at": 1784225035.231779, "supported_languages": null}, "macro.dbt.materialization_snapshot_default": {"name": "materialization_snapshot_default", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/snapshots/snapshot.sql", "original_file_path": "macros/materializations/snapshots/snapshot.sql", "unique_id": "macro.dbt.materialization_snapshot_default", "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.assert_valid_snapshot_target_given_strategy(target_relation, columns, strategy) }}\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 remove_columns = ['dbt_change_type', 'DBT_CHANGE_TYPE', 'dbt_unique_key', 'DBT_UNIQUE_KEY'] %}\n {% if unique_key | is_list %}\n {% for key in strategy.unique_key %}\n {{ remove_columns.append('dbt_unique_key_' + loop.index|string) }}\n {{ remove_columns.append('DBT_UNIQUE_KEY_' + loop.index|string) }}\n {% endfor %}\n {% endif %}\n\n {% set missing_columns = adapter.get_missing_columns(staging_table, target_relation)\n | rejectattr('name', 'in', remove_columns)\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', 'in', remove_columns)\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 %}", "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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "supported_languages", "type": null, "description": ""}], "created_at": 1784225035.233463, "supported_languages": ["sql"]}, "macro.dbt.materialization_test_default": {"name": "materialization_test_default", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/tests/test.sql", "original_file_path": "macros/materializations/tests/test.sql", "unique_id": "macro.dbt.materialization_test_default", "macro_sql": "{%- materialization test, default -%}\n\n {% set relations = [] %}\n {% set limit = config.get('limit') %}\n {% set sql_header = config.get('sql_header') if flags.REQUIRE_SQL_HEADER_IN_TEST_CONFIGS else none %}\n\n {% set sql_with_limit %}\n {{ get_limit_subquery_sql(sql, limit) }}\n {% endset %}\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 {% if sql_header %}{{ sql_header }}{% endif %}\n {{ get_create_sql(target_relation, sql_with_limit) }}\n {% endcall %}\n\n {% do relations.append(target_relation) %}\n\n {# Since the test failures have already been saved to the database, reuse that result rather than querying again #}\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_with_limit %}\n\n {% endif %}\n\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 {% if sql_header %}{{ sql_header }}{% endif %}\n {# The limit has already been included above, and we do not want to duplicate it again. We also want to be safe for macro overrides treating `limit` as a required parameter. #}\n {{ get_test_sql(main_sql, fail_calc, warn_if, error_if, limit=none)}}\n\n {%- endcall %}\n\n {{ return({'relations': relations}) }}\n\n{%- endmaterialization -%}", "depends_on": {"macros": ["macro.dbt.get_limit_subquery_sql", "macro.dbt.should_store_failures", "macro.dbt.statement", "macro.dbt.get_create_sql", "macro.dbt.get_test_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "supported_languages", "type": null, "description": ""}], "created_at": 1784225035.2344708, "supported_languages": ["sql"]}, "macro.dbt.get_test_sql": {"name": "get_test_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/tests/helpers.sql", "original_file_path": "macros/materializations/tests/helpers.sql", "unique_id": "macro.dbt.get_test_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_test_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "main_sql", "type": null, "description": ""}, {"name": "fail_calc", "type": null, "description": ""}, {"name": "warn_if", "type": null, "description": ""}, {"name": "error_if", "type": null, "description": ""}, {"name": "limit", "type": null, "description": ""}], "created_at": 1784225035.234706, "supported_languages": null}, "macro.dbt.default__get_test_sql": {"name": "default__get_test_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/tests/helpers.sql", "original_file_path": "macros/materializations/tests/helpers.sql", "unique_id": "macro.dbt.default__get_test_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "main_sql", "type": null, "description": ""}, {"name": "fail_calc", "type": null, "description": ""}, {"name": "warn_if", "type": null, "description": ""}, {"name": "error_if", "type": null, "description": ""}, {"name": "limit", "type": null, "description": ""}], "created_at": 1784225035.234825, "supported_languages": null}, "macro.dbt.get_unit_test_sql": {"name": "get_unit_test_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/tests/helpers.sql", "original_file_path": "macros/materializations/tests/helpers.sql", "unique_id": "macro.dbt.get_unit_test_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_unit_test_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "main_sql", "type": null, "description": ""}, {"name": "expected_fixture_sql", "type": null, "description": ""}, {"name": "expected_column_names", "type": null, "description": ""}], "created_at": 1784225035.234905, "supported_languages": null}, "macro.dbt.default__get_unit_test_sql": {"name": "default__get_unit_test_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/tests/helpers.sql", "original_file_path": "macros/materializations/tests/helpers.sql", "unique_id": "macro.dbt.default__get_unit_test_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.string_literal"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "main_sql", "type": null, "description": ""}, {"name": "expected_fixture_sql", "type": null, "description": ""}, {"name": "expected_column_names", "type": null, "description": ""}], "created_at": 1784225035.235138, "supported_languages": null}, "macro.dbt.get_where_subquery": {"name": "get_where_subquery", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/tests/where_subquery.sql", "original_file_path": "macros/materializations/tests/where_subquery.sql", "unique_id": "macro.dbt.get_where_subquery", "macro_sql": "{% macro get_where_subquery(relation) -%}\n {% do return(adapter.dispatch('get_where_subquery', 'dbt')(relation)) %}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_where_subquery"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.235272, "supported_languages": null}, "macro.dbt.default__get_where_subquery": {"name": "default__get_where_subquery", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/tests/where_subquery.sql", "original_file_path": "macros/materializations/tests/where_subquery.sql", "unique_id": "macro.dbt.default__get_where_subquery", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.2354162, "supported_languages": null}, "macro.dbt.materialization_unit_default": {"name": "materialization_unit_default", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/tests/unit.sql", "original_file_path": "macros/materializations/tests/unit.sql", "unique_id": "macro.dbt.materialization_unit_default", "macro_sql": "{%- materialization unit, default -%}\n\n {% set relations = [] %}\n {% set sql_header = config.get('sql_header') if flags.REQUIRE_SQL_HEADER_IN_TEST_CONFIGS else none %}\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 {%- set column_name_to_quoted = {} -%}\n {%- for column in columns_in_relation -%}\n {%- do column_name_to_data_types.update({column.name|lower: column.data_type}) -%}\n {%- do column_name_to_quoted.update({column.name|lower: column.quoted}) -%}\n {%- endfor -%}\n\n {%- set expected_column_names_quoted = [] -%}\n {%- for column_name in tested_expected_column_names -%}\n {%- do expected_column_names_quoted.append(column_name_to_quoted[column_name|lower]) -%}\n {%- endfor -%}\n\n {% if not expected_sql %}\n {% set expected_sql = get_expected_sql(expected_rows, column_name_to_data_types, column_name_to_quoted) %}\n {% endif %}\n {% set unit_test_sql = get_unit_test_sql(sql, expected_sql, expected_column_names_quoted) %}\n\n {% call statement('main', fetch_result=True) -%}\n\n {% if sql_header %}{{ sql_header }}{% endif %}\n {{ unit_test_sql }}\n\n {%- endcall %}\n\n {% do adapter.drop_relation(temp_relation) %}\n\n {{ return({'relations': relations}) }}\n\n{%- endmaterialization -%}", "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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "supported_languages", "type": null, "description": ""}], "created_at": 1784225035.236189, "supported_languages": ["sql"]}, "macro.dbt.materialization_materialized_view_default": {"name": "materialization_materialized_view_default", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/materialized_view.sql", "original_file_path": "macros/materializations/models/materialized_view.sql", "unique_id": "macro.dbt.materialization_materialized_view_default", "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 %}", "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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "supported_languages", "type": null, "description": ""}], "created_at": 1784225035.23681, "supported_languages": ["sql"]}, "macro.dbt.materialized_view_setup": {"name": "materialized_view_setup", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/materialized_view.sql", "original_file_path": "macros/materializations/models/materialized_view.sql", "unique_id": "macro.dbt.materialized_view_setup", "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 %}", "depends_on": {"macros": ["macro.dbt.load_cached_relation", "macro.dbt.drop_relation_if_exists", "macro.dbt.run_hooks"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "backup_relation", "type": null, "description": ""}, {"name": "intermediate_relation", "type": null, "description": ""}, {"name": "pre_hooks", "type": null, "description": ""}], "created_at": 1784225035.2369611, "supported_languages": null}, "macro.dbt.materialized_view_teardown": {"name": "materialized_view_teardown", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/materialized_view.sql", "original_file_path": "macros/materializations/models/materialized_view.sql", "unique_id": "macro.dbt.materialized_view_teardown", "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 %}", "depends_on": {"macros": ["macro.dbt.drop_relation_if_exists", "macro.dbt.run_hooks"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "backup_relation", "type": null, "description": ""}, {"name": "intermediate_relation", "type": null, "description": ""}, {"name": "post_hooks", "type": null, "description": ""}], "created_at": 1784225035.237083, "supported_languages": null}, "macro.dbt.materialized_view_get_build_sql": {"name": "materialized_view_get_build_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/materialized_view.sql", "original_file_path": "macros/materializations/models/materialized_view.sql", "unique_id": "macro.dbt.materialized_view_get_build_sql", "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 %}", "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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "existing_relation", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}, {"name": "backup_relation", "type": null, "description": ""}, {"name": "intermediate_relation", "type": null, "description": ""}], "created_at": 1784225035.237568, "supported_languages": null}, "macro.dbt.materialized_view_execute_no_op": {"name": "materialized_view_execute_no_op", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/materialized_view.sql", "original_file_path": "macros/materializations/models/materialized_view.sql", "unique_id": "macro.dbt.materialized_view_execute_no_op", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.237663, "supported_languages": null}, "macro.dbt.materialized_view_execute_build_sql": {"name": "materialized_view_execute_build_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/materialized_view.sql", "original_file_path": "macros/materializations/models/materialized_view.sql", "unique_id": "macro.dbt.materialized_view_execute_build_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.run_hooks", "macro.dbt.statement", "macro.dbt.should_revoke", "macro.dbt.apply_grants", "macro.dbt.persist_docs"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "build_sql", "type": null, "description": ""}, {"name": "existing_relation", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}, {"name": "post_hooks", "type": null, "description": ""}], "created_at": 1784225035.237908, "supported_languages": null}, "macro.dbt.materialization_view_default": {"name": "materialization_view_default", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/view.sql", "original_file_path": "macros/materializations/models/view.sql", "unique_id": "macro.dbt.materialization_view_default", "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 -%}", "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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "supported_languages", "type": null, "description": ""}], "created_at": 1784225035.238715, "supported_languages": ["sql"]}, "macro.dbt.materialization_table_default": {"name": "materialization_table_default", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/table.sql", "original_file_path": "macros/materializations/models/table.sql", "unique_id": "macro.dbt.materialization_table_default", "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 {% do create_indexes(intermediate_relation) %}\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 {{ 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 %}", "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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "supported_languages", "type": null, "description": ""}], "created_at": 1784225035.2395608, "supported_languages": ["sql"]}, "macro.dbt.get_quoted_csv": {"name": "get_quoted_csv", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/column_helpers.sql", "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", "unique_id": "macro.dbt.get_quoted_csv", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "column_names", "type": null, "description": ""}], "created_at": 1784225035.239943, "supported_languages": null}, "macro.dbt.diff_columns": {"name": "diff_columns", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/column_helpers.sql", "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", "unique_id": "macro.dbt.diff_columns", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source_columns", "type": null, "description": ""}, {"name": "target_columns", "type": null, "description": ""}], "created_at": 1784225035.240166, "supported_languages": null}, "macro.dbt.diff_column_data_types": {"name": "diff_column_data_types", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/column_helpers.sql", "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", "unique_id": "macro.dbt.diff_column_data_types", "macro_sql": "{% macro diff_column_data_types(source_columns, target_columns) %}\n {{ return(adapter.dispatch('diff_column_data_types', 'dbt')(source_columns, target_columns)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__diff_column_data_types"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source_columns", "type": null, "description": ""}, {"name": "target_columns", "type": null, "description": ""}], "created_at": 1784225035.240252, "supported_languages": null}, "macro.dbt.default__diff_column_data_types": {"name": "default__diff_column_data_types", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/column_helpers.sql", "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", "unique_id": "macro.dbt.default__diff_column_data_types", "macro_sql": "{% macro default__diff_column_data_types(source_columns, target_columns) %}\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.expanded_data_type != tc.expanded_data_type and not sc.can_expand_to(other_column=tc) %}\n {{ result.append( { 'column_name': tc.name, 'new_type': sc.expanded_data_type } ) }}\n {% endif %}\n {% endif %}\n {% endfor %}\n\n {{ return(result) }}\n\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source_columns", "type": null, "description": ""}, {"name": "target_columns", "type": null, "description": ""}], "created_at": 1784225035.240507, "supported_languages": null}, "macro.dbt.get_merge_update_columns": {"name": "get_merge_update_columns", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/column_helpers.sql", "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", "unique_id": "macro.dbt.get_merge_update_columns", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_merge_update_columns"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "merge_update_columns", "type": null, "description": ""}, {"name": "merge_exclude_columns", "type": null, "description": ""}, {"name": "dest_columns", "type": null, "description": ""}], "created_at": 1784225035.2406049, "supported_languages": null}, "macro.dbt.default__get_merge_update_columns": {"name": "default__get_merge_update_columns", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/column_helpers.sql", "original_file_path": "macros/materializations/models/incremental/column_helpers.sql", "unique_id": "macro.dbt.default__get_merge_update_columns", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "merge_update_columns", "type": null, "description": ""}, {"name": "merge_exclude_columns", "type": null, "description": ""}, {"name": "dest_columns", "type": null, "description": ""}], "created_at": 1784225035.240895, "supported_languages": null}, "macro.dbt.get_merge_sql": {"name": "get_merge_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/merge.sql", "original_file_path": "macros/materializations/models/incremental/merge.sql", "unique_id": "macro.dbt.get_merge_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_merge_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target", "type": null, "description": ""}, {"name": "source", "type": null, "description": ""}, {"name": "unique_key", "type": null, "description": ""}, {"name": "dest_columns", "type": null, "description": ""}, {"name": "incremental_predicates", "type": null, "description": ""}], "created_at": 1784225035.241386, "supported_languages": null}, "macro.dbt.get_merge_unique_key_match": {"name": "get_merge_unique_key_match", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/merge.sql", "original_file_path": "macros/materializations/models/incremental/merge.sql", "unique_id": "macro.dbt.get_merge_unique_key_match", "macro_sql": "{% macro get_merge_unique_key_match(source_unique_key, target_unique_key) %}\n {{ return(adapter.dispatch('get_merge_unique_key_match', 'dbt')(source_unique_key, target_unique_key)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_merge_unique_key_match"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source_unique_key", "type": null, "description": ""}, {"name": "target_unique_key", "type": null, "description": ""}], "created_at": 1784225035.241468, "supported_languages": null}, "macro.dbt.default__get_merge_unique_key_match": {"name": "default__get_merge_unique_key_match", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/merge.sql", "original_file_path": "macros/materializations/models/incremental/merge.sql", "unique_id": "macro.dbt.default__get_merge_unique_key_match", "macro_sql": "{% macro default__get_merge_unique_key_match(source_unique_key, target_unique_key) -%}\n {{ return(equals(source_unique_key, target_unique_key) | trim) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.equals"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source_unique_key", "type": null, "description": ""}, {"name": "target_unique_key", "type": null, "description": ""}], "created_at": 1784225035.241533, "supported_languages": null}, "macro.dbt.default__get_merge_sql": {"name": "default__get_merge_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/merge.sql", "original_file_path": "macros/materializations/models/incremental/merge.sql", "unique_id": "macro.dbt.default__get_merge_sql", "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 source_unique_key = (\"DBT_INTERNAL_SOURCE.\" ~ unique_key) | trim %}\n {% set target_unique_key = (\"DBT_INTERNAL_DEST.\" ~ unique_key) | trim %}\n {% set unique_key_match = get_merge_unique_key_match(source_unique_key, target_unique_key) %}\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 %}", "depends_on": {"macros": ["macro.dbt.get_quoted_csv", "macro.dbt.get_merge_update_columns", "macro.dbt.get_merge_unique_key_match"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target", "type": null, "description": ""}, {"name": "source", "type": null, "description": ""}, {"name": "unique_key", "type": null, "description": ""}, {"name": "dest_columns", "type": null, "description": ""}, {"name": "incremental_predicates", "type": null, "description": ""}], "created_at": 1784225035.242184, "supported_languages": null}, "macro.dbt.get_delete_insert_merge_sql": {"name": "get_delete_insert_merge_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/merge.sql", "original_file_path": "macros/materializations/models/incremental/merge.sql", "unique_id": "macro.dbt.get_delete_insert_merge_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_delete_insert_merge_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target", "type": null, "description": ""}, {"name": "source", "type": null, "description": ""}, {"name": "unique_key", "type": null, "description": ""}, {"name": "dest_columns", "type": null, "description": ""}, {"name": "incremental_predicates", "type": null, "description": ""}], "created_at": 1784225035.2422888, "supported_languages": null}, "macro.dbt.default__get_delete_insert_merge_sql": {"name": "default__get_delete_insert_merge_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/merge.sql", "original_file_path": "macros/materializations/models/incremental/merge.sql", "unique_id": "macro.dbt.default__get_delete_insert_merge_sql", "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 string %}\n {% set unique_key = [unique_key] %}\n {% endif %}\n\n {%- set unique_key_str = unique_key|join(', ') -%}\n\n delete from {{ target }} as DBT_INTERNAL_DEST\n where ({{ unique_key_str }}) in (\n select distinct {{ unique_key_str }}\n from {{ source }} as DBT_INTERNAL_SOURCE\n )\n {%- if incremental_predicates %}\n {% for predicate in incremental_predicates %}\n and {{ predicate }}\n {% endfor %}\n {%- endif -%};\n\n {% endif %}\n\n insert into {{ target }} ({{ dest_cols_csv }})\n (\n select {{ dest_cols_csv }}\n from {{ source }}\n )\n\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.get_quoted_csv"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target", "type": null, "description": ""}, {"name": "source", "type": null, "description": ""}, {"name": "unique_key", "type": null, "description": ""}, {"name": "dest_columns", "type": null, "description": ""}, {"name": "incremental_predicates", "type": null, "description": ""}], "created_at": 1784225035.242562, "supported_languages": null}, "macro.dbt.get_insert_overwrite_merge_sql": {"name": "get_insert_overwrite_merge_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/merge.sql", "original_file_path": "macros/materializations/models/incremental/merge.sql", "unique_id": "macro.dbt.get_insert_overwrite_merge_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_insert_overwrite_merge_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target", "type": null, "description": ""}, {"name": "source", "type": null, "description": ""}, {"name": "dest_columns", "type": null, "description": ""}, {"name": "predicates", "type": null, "description": ""}, {"name": "include_sql_header", "type": null, "description": ""}], "created_at": 1784225035.242666, "supported_languages": null}, "macro.dbt.default__get_insert_overwrite_merge_sql": {"name": "default__get_insert_overwrite_merge_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/merge.sql", "original_file_path": "macros/materializations/models/incremental/merge.sql", "unique_id": "macro.dbt.default__get_insert_overwrite_merge_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_quoted_csv"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target", "type": null, "description": ""}, {"name": "source", "type": null, "description": ""}, {"name": "dest_columns", "type": null, "description": ""}, {"name": "predicates", "type": null, "description": ""}, {"name": "include_sql_header", "type": null, "description": ""}], "created_at": 1784225035.242919, "supported_languages": null}, "macro.dbt.is_incremental": {"name": "is_incremental", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/is_incremental.sql", "original_file_path": "macros/materializations/models/incremental/is_incremental.sql", "unique_id": "macro.dbt.is_incremental", "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 %}", "depends_on": {"macros": ["macro.dbt.should_full_refresh"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2431629, "supported_languages": null}, "macro.dbt.get_incremental_append_sql": {"name": "get_incremental_append_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.get_incremental_append_sql", "macro_sql": "{% macro get_incremental_append_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_append_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_incremental_append_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.2434292, "supported_languages": null}, "macro.dbt.default__get_incremental_append_sql": {"name": "default__get_incremental_append_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.default__get_incremental_append_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_insert_into_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.24352, "supported_languages": null}, "macro.dbt.get_incremental_delete_insert_sql": {"name": "get_incremental_delete_insert_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.get_incremental_delete_insert_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_incremental_delete_insert_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.2435899, "supported_languages": null}, "macro.dbt.default__get_incremental_delete_insert_sql": {"name": "default__get_incremental_delete_insert_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.default__get_incremental_delete_insert_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_delete_insert_merge_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.243697, "supported_languages": null}, "macro.dbt.get_incremental_merge_sql": {"name": "get_incremental_merge_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.get_incremental_merge_sql", "macro_sql": "{% macro get_incremental_merge_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_merge_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_incremental_merge_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.243812, "supported_languages": null}, "macro.dbt.default__get_incremental_merge_sql": {"name": "default__get_incremental_merge_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.default__get_incremental_merge_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_merge_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.243924, "supported_languages": null}, "macro.dbt.get_incremental_insert_overwrite_sql": {"name": "get_incremental_insert_overwrite_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.get_incremental_insert_overwrite_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_incremental_insert_overwrite_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.243996, "supported_languages": null}, "macro.dbt.default__get_incremental_insert_overwrite_sql": {"name": "default__get_incremental_insert_overwrite_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.default__get_incremental_insert_overwrite_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_insert_overwrite_merge_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.244092, "supported_languages": null}, "macro.dbt.get_incremental_default_sql": {"name": "get_incremental_default_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.get_incremental_default_sql", "macro_sql": "{% macro get_incremental_default_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_default_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_incremental_default_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.244164, "supported_languages": null}, "macro.dbt.default__get_incremental_default_sql": {"name": "default__get_incremental_default_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.default__get_incremental_default_sql", "macro_sql": "{% macro default__get_incremental_default_sql(arg_dict) %}\n\n {% do return(get_incremental_append_sql(arg_dict)) %}\n\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.get_incremental_append_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.244222, "supported_languages": null}, "macro.dbt.get_incremental_microbatch_sql": {"name": "get_incremental_microbatch_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.get_incremental_microbatch_sql", "macro_sql": "{% macro get_incremental_microbatch_sql(arg_dict) %}\n\n {{ return(adapter.dispatch('get_incremental_microbatch_sql', 'dbt')(arg_dict)) }}\n\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_incremental_microbatch_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.244291, "supported_languages": null}, "macro.dbt.default__get_incremental_microbatch_sql": {"name": "default__get_incremental_microbatch_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.default__get_incremental_microbatch_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "arg_dict", "type": null, "description": ""}], "created_at": 1784225035.2443562, "supported_languages": null}, "macro.dbt.get_insert_into_sql": {"name": "get_insert_into_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/strategies.sql", "original_file_path": "macros/materializations/models/incremental/strategies.sql", "unique_id": "macro.dbt.get_insert_into_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_quoted_csv"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target_relation", "type": null, "description": ""}, {"name": "temp_relation", "type": null, "description": ""}, {"name": "dest_columns", "type": null, "description": ""}], "created_at": 1784225035.244462, "supported_languages": null}, "macro.dbt.materialization_incremental_default": {"name": "materialization_incremental_default", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/incremental.sql", "original_file_path": "macros/materializations/models/incremental/incremental.sql", "unique_id": "macro.dbt.materialization_incremental_default", "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 {% set incremental_strategy = config.get('incremental_strategy') or 'default' %}\n {% set strategy_sql_macro_func = adapter.get_incremental_strategy_macro(context, incremental_strategy) %}\n\n {% if existing_relation is none %}\n {% set build_sql = get_create_table_as_sql(False, target_relation, sql) %}\n {% set relation_for_indexes = target_relation %}\n {% elif full_refresh_mode %}\n {% set build_sql = get_create_table_as_sql(False, intermediate_relation, sql) %}\n {% set relation_for_indexes = intermediate_relation %}\n {% set need_swap = true %}\n {% else %}\n {% do run_query(get_create_table_as_sql(True, temp_relation, sql)) %}\n {% set relation_for_indexes = temp_relation %}\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_predicates = config.get('predicates', none) or config.get('incremental_predicates', none) %}\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 existing_relation is none or existing_relation.is_view or should_full_refresh() %}\n {% do create_indexes(relation_for_indexes) %}\n {% endif %}\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 {{ 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 %}", "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.create_indexes", "macro.dbt.should_revoke", "macro.dbt.apply_grants", "macro.dbt.persist_docs"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "supported_languages", "type": null, "description": ""}], "created_at": 1784225035.246111, "supported_languages": ["sql"]}, "macro.dbt.incremental_validate_on_schema_change": {"name": "incremental_validate_on_schema_change", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/on_schema_change.sql", "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", "unique_id": "macro.dbt.incremental_validate_on_schema_change", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "on_schema_change", "type": null, "description": ""}, {"name": "default", "type": null, "description": ""}], "created_at": 1784225035.246672, "supported_languages": null}, "macro.dbt.check_for_schema_changes": {"name": "check_for_schema_changes", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/on_schema_change.sql", "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", "unique_id": "macro.dbt.check_for_schema_changes", "macro_sql": "{% macro check_for_schema_changes(source_relation, target_relation) %}\n {{ return(adapter.dispatch('check_for_schema_changes', 'dbt')(source_relation, target_relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__check_for_schema_changes"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source_relation", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.246758, "supported_languages": null}, "macro.dbt.default__check_for_schema_changes": {"name": "default__check_for_schema_changes", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/on_schema_change.sql", "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", "unique_id": "macro.dbt.default__check_for_schema_changes", "macro_sql": "{% macro default__check_for_schema_changes(source_relation, target_relation) %}\n\n {% set schema_changed = False %}\n\n {%- set source_columns = adapter.get_columns_in_relation(source_relation) -%}\n {%- set target_columns = adapter.get_columns_in_relation(target_relation) -%}\n {%- set source_not_in_target = diff_columns(source_columns, target_columns) -%}\n {%- set target_not_in_source = diff_columns(target_columns, source_columns) -%}\n\n {% set new_target_types = diff_column_data_types(source_columns, target_columns) %}\n\n {% if source_not_in_target != [] %}\n {% set schema_changed = True %}\n {% elif target_not_in_source != [] or new_target_types != [] %}\n {% set schema_changed = True %}\n {% elif new_target_types != [] %}\n {% set schema_changed = True %}\n {% endif %}\n\n {% set changes_dict = {\n 'schema_changed': schema_changed,\n 'source_not_in_target': source_not_in_target,\n 'target_not_in_source': target_not_in_source,\n 'source_columns': source_columns,\n 'target_columns': target_columns,\n 'new_target_types': new_target_types\n } %}\n\n {% set msg %}\n In {{ target_relation }}:\n Schema changed: {{ schema_changed }}\n Source columns not in target: {{ source_not_in_target }}\n Target columns not in source: {{ target_not_in_source }}\n New column types: {{ new_target_types }}\n {% endset %}\n\n {% do log(msg) %}\n\n {{ return(changes_dict) }}\n\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.diff_columns", "macro.dbt.diff_column_data_types"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source_relation", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.247231, "supported_languages": null}, "macro.dbt.sync_column_schemas": {"name": "sync_column_schemas", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/on_schema_change.sql", "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", "unique_id": "macro.dbt.sync_column_schemas", "macro_sql": "{% macro sync_column_schemas(on_schema_change, target_relation, schema_changes_dict) %}\n {{ return(adapter.dispatch('sync_column_schemas', 'dbt')(on_schema_change, target_relation, schema_changes_dict)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__sync_column_schemas"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "on_schema_change", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}, {"name": "schema_changes_dict", "type": null, "description": ""}], "created_at": 1784225035.247332, "supported_languages": null}, "macro.dbt.default__sync_column_schemas": {"name": "default__sync_column_schemas", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/on_schema_change.sql", "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", "unique_id": "macro.dbt.default__sync_column_schemas", "macro_sql": "{% macro default__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 {%- 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 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\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 %}", "depends_on": {"macros": ["macro.dbt.alter_relation_add_remove_columns", "macro.dbt.alter_column_type"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "on_schema_change", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}, {"name": "schema_changes_dict", "type": null, "description": ""}], "created_at": 1784225035.2477949, "supported_languages": null}, "macro.dbt.process_schema_changes": {"name": "process_schema_changes", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/on_schema_change.sql", "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", "unique_id": "macro.dbt.process_schema_changes", "macro_sql": "{% macro process_schema_changes(on_schema_change, source_relation, target_relation) %}\n {{ return(adapter.dispatch('process_schema_changes', 'dbt')(on_schema_change, source_relation, target_relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__process_schema_changes"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "on_schema_change", "type": null, "description": ""}, {"name": "source_relation", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.247891, "supported_languages": null}, "macro.dbt.default__process_schema_changes": {"name": "default__process_schema_changes", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/incremental/on_schema_change.sql", "original_file_path": "macros/materializations/models/incremental/on_schema_change.sql", "unique_id": "macro.dbt.default__process_schema_changes", "macro_sql": "{% macro default__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 %}", "depends_on": {"macros": ["macro.dbt.check_for_schema_changes", "macro.dbt.sync_column_schemas"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "on_schema_change", "type": null, "description": ""}, {"name": "source_relation", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.2482262, "supported_languages": null}, "macro.dbt.can_clone_table": {"name": "can_clone_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/clone/can_clone_table.sql", "original_file_path": "macros/materializations/models/clone/can_clone_table.sql", "unique_id": "macro.dbt.can_clone_table", "macro_sql": "{% macro can_clone_table() %}\n {{ return(adapter.dispatch('can_clone_table', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__can_clone_table"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2483351, "supported_languages": null}, "macro.dbt.default__can_clone_table": {"name": "default__can_clone_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/clone/can_clone_table.sql", "original_file_path": "macros/materializations/models/clone/can_clone_table.sql", "unique_id": "macro.dbt.default__can_clone_table", "macro_sql": "{% macro default__can_clone_table() %}\n {{ return(False) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.248387, "supported_languages": null}, "macro.dbt.create_or_replace_clone": {"name": "create_or_replace_clone", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/clone/create_or_replace_clone.sql", "original_file_path": "macros/materializations/models/clone/create_or_replace_clone.sql", "unique_id": "macro.dbt.create_or_replace_clone", "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 %}", "depends_on": {"macros": ["macro.dbt.default__create_or_replace_clone"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "this_relation", "type": null, "description": ""}, {"name": "defer_relation", "type": null, "description": ""}], "created_at": 1784225035.248508, "supported_languages": null}, "macro.dbt.default__create_or_replace_clone": {"name": "default__create_or_replace_clone", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/clone/create_or_replace_clone.sql", "original_file_path": "macros/materializations/models/clone/create_or_replace_clone.sql", "unique_id": "macro.dbt.default__create_or_replace_clone", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "this_relation", "type": null, "description": ""}, {"name": "defer_relation", "type": null, "description": ""}], "created_at": 1784225035.2485812, "supported_languages": null}, "macro.dbt.materialization_clone_default": {"name": "materialization_clone_default", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/models/clone/clone.sql", "original_file_path": "macros/materializations/models/clone/clone.sql", "unique_id": "macro.dbt.materialization_clone_default", "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 {%- set grant_config = config.get('grants') -%}\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 {% if target_relation.database == defer_relation.database and\n target_relation.schema == defer_relation.schema and\n target_relation.identifier == defer_relation.identifier %}\n {{ log(\"Target relation and defer relation are the same, skipping clone for relation: \" ~ target_relation.render()) }}\n {% else %}\n {% call statement('main') %}\n {{ create_or_replace_clone(target_relation, defer_relation) }}\n {% endcall %}\n {% endif %}\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 -%}", "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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "supported_languages", "type": null, "description": ""}], "created_at": 1784225035.2496881, "supported_languages": ["sql"]}, "macro.dbt.materialization_seed_default": {"name": "materialization_seed_default", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/seed.sql", "original_file_path": "macros/materializations/seeds/seed.sql", "unique_id": "macro.dbt.materialization_seed_default", "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 = \"\" %}\n {% if rows_affected > 0 %}\n {% set sql = load_csv_rows(model, agate_table) %}\n {% endif %}\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 %}", "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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "supported_languages", "type": null, "description": ""}], "created_at": 1784225035.250761, "supported_languages": ["sql"]}, "macro.dbt.create_csv_table": {"name": "create_csv_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.create_csv_table", "macro_sql": "{% macro create_csv_table(model, agate_table) -%}\n {{ adapter.dispatch('create_csv_table', 'dbt')(model, agate_table) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__create_csv_table"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}, {"name": "agate_table", "type": null, "description": ""}], "created_at": 1784225035.251154, "supported_languages": null}, "macro.dbt.default__create_csv_table": {"name": "default__create_csv_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.default__create_csv_table", "macro_sql": "{% macro default__create_csv_table(model, agate_table) %}\n {%- set column_override = model['config'].get('column_types', {}) -%}\n {%- set quote_seed_column = model['config'].get('quote_columns', None) -%}\n\n {% set sql %}\n create table {{ this.render() }} (\n {%- for col_name in agate_table.column_names -%}\n {%- set inferred_type = adapter.convert_type(agate_table, loop.index0) -%}\n {%- set type = column_override.get(col_name, inferred_type) -%}\n {%- set column_name = (col_name | string) -%}\n {{ adapter.quote_seed_column(column_name, quote_seed_column) }} {{ type }} {%- if not loop.last -%}, {%- endif -%}\n {%- endfor -%}\n )\n {% endset %}\n\n {% call statement('_') -%}\n {{ sql }}\n {%- endcall %}\n\n {{ return(sql) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}, {"name": "agate_table", "type": null, "description": ""}], "created_at": 1784225035.251488, "supported_languages": null}, "macro.dbt.reset_csv_table": {"name": "reset_csv_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.reset_csv_table", "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 %}", "depends_on": {"macros": ["macro.dbt.default__reset_csv_table"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}, {"name": "full_refresh", "type": null, "description": ""}, {"name": "old_relation", "type": null, "description": ""}, {"name": "agate_table", "type": null, "description": ""}], "created_at": 1784225035.2515788, "supported_languages": null}, "macro.dbt.default__reset_csv_table": {"name": "default__reset_csv_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.default__reset_csv_table", "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 %}", "depends_on": {"macros": ["macro.dbt.create_csv_table"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}, {"name": "full_refresh", "type": null, "description": ""}, {"name": "old_relation", "type": null, "description": ""}, {"name": "agate_table", "type": null, "description": ""}], "created_at": 1784225035.2517602, "supported_languages": null}, "macro.dbt.get_csv_sql": {"name": "get_csv_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.get_csv_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_csv_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "create_or_truncate_sql", "type": null, "description": ""}, {"name": "insert_sql", "type": null, "description": ""}], "created_at": 1784225035.2518358, "supported_languages": null}, "macro.dbt.default__get_csv_sql": {"name": "default__get_csv_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.default__get_csv_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "create_or_truncate_sql", "type": null, "description": ""}, {"name": "insert_sql", "type": null, "description": ""}], "created_at": 1784225035.25189, "supported_languages": null}, "macro.dbt.get_binding_char": {"name": "get_binding_char", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.get_binding_char", "macro_sql": "{% macro get_binding_char() -%}\n {{ adapter.dispatch('get_binding_char', 'dbt')() }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_binding_char"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2519438, "supported_languages": null}, "macro.dbt.default__get_binding_char": {"name": "default__get_binding_char", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.default__get_binding_char", "macro_sql": "{% macro default__get_binding_char() %}\n {{ return('%s') }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.252042, "supported_languages": null}, "macro.dbt.get_batch_size": {"name": "get_batch_size", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.get_batch_size", "macro_sql": "{% macro get_batch_size() -%}\n {{ return(adapter.dispatch('get_batch_size', 'dbt')()) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_batch_size"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2521029, "supported_languages": null}, "macro.dbt.default__get_batch_size": {"name": "default__get_batch_size", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.default__get_batch_size", "macro_sql": "{% macro default__get_batch_size() %}\n {{ return(10000) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.252149, "supported_languages": null}, "macro.dbt.get_seed_column_quoted_csv": {"name": "get_seed_column_quoted_csv", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.get_seed_column_quoted_csv", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}, {"name": "column_names", "type": null, "description": ""}], "created_at": 1784225035.252327, "supported_languages": null}, "macro.dbt.load_csv_rows": {"name": "load_csv_rows", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.load_csv_rows", "macro_sql": "{% macro load_csv_rows(model, agate_table) -%}\n {{ adapter.dispatch('load_csv_rows', 'dbt')(model, agate_table) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__load_csv_rows"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}, {"name": "agate_table", "type": null, "description": ""}], "created_at": 1784225035.2524009, "supported_languages": null}, "macro.dbt.default__load_csv_rows": {"name": "default__load_csv_rows", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/seeds/helpers.sql", "original_file_path": "macros/materializations/seeds/helpers.sql", "unique_id": "macro.dbt.default__load_csv_rows", "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 %}", "depends_on": {"macros": ["macro.dbt.get_batch_size", "macro.dbt.get_seed_column_quoted_csv", "macro.dbt.get_binding_char"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}, {"name": "agate_table", "type": null, "description": ""}], "created_at": 1784225035.2528582, "supported_languages": null}, "macro.dbt.scalar_function_sql": {"name": "scalar_function_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.scalar_function_sql", "macro_sql": "{% macro scalar_function_sql(target_relation) %}\n {{ return(adapter.dispatch('scalar_function_sql', 'dbt')(target_relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__scalar_function_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.253196, "supported_languages": null}, "macro.dbt.default__scalar_function_sql": {"name": "default__scalar_function_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.default__scalar_function_sql", "macro_sql": "{% macro default__scalar_function_sql(target_relation) %}\n {{ scalar_function_create_replace_signature_sql(target_relation) }}\n {{ scalar_function_body_sql() }};\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.scalar_function_create_replace_signature_sql", "macro.dbt.scalar_function_body_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.253268, "supported_languages": null}, "macro.dbt.scalar_function_create_replace_signature_sql": {"name": "scalar_function_create_replace_signature_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.scalar_function_create_replace_signature_sql", "macro_sql": "{% macro scalar_function_create_replace_signature_sql(target_relation) %}\n {{ return(adapter.dispatch('scalar_function_create_replace_signature_sql', 'dbt')(target_relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__scalar_function_create_replace_signature_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.253338, "supported_languages": null}, "macro.dbt.default__scalar_function_create_replace_signature_sql": {"name": "default__scalar_function_create_replace_signature_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.default__scalar_function_create_replace_signature_sql", "macro_sql": "{% macro default__scalar_function_create_replace_signature_sql(target_relation) %}\n CREATE OR REPLACE FUNCTION {{ target_relation.render() }} ({{ formatted_scalar_function_args_sql()}})\n RETURNS {{ model.returns.data_type }}\n {{ scalar_function_volatility_sql() }}\n AS\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.formatted_scalar_function_args_sql", "macro.dbt.scalar_function_volatility_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.253428, "supported_languages": null}, "macro.dbt.formatted_scalar_function_args_sql": {"name": "formatted_scalar_function_args_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.formatted_scalar_function_args_sql", "macro_sql": "{% macro formatted_scalar_function_args_sql() %}\n {{ return(adapter.dispatch('formatted_scalar_function_args_sql', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__formatted_scalar_function_args_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2534971, "supported_languages": null}, "macro.dbt.formatted_scalar_function_args_javascript": {"name": "formatted_scalar_function_args_javascript", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.formatted_scalar_function_args_javascript", "macro_sql": "{% macro formatted_scalar_function_args_javascript() %}\n {{ return(adapter.dispatch('formatted_scalar_function_args_javascript', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__formatted_scalar_function_args_javascript"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2535748, "supported_languages": null}, "macro.dbt.default__formatted_scalar_function_args_sql": {"name": "default__formatted_scalar_function_args_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.default__formatted_scalar_function_args_sql", "macro_sql": "{% macro default__formatted_scalar_function_args_sql() %}\n {% set args = [] %}\n {% for arg in model.arguments -%}\n {%- do args.append(arg.name ~ ' ' ~ arg.data_type) -%}\n {%- endfor %}\n {{ args | join(', ') }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.253711, "supported_languages": null}, "macro.dbt.default__formatted_scalar_function_args_javascript": {"name": "default__formatted_scalar_function_args_javascript", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.default__formatted_scalar_function_args_javascript", "macro_sql": "{% macro default__formatted_scalar_function_args_javascript() %}\n {% set msg = \"formatted_scalar_function_args_javascript not implemented for adapter \" ~ adapter.type() %}\n {% do exceptions.raise_compiler_error(msg) %}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.253796, "supported_languages": null}, "macro.dbt.scalar_function_body_sql": {"name": "scalar_function_body_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.scalar_function_body_sql", "macro_sql": "{% macro scalar_function_body_sql() %}\n {{ return(adapter.dispatch('scalar_function_body_sql', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__scalar_function_body_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.253859, "supported_languages": null}, "macro.dbt.default__scalar_function_body_sql": {"name": "default__scalar_function_body_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.default__scalar_function_body_sql", "macro_sql": "{% macro default__scalar_function_body_sql() %}\n $$\n {{ model.compiled_code }}\n $$ LANGUAGE SQL\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2539022, "supported_languages": null}, "macro.dbt.scalar_function_volatility_sql": {"name": "scalar_function_volatility_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.scalar_function_volatility_sql", "macro_sql": "{% macro scalar_function_volatility_sql() %}\n {{ return(adapter.dispatch('scalar_function_volatility_sql', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__scalar_function_volatility_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.253964, "supported_languages": null}, "macro.dbt.scalar_function_volatility_javascript": {"name": "scalar_function_volatility_javascript", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.scalar_function_volatility_javascript", "macro_sql": "{% macro scalar_function_volatility_javascript() %}\n {{ return(adapter.dispatch('scalar_function_volatility_javascript', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__scalar_function_volatility_javascript"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.254025, "supported_languages": null}, "macro.dbt.default__scalar_function_volatility_javascript": {"name": "default__scalar_function_volatility_javascript", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.default__scalar_function_volatility_javascript", "macro_sql": "{% macro default__scalar_function_volatility_javascript() %}\n {% set volatility = model.config.get('volatility') %}\n {% if volatility != none %}\n {% set msg = \"Volatility is not supported by \" ~ adapter.type() ~ \" in javascript UDF and will be ignored\" %}\n {% do exceptions.warn(msg) %}\n {% endif %}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.254156, "supported_languages": null}, "macro.dbt.default__scalar_function_volatility_sql": {"name": "default__scalar_function_volatility_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.default__scalar_function_volatility_sql", "macro_sql": "{% macro default__scalar_function_volatility_sql() %}\n {% set volatility = model.config.get('volatility') %}\n {% if volatility == 'deterministic' %}\n IMMUTABLE\n {% elif volatility == 'stable' %}\n STABLE\n {% elif volatility == 'non-deterministic' %}\n VOLATILE\n {% elif volatility != none %}\n {# This shouldn't happen unless a new volatility is invented #}\n {% do unsupported_volatility_warning(volatility) %}\n {% endif %}\n {# If no volatility is set, don't add anything and let the data warehouse default it #}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.unsupported_volatility_warning"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.254315, "supported_languages": null}, "macro.dbt.unsupported_volatility_warning": {"name": "unsupported_volatility_warning", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.unsupported_volatility_warning", "macro_sql": "{% macro unsupported_volatility_warning(volatility) %}\n {{ return(adapter.dispatch('unsupported_volatility_warning', 'dbt')(volatility)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__unsupported_volatility_warning"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "volatility", "type": null, "description": ""}], "created_at": 1784225035.2543879, "supported_languages": null}, "macro.dbt.default__unsupported_volatility_warning": {"name": "default__unsupported_volatility_warning", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/scalar.sql", "original_file_path": "macros/materializations/functions/scalar.sql", "unique_id": "macro.dbt.default__unsupported_volatility_warning", "macro_sql": "{% macro default__unsupported_volatility_warning(volatility) %}\n {% set msg = \"Found `\" ~ volatility ~ \"` volatility specified on function `\" ~ model.name ~ \"`. This volatility is not supported by \" ~ adapter.type() ~ \", and will be ignored\" %}\n {% do exceptions.warn(msg) %}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "volatility", "type": null, "description": ""}], "created_at": 1784225035.2544901, "supported_languages": null}, "macro.dbt.function_execute_build_sql": {"name": "function_execute_build_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/helpers.sql", "original_file_path": "macros/materializations/functions/helpers.sql", "unique_id": "macro.dbt.function_execute_build_sql", "macro_sql": "{% macro function_execute_build_sql(build_sql, existing_relation, target_relation) %}\n {{ return(adapter.dispatch('function_execute_build_sql', 'dbt')(build_sql, existing_relation, target_relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__function_execute_build_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "build_sql", "type": null, "description": ""}, {"name": "existing_relation", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.2546391, "supported_languages": null}, "macro.dbt.default__function_execute_build_sql": {"name": "default__function_execute_build_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/helpers.sql", "original_file_path": "macros/materializations/functions/helpers.sql", "unique_id": "macro.dbt.default__function_execute_build_sql", "macro_sql": "{% macro default__function_execute_build_sql(build_sql, existing_relation, target_relation) %}\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 {{ adapter.commit() }}\n\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.statement", "macro.dbt.should_revoke", "macro.dbt.apply_grants", "macro.dbt.persist_docs"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "build_sql", "type": null, "description": ""}, {"name": "existing_relation", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.254876, "supported_languages": null}, "macro.dbt.get_aggregate_function_create_replace_signature": {"name": "get_aggregate_function_create_replace_signature", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/aggregate.sql", "original_file_path": "macros/materializations/functions/aggregate.sql", "unique_id": "macro.dbt.get_aggregate_function_create_replace_signature", "macro_sql": "{% macro get_aggregate_function_create_replace_signature(target_relation) %}\n {{ return(adapter.dispatch('get_aggregate_function_create_replace_signature', 'dbt')(target_relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_aggregate_function_create_replace_signature"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.255144, "supported_languages": null}, "macro.dbt.default__get_aggregate_function_create_replace_signature": {"name": "default__get_aggregate_function_create_replace_signature", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/aggregate.sql", "original_file_path": "macros/materializations/functions/aggregate.sql", "unique_id": "macro.dbt.default__get_aggregate_function_create_replace_signature", "macro_sql": "{% macro default__get_aggregate_function_create_replace_signature(target_relation) %}\n CREATE OR REPLACE AGGREGATE FUNCTION {{ target_relation.render() }} ({{ get_formatted_aggregate_function_args()}})\n RETURNS {{ model.returns.data_type }}\n {{ get_function_language_specifier() }}\n {{ get_aggregate_function_volatility_specifier() }}\n {% if model.get('language') == 'python' %}\n {{ get_function_python_options() }}\n {% endif %}\n AS\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.get_formatted_aggregate_function_args", "macro.dbt.get_function_language_specifier", "macro.dbt.get_aggregate_function_volatility_specifier", "macro.dbt.get_function_python_options"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "target_relation", "type": null, "description": ""}], "created_at": 1784225035.255285, "supported_languages": null}, "macro.dbt.get_formatted_aggregate_function_args": {"name": "get_formatted_aggregate_function_args", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/aggregate.sql", "original_file_path": "macros/materializations/functions/aggregate.sql", "unique_id": "macro.dbt.get_formatted_aggregate_function_args", "macro_sql": "{% macro get_formatted_aggregate_function_args() %}\n {{ return(adapter.dispatch('get_formatted_aggregate_function_args', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_formatted_aggregate_function_args"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2553542, "supported_languages": null}, "macro.dbt.default__get_formatted_aggregate_function_args": {"name": "default__get_formatted_aggregate_function_args", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/aggregate.sql", "original_file_path": "macros/materializations/functions/aggregate.sql", "unique_id": "macro.dbt.default__get_formatted_aggregate_function_args", "macro_sql": "{% macro default__get_formatted_aggregate_function_args() %}\n {# conveniently we can reuse the sql scalar function args #}\n {{ formatted_scalar_function_args_sql() }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.formatted_scalar_function_args_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2554, "supported_languages": null}, "macro.dbt.get_function_language_specifier": {"name": "get_function_language_specifier", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/aggregate.sql", "original_file_path": "macros/materializations/functions/aggregate.sql", "unique_id": "macro.dbt.get_function_language_specifier", "macro_sql": "{% macro get_function_language_specifier() %}\n {{ return(adapter.dispatch('get_function_language_specifier', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_function_language_specifier"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.255462, "supported_languages": null}, "macro.dbt.default__get_function_language_specifier": {"name": "default__get_function_language_specifier", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/aggregate.sql", "original_file_path": "macros/materializations/functions/aggregate.sql", "unique_id": "macro.dbt.default__get_function_language_specifier", "macro_sql": "{% macro default__get_function_language_specifier() %}\n {% set language = model.get('language') %}\n {% if language == 'sql' %}\n {# generally you dont need to specify the language for sql functions #}\n {% elif language == 'python' %}\n LANGUAGE PYTHON\n {% elif language == 'javascript' %}\n LANGUAGE js\n {% else %}\n {{ 'LANGUAGE ' ~ language.upper() }}\n {% endif %}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.255601, "supported_languages": null}, "macro.dbt.get_aggregate_function_volatility_specifier": {"name": "get_aggregate_function_volatility_specifier", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/aggregate.sql", "original_file_path": "macros/materializations/functions/aggregate.sql", "unique_id": "macro.dbt.get_aggregate_function_volatility_specifier", "macro_sql": "{% macro get_aggregate_function_volatility_specifier() %}\n {{ return(adapter.dispatch('get_aggregate_function_volatility_specifier', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_aggregate_function_volatility_specifier"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.255667, "supported_languages": null}, "macro.dbt.default__get_aggregate_function_volatility_specifier": {"name": "default__get_aggregate_function_volatility_specifier", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/aggregate.sql", "original_file_path": "macros/materializations/functions/aggregate.sql", "unique_id": "macro.dbt.default__get_aggregate_function_volatility_specifier", "macro_sql": "{% macro default__get_aggregate_function_volatility_specifier() %}\n {{ scalar_function_volatility_sql() }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.scalar_function_volatility_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2557068, "supported_languages": null}, "macro.dbt.get_function_python_options": {"name": "get_function_python_options", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/aggregate.sql", "original_file_path": "macros/materializations/functions/aggregate.sql", "unique_id": "macro.dbt.get_function_python_options", "macro_sql": "{% macro get_function_python_options() %}\n {{ return(adapter.dispatch('get_function_python_options', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_function_python_options"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.255768, "supported_languages": null}, "macro.dbt.default__get_function_python_options": {"name": "default__get_function_python_options", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/aggregate.sql", "original_file_path": "macros/materializations/functions/aggregate.sql", "unique_id": "macro.dbt.default__get_function_python_options", "macro_sql": "{% macro default__get_function_python_options() %}\n RUNTIME_VERSION = '{{ model.config.get('runtime_version') }}'\n HANDLER = '{{ model.config.get('entry_point') }}'\n {% set packages = model.config.get('packages', []) %}\n {% if packages %}\n PACKAGES = ('{{ packages | join(\"','\") }}')\n {% endif %}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.255906, "supported_languages": null}, "macro.dbt.materialization_function_default": {"name": "materialization_function_default", "resource_type": "macro", "package_name": "dbt", "path": "macros/materializations/functions/function.sql", "original_file_path": "macros/materializations/functions/function.sql", "unique_id": "macro.dbt.materialization_function_default", "macro_sql": "{% materialization function, default, supported_languages=['sql', 'python', 'javascript'] %}\n {% set existing_relation = load_cached_relation(this) %}\n {% set target_relation = this.incorporate(type=this.Function) %}\n\n {{ run_hooks(pre_hooks) }}\n\n {% set function_config = this.get_function_config(model) %}\n {% set macro_name = this.get_function_macro_name(function_config) %}\n\n {# Doing this aliasing of adapter.dispatch is a hacky way to disable the static analysis of actually calling adapter.dispatch #}\n {# This is necessary because the static analysis breaks being able to dynamically pass a macro_name #}\n {% set _dispatch = adapter.dispatch %}\n\n {% set build_sql = _dispatch(macro_name, 'dbt')(target_relation) %}\n {{ function_execute_build_sql(build_sql, existing_relation, target_relation) }}\n {{ run_hooks(post_hooks) }}\n\n {{ return({'relations': [target_relation]}) }}\n\n{% endmaterialization %}", "depends_on": {"macros": ["macro.dbt.load_cached_relation", "macro.dbt.run_hooks", "macro.dbt.function_execute_build_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "supported_languages", "type": null, "description": ""}], "created_at": 1784225035.256268, "supported_languages": ["sql", "python", "javascript"]}, "macro.dbt.generate_alias_name": {"name": "generate_alias_name", "resource_type": "macro", "package_name": "dbt", "path": "macros/get_custom_name/get_custom_alias.sql", "original_file_path": "macros/get_custom_name/get_custom_alias.sql", "unique_id": "macro.dbt.generate_alias_name", "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 %}", "depends_on": {"macros": ["macro.dbt.default__generate_alias_name"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "custom_alias_name", "type": null, "description": ""}, {"name": "node", "type": null, "description": ""}], "created_at": 1784225035.256427, "supported_languages": null}, "macro.dbt.default__generate_alias_name": {"name": "default__generate_alias_name", "resource_type": "macro", "package_name": "dbt", "path": "macros/get_custom_name/get_custom_alias.sql", "original_file_path": "macros/get_custom_name/get_custom_alias.sql", "unique_id": "macro.dbt.default__generate_alias_name", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "custom_alias_name", "type": null, "description": ""}, {"name": "node", "type": null, "description": ""}], "created_at": 1784225035.256581, "supported_languages": null}, "macro.dbt.generate_latest_version_pointer_alias": {"name": "generate_latest_version_pointer_alias", "resource_type": "macro", "package_name": "dbt", "path": "macros/get_custom_name/get_latest_version_pointer_alias.sql", "original_file_path": "macros/get_custom_name/get_latest_version_pointer_alias.sql", "unique_id": "macro.dbt.generate_latest_version_pointer_alias", "macro_sql": "{% macro generate_latest_version_pointer_alias(custom_alias_name=none, node=none) -%}\n {% do return(adapter.dispatch('generate_latest_version_pointer_alias', 'dbt')(custom_alias_name, node)) %}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__generate_latest_version_pointer_alias"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "custom_alias_name", "type": null, "description": ""}, {"name": "node", "type": null, "description": ""}], "created_at": 1784225035.2567308, "supported_languages": null}, "macro.dbt.default__generate_latest_version_pointer_alias": {"name": "default__generate_latest_version_pointer_alias", "resource_type": "macro", "package_name": "dbt", "path": "macros/get_custom_name/get_latest_version_pointer_alias.sql", "original_file_path": "macros/get_custom_name/get_latest_version_pointer_alias.sql", "unique_id": "macro.dbt.default__generate_latest_version_pointer_alias", "macro_sql": "{% macro default__generate_latest_version_pointer_alias(custom_alias_name=none, node=none) -%}\n {%- if custom_alias_name -%}\n {{ custom_alias_name | trim }}\n {%- else -%}\n {{ node.name }}\n {%- endif -%}\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "custom_alias_name", "type": null, "description": ""}, {"name": "node", "type": null, "description": ""}], "created_at": 1784225035.2568169, "supported_languages": null}, "macro.dbt.generate_schema_name": {"name": "generate_schema_name", "resource_type": "macro", "package_name": "dbt", "path": "macros/get_custom_name/get_custom_schema.sql", "original_file_path": "macros/get_custom_name/get_custom_schema.sql", "unique_id": "macro.dbt.generate_schema_name", "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 %}", "depends_on": {"macros": ["macro.dbt.default__generate_schema_name"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "custom_schema_name", "type": null, "description": ""}, {"name": "node", "type": null, "description": ""}], "created_at": 1784225035.2569962, "supported_languages": null}, "macro.dbt.default__generate_schema_name": {"name": "default__generate_schema_name", "resource_type": "macro", "package_name": "dbt", "path": "macros/get_custom_name/get_custom_schema.sql", "original_file_path": "macros/get_custom_name/get_custom_schema.sql", "unique_id": "macro.dbt.default__generate_schema_name", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "custom_schema_name", "type": null, "description": ""}, {"name": "node", "type": null, "description": ""}], "created_at": 1784225035.257099, "supported_languages": null}, "macro.dbt.generate_schema_name_for_env": {"name": "generate_schema_name_for_env", "resource_type": "macro", "package_name": "dbt", "path": "macros/get_custom_name/get_custom_schema.sql", "original_file_path": "macros/get_custom_name/get_custom_schema.sql", "unique_id": "macro.dbt.generate_schema_name_for_env", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "custom_schema_name", "type": null, "description": ""}, {"name": "node", "type": null, "description": ""}], "created_at": 1784225035.257215, "supported_languages": null}, "macro.dbt.generate_database_name": {"name": "generate_database_name", "resource_type": "macro", "package_name": "dbt", "path": "macros/get_custom_name/get_custom_database.sql", "original_file_path": "macros/get_custom_name/get_custom_database.sql", "unique_id": "macro.dbt.generate_database_name", "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 %}", "depends_on": {"macros": ["macro.dbt.default__generate_database_name"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "custom_database_name", "type": null, "description": ""}, {"name": "node", "type": null, "description": ""}], "created_at": 1784225035.2573838, "supported_languages": null}, "macro.dbt.default__generate_database_name": {"name": "default__generate_database_name", "resource_type": "macro", "package_name": "dbt", "path": "macros/get_custom_name/get_custom_database.sql", "original_file_path": "macros/get_custom_name/get_custom_database.sql", "unique_id": "macro.dbt.default__generate_database_name", "macro_sql": "{% macro default__generate_database_name(custom_database_name=none, node=none) -%}\n {%- set default_database = target.database -%}\n {%- if node is not none and node|attr('database') -%}\n {%- set catalog_relation = adapter.build_catalog_relation(node) -%}\n {%- if catalog_relation and catalog_relation|attr('catalog_database') -%}\n {{ return(catalog_relation.catalog_database) }}\n {%- endif -%}\n {%- endif -%}\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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "custom_database_name", "type": null, "description": ""}, {"name": "node", "type": null, "description": ""}], "created_at": 1784225035.257584, "supported_languages": null}, "macro.dbt.get_drop_sql": {"name": "get_drop_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/drop.sql", "original_file_path": "macros/relations/drop.sql", "unique_id": "macro.dbt.get_drop_sql", "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", "depends_on": {"macros": ["macro.dbt.default__get_drop_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.257782, "supported_languages": null}, "macro.dbt.default__get_drop_sql": {"name": "default__get_drop_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/drop.sql", "original_file_path": "macros/relations/drop.sql", "unique_id": "macro.dbt.default__get_drop_sql", "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", "depends_on": {"macros": ["macro.dbt.drop_view", "macro.dbt.drop_table", "macro.dbt.drop_materialized_view"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.257984, "supported_languages": null}, "macro.dbt.drop_relation": {"name": "drop_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/drop.sql", "original_file_path": "macros/relations/drop.sql", "unique_id": "macro.dbt.drop_relation", "macro_sql": "{% macro drop_relation(relation) -%}\n {{ return(adapter.dispatch('drop_relation', 'dbt')(relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__drop_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.258065, "supported_languages": null}, "macro.dbt.default__drop_relation": {"name": "default__drop_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/drop.sql", "original_file_path": "macros/relations/drop.sql", "unique_id": "macro.dbt.default__drop_relation", "macro_sql": "{% macro default__drop_relation(relation) -%}\n {% call statement('drop_relation', auto_begin=False) -%}\n {{ get_drop_sql(relation) }}\n {%- endcall %}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.statement", "macro.dbt.get_drop_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.258147, "supported_languages": null}, "macro.dbt.drop_relation_if_exists": {"name": "drop_relation_if_exists", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/drop.sql", "original_file_path": "macros/relations/drop.sql", "unique_id": "macro.dbt.drop_relation_if_exists", "macro_sql": "{% macro drop_relation_if_exists(relation) %}\n {% if relation is not none %}\n {{ adapter.drop_relation(relation) }}\n {% endif %}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.258226, "supported_languages": null}, "macro.dbt.get_replace_sql": {"name": "get_replace_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/replace.sql", "original_file_path": "macros/relations/replace.sql", "unique_id": "macro.dbt.get_replace_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_replace_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "existing_relation", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.258467, "supported_languages": null}, "macro.dbt.default__get_replace_sql": {"name": "default__get_replace_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/replace.sql", "original_file_path": "macros/relations/replace.sql", "unique_id": "macro.dbt.default__get_replace_sql", "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 %}", "depends_on": {"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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "existing_relation", "type": null, "description": ""}, {"name": "target_relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.258959, "supported_languages": null}, "macro.dbt.get_create_intermediate_sql": {"name": "get_create_intermediate_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/create_intermediate.sql", "original_file_path": "macros/relations/create_intermediate.sql", "unique_id": "macro.dbt.get_create_intermediate_sql", "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", "depends_on": {"macros": ["macro.dbt.default__get_create_intermediate_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.259108, "supported_languages": null}, "macro.dbt.default__get_create_intermediate_sql": {"name": "default__get_create_intermediate_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/create_intermediate.sql", "original_file_path": "macros/relations/create_intermediate.sql", "unique_id": "macro.dbt.default__get_create_intermediate_sql", "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 -%}", "depends_on": {"macros": ["macro.dbt.make_intermediate_relation", "macro.dbt.get_drop_sql", "macro.dbt.get_create_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.2592041, "supported_languages": null}, "macro.dbt.drop_schema_named": {"name": "drop_schema_named", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/schema.sql", "original_file_path": "macros/relations/schema.sql", "unique_id": "macro.dbt.drop_schema_named", "macro_sql": "{% macro drop_schema_named(schema_name) %}\n {{ return(adapter.dispatch('drop_schema_named', 'dbt') (schema_name)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__drop_schema_named"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "schema_name", "type": null, "description": ""}], "created_at": 1784225035.2593122, "supported_languages": null}, "macro.dbt.default__drop_schema_named": {"name": "default__drop_schema_named", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/schema.sql", "original_file_path": "macros/relations/schema.sql", "unique_id": "macro.dbt.default__drop_schema_named", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "schema_name", "type": null, "description": ""}], "created_at": 1784225035.259392, "supported_languages": null}, "macro.dbt.get_drop_backup_sql": {"name": "get_drop_backup_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/drop_backup.sql", "original_file_path": "macros/relations/drop_backup.sql", "unique_id": "macro.dbt.get_drop_backup_sql", "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", "depends_on": {"macros": ["macro.dbt.default__get_drop_backup_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.259509, "supported_languages": null}, "macro.dbt.default__get_drop_backup_sql": {"name": "default__get_drop_backup_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/drop_backup.sql", "original_file_path": "macros/relations/drop_backup.sql", "unique_id": "macro.dbt.default__get_drop_backup_sql", "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 -%}", "depends_on": {"macros": ["macro.dbt.make_backup_relation", "macro.dbt.get_drop_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.259636, "supported_languages": null}, "macro.dbt.get_rename_sql": {"name": "get_rename_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/rename.sql", "original_file_path": "macros/relations/rename.sql", "unique_id": "macro.dbt.get_rename_sql", "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", "depends_on": {"macros": ["macro.dbt.default__get_rename_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "new_name", "type": null, "description": ""}], "created_at": 1784225035.259831, "supported_languages": null}, "macro.dbt.default__get_rename_sql": {"name": "default__get_rename_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/rename.sql", "original_file_path": "macros/relations/rename.sql", "unique_id": "macro.dbt.default__get_rename_sql", "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", "depends_on": {"macros": ["macro.dbt.get_rename_view_sql", "macro.dbt.get_rename_table_sql", "macro.dbt.get_rename_materialized_view_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "new_name", "type": null, "description": ""}], "created_at": 1784225035.259997, "supported_languages": null}, "macro.dbt.rename_relation": {"name": "rename_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/rename.sql", "original_file_path": "macros/relations/rename.sql", "unique_id": "macro.dbt.rename_relation", "macro_sql": "{% macro rename_relation(from_relation, to_relation) -%}\n {{ return(adapter.dispatch('rename_relation', 'dbt')(from_relation, to_relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__rename_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "from_relation", "type": null, "description": ""}, {"name": "to_relation", "type": null, "description": ""}], "created_at": 1784225035.2600782, "supported_languages": null}, "macro.dbt.default__rename_relation": {"name": "default__rename_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/rename.sql", "original_file_path": "macros/relations/rename.sql", "unique_id": "macro.dbt.default__rename_relation", "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 %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "from_relation", "type": null, "description": ""}, {"name": "to_relation", "type": null, "description": ""}], "created_at": 1784225035.260192, "supported_languages": null}, "macro.dbt.get_create_backup_sql": {"name": "get_create_backup_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/create_backup.sql", "original_file_path": "macros/relations/create_backup.sql", "unique_id": "macro.dbt.get_create_backup_sql", "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", "depends_on": {"macros": ["macro.dbt.default__get_create_backup_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.260319, "supported_languages": null}, "macro.dbt.default__get_create_backup_sql": {"name": "default__get_create_backup_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/create_backup.sql", "original_file_path": "macros/relations/create_backup.sql", "unique_id": "macro.dbt.default__get_create_backup_sql", "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 -%}", "depends_on": {"macros": ["macro.dbt.make_backup_relation", "macro.dbt.get_drop_sql", "macro.dbt.get_rename_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.260422, "supported_languages": null}, "macro.dbt.get_create_sql": {"name": "get_create_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/create.sql", "original_file_path": "macros/relations/create.sql", "unique_id": "macro.dbt.get_create_sql", "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", "depends_on": {"macros": ["macro.dbt.default__get_create_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.2605708, "supported_languages": null}, "macro.dbt.default__get_create_sql": {"name": "default__get_create_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/create.sql", "original_file_path": "macros/relations/create.sql", "unique_id": "macro.dbt.default__get_create_sql", "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 -%}", "depends_on": {"macros": ["macro.dbt.get_create_view_as_sql", "macro.dbt.get_create_table_as_sql", "macro.dbt.get_create_materialized_view_as_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.260739, "supported_languages": null}, "macro.dbt.get_rename_intermediate_sql": {"name": "get_rename_intermediate_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/rename_intermediate.sql", "original_file_path": "macros/relations/rename_intermediate.sql", "unique_id": "macro.dbt.get_rename_intermediate_sql", "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", "depends_on": {"macros": ["macro.dbt.default__get_rename_intermediate_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.2608619, "supported_languages": null}, "macro.dbt.default__get_rename_intermediate_sql": {"name": "default__get_rename_intermediate_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/rename_intermediate.sql", "original_file_path": "macros/relations/rename_intermediate.sql", "unique_id": "macro.dbt.default__get_rename_intermediate_sql", "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 -%}", "depends_on": {"macros": ["macro.dbt.make_intermediate_relation", "macro.dbt.get_rename_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.260944, "supported_languages": null}, "macro.dbt.drop_materialized_view": {"name": "drop_materialized_view", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/drop.sql", "original_file_path": "macros/relations/materialized_view/drop.sql", "unique_id": "macro.dbt.drop_materialized_view", "macro_sql": "{% macro drop_materialized_view(relation) -%}\n {{- adapter.dispatch('drop_materialized_view', 'dbt')(relation) -}}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__drop_materialized_view"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.261044, "supported_languages": null}, "macro.dbt.default__drop_materialized_view": {"name": "default__drop_materialized_view", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/drop.sql", "original_file_path": "macros/relations/materialized_view/drop.sql", "unique_id": "macro.dbt.default__drop_materialized_view", "macro_sql": "{% macro default__drop_materialized_view(relation) -%}\n drop materialized view if exists {{ relation.render() }} cascade\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.261256, "supported_languages": null}, "macro.dbt.get_replace_materialized_view_sql": {"name": "get_replace_materialized_view_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/replace.sql", "original_file_path": "macros/relations/materialized_view/replace.sql", "unique_id": "macro.dbt.get_replace_materialized_view_sql", "macro_sql": "{% macro get_replace_materialized_view_sql(relation, sql) %}\n {{- adapter.dispatch('get_replace_materialized_view_sql', 'dbt')(relation, sql) -}}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_replace_materialized_view_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.261365, "supported_languages": null}, "macro.dbt.default__get_replace_materialized_view_sql": {"name": "default__get_replace_materialized_view_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/replace.sql", "original_file_path": "macros/relations/materialized_view/replace.sql", "unique_id": "macro.dbt.default__get_replace_materialized_view_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.261426, "supported_languages": null}, "macro.dbt.refresh_materialized_view": {"name": "refresh_materialized_view", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/refresh.sql", "original_file_path": "macros/relations/materialized_view/refresh.sql", "unique_id": "macro.dbt.refresh_materialized_view", "macro_sql": "{% macro refresh_materialized_view(relation) %}\n {{- log('Applying REFRESH to: ' ~ relation) -}}\n {{- adapter.dispatch('refresh_materialized_view', 'dbt')(relation) -}}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__refresh_materialized_view"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.261554, "supported_languages": null}, "macro.dbt.default__refresh_materialized_view": {"name": "default__refresh_materialized_view", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/refresh.sql", "original_file_path": "macros/relations/materialized_view/refresh.sql", "unique_id": "macro.dbt.default__refresh_materialized_view", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.261606, "supported_languages": null}, "macro.dbt.get_rename_materialized_view_sql": {"name": "get_rename_materialized_view_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/rename.sql", "original_file_path": "macros/relations/materialized_view/rename.sql", "unique_id": "macro.dbt.get_rename_materialized_view_sql", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_rename_materialized_view_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "new_name", "type": null, "description": ""}], "created_at": 1784225035.261732, "supported_languages": null}, "macro.dbt.default__get_rename_materialized_view_sql": {"name": "default__get_rename_materialized_view_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/rename.sql", "original_file_path": "macros/relations/materialized_view/rename.sql", "unique_id": "macro.dbt.default__get_rename_materialized_view_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "new_name", "type": null, "description": ""}], "created_at": 1784225035.2617931, "supported_languages": null}, "macro.dbt.get_alter_materialized_view_as_sql": {"name": "get_alter_materialized_view_as_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/alter.sql", "original_file_path": "macros/relations/materialized_view/alter.sql", "unique_id": "macro.dbt.get_alter_materialized_view_as_sql", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_alter_materialized_view_as_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "configuration_changes", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}, {"name": "existing_relation", "type": null, "description": ""}, {"name": "backup_relation", "type": null, "description": ""}, {"name": "intermediate_relation", "type": null, "description": ""}], "created_at": 1784225035.2620091, "supported_languages": null}, "macro.dbt.default__get_alter_materialized_view_as_sql": {"name": "default__get_alter_materialized_view_as_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/alter.sql", "original_file_path": "macros/relations/materialized_view/alter.sql", "unique_id": "macro.dbt.default__get_alter_materialized_view_as_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "configuration_changes", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}, {"name": "existing_relation", "type": null, "description": ""}, {"name": "backup_relation", "type": null, "description": ""}, {"name": "intermediate_relation", "type": null, "description": ""}], "created_at": 1784225035.262083, "supported_languages": null}, "macro.dbt.get_materialized_view_configuration_changes": {"name": "get_materialized_view_configuration_changes", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/alter.sql", "original_file_path": "macros/relations/materialized_view/alter.sql", "unique_id": "macro.dbt.get_materialized_view_configuration_changes", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_materialized_view_configuration_changes"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "existing_relation", "type": null, "description": ""}, {"name": "new_config", "type": null, "description": ""}], "created_at": 1784225035.262196, "supported_languages": null}, "macro.dbt.default__get_materialized_view_configuration_changes": {"name": "default__get_materialized_view_configuration_changes", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/alter.sql", "original_file_path": "macros/relations/materialized_view/alter.sql", "unique_id": "macro.dbt.default__get_materialized_view_configuration_changes", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "existing_relation", "type": null, "description": ""}, {"name": "new_config", "type": null, "description": ""}], "created_at": 1784225035.262254, "supported_languages": null}, "macro.dbt.get_create_materialized_view_as_sql": {"name": "get_create_materialized_view_as_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/create.sql", "original_file_path": "macros/relations/materialized_view/create.sql", "unique_id": "macro.dbt.get_create_materialized_view_as_sql", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_create_materialized_view_as_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.262363, "supported_languages": null}, "macro.dbt.default__get_create_materialized_view_as_sql": {"name": "default__get_create_materialized_view_as_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/materialized_view/create.sql", "original_file_path": "macros/relations/materialized_view/create.sql", "unique_id": "macro.dbt.default__get_create_materialized_view_as_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.26242, "supported_languages": null}, "macro.dbt.get_table_columns_and_constraints": {"name": "get_table_columns_and_constraints", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/column/columns_spec_ddl.sql", "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "unique_id": "macro.dbt.get_table_columns_and_constraints", "macro_sql": "{%- macro get_table_columns_and_constraints() -%}\n {{ adapter.dispatch('get_table_columns_and_constraints', 'dbt')() }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__get_table_columns_and_constraints"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.26273, "supported_languages": null}, "macro.dbt.default__get_table_columns_and_constraints": {"name": "default__get_table_columns_and_constraints", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/column/columns_spec_ddl.sql", "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "unique_id": "macro.dbt.default__get_table_columns_and_constraints", "macro_sql": "{% macro default__get_table_columns_and_constraints() -%}\n {{ return(table_columns_and_constraints()) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.table_columns_and_constraints"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.262778, "supported_languages": null}, "macro.dbt.table_columns_and_constraints": {"name": "table_columns_and_constraints", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/column/columns_spec_ddl.sql", "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "unique_id": "macro.dbt.table_columns_and_constraints", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.26298, "supported_languages": null}, "macro.dbt.get_assert_columns_equivalent": {"name": "get_assert_columns_equivalent", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/column/columns_spec_ddl.sql", "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "unique_id": "macro.dbt.get_assert_columns_equivalent", "macro_sql": "\n\n{%- macro get_assert_columns_equivalent(sql) -%}\n {{ adapter.dispatch('get_assert_columns_equivalent', 'dbt')(sql) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__get_assert_columns_equivalent"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.2630458, "supported_languages": null}, "macro.dbt.default__get_assert_columns_equivalent": {"name": "default__get_assert_columns_equivalent", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/column/columns_spec_ddl.sql", "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "unique_id": "macro.dbt.default__get_assert_columns_equivalent", "macro_sql": "{% macro default__get_assert_columns_equivalent(sql) -%}\n {{ return(assert_columns_equivalent(sql)) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.assert_columns_equivalent"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.263098, "supported_languages": null}, "macro.dbt.assert_columns_equivalent": {"name": "assert_columns_equivalent", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/column/columns_spec_ddl.sql", "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "unique_id": "macro.dbt.assert_columns_equivalent", "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 %}", "depends_on": {"macros": ["macro.dbt.get_column_schema_from_query", "macro.dbt.get_empty_schema_sql", "macro.dbt.format_columns"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.263626, "supported_languages": null}, "macro.dbt.format_columns": {"name": "format_columns", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/column/columns_spec_ddl.sql", "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "unique_id": "macro.dbt.format_columns", "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 %}", "depends_on": {"macros": ["macro.dbt.default__format_column"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "columns", "type": null, "description": ""}], "created_at": 1784225035.263776, "supported_languages": null}, "macro.dbt.default__format_column": {"name": "default__format_column", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/column/columns_spec_ddl.sql", "original_file_path": "macros/relations/column/columns_spec_ddl.sql", "unique_id": "macro.dbt.default__format_column", "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 -%}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "column", "type": null, "description": ""}], "created_at": 1784225035.2639081, "supported_languages": null}, "macro.dbt.drop_table": {"name": "drop_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/drop.sql", "original_file_path": "macros/relations/table/drop.sql", "unique_id": "macro.dbt.drop_table", "macro_sql": "{% macro drop_table(relation) -%}\n {{- adapter.dispatch('drop_table', 'dbt')(relation) -}}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__drop_table"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.264013, "supported_languages": null}, "macro.dbt.default__drop_table": {"name": "default__drop_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/drop.sql", "original_file_path": "macros/relations/table/drop.sql", "unique_id": "macro.dbt.default__drop_table", "macro_sql": "{% macro default__drop_table(relation) -%}\n drop table if exists {{ relation.render() }} cascade\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.264063, "supported_languages": null}, "macro.dbt.get_replace_table_sql": {"name": "get_replace_table_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/replace.sql", "original_file_path": "macros/relations/table/replace.sql", "unique_id": "macro.dbt.get_replace_table_sql", "macro_sql": "{% macro get_replace_table_sql(relation, sql) %}\n {{- adapter.dispatch('get_replace_table_sql', 'dbt')(relation, sql) -}}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_replace_table_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.26417, "supported_languages": null}, "macro.dbt.default__get_replace_table_sql": {"name": "default__get_replace_table_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/replace.sql", "original_file_path": "macros/relations/table/replace.sql", "unique_id": "macro.dbt.default__get_replace_table_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.264226, "supported_languages": null}, "macro.dbt.get_rename_table_sql": {"name": "get_rename_table_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/rename.sql", "original_file_path": "macros/relations/table/rename.sql", "unique_id": "macro.dbt.get_rename_table_sql", "macro_sql": "{% macro get_rename_table_sql(relation, new_name) %}\n {{- adapter.dispatch('get_rename_table_sql', 'dbt')(relation, new_name) -}}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_rename_table_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "new_name", "type": null, "description": ""}], "created_at": 1784225035.264332, "supported_languages": null}, "macro.dbt.default__get_rename_table_sql": {"name": "default__get_rename_table_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/rename.sql", "original_file_path": "macros/relations/table/rename.sql", "unique_id": "macro.dbt.default__get_rename_table_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "new_name", "type": null, "description": ""}], "created_at": 1784225035.264388, "supported_languages": null}, "macro.dbt.get_create_table_as_sql": {"name": "get_create_table_as_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/create.sql", "original_file_path": "macros/relations/table/create.sql", "unique_id": "macro.dbt.get_create_table_as_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_create_table_as_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "temporary", "type": null, "description": ""}, {"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.2646348, "supported_languages": null}, "macro.dbt.default__get_create_table_as_sql": {"name": "default__get_create_table_as_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/create.sql", "original_file_path": "macros/relations/table/create.sql", "unique_id": "macro.dbt.default__get_create_table_as_sql", "macro_sql": "{% macro default__get_create_table_as_sql(temporary, relation, sql) -%}\n {{ return(create_table_as(temporary, relation, sql)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.create_table_as"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "temporary", "type": null, "description": ""}, {"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.264703, "supported_languages": null}, "macro.dbt.create_table_as": {"name": "create_table_as", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/create.sql", "original_file_path": "macros/relations/table/create.sql", "unique_id": "macro.dbt.create_table_as", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__create_table_as"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "temporary", "type": null, "description": ""}, {"name": "relation", "type": null, "description": ""}, {"name": "compiled_code", "type": null, "description": ""}, {"name": "language", "type": null, "description": ""}], "created_at": 1784225035.264863, "supported_languages": null}, "macro.dbt.default__create_table_as": {"name": "default__create_table_as", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/create.sql", "original_file_path": "macros/relations/table/create.sql", "unique_id": "macro.dbt.default__create_table_as", "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 %}", "depends_on": {"macros": ["macro.dbt.get_assert_columns_equivalent", "macro.dbt.get_table_columns_and_constraints", "macro.dbt.get_select_subquery"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "temporary", "type": null, "description": ""}, {"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.265124, "supported_languages": null}, "macro.dbt.default__get_column_names": {"name": "default__get_column_names", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/create.sql", "original_file_path": "macros/relations/table/create.sql", "unique_id": "macro.dbt.default__get_column_names", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.265305, "supported_languages": null}, "macro.dbt.get_select_subquery": {"name": "get_select_subquery", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/create.sql", "original_file_path": "macros/relations/table/create.sql", "unique_id": "macro.dbt.get_select_subquery", "macro_sql": "{% macro get_select_subquery(sql) %}\n {{ return(adapter.dispatch('get_select_subquery', 'dbt')(sql)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_select_subquery"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.265376, "supported_languages": null}, "macro.dbt.default__get_select_subquery": {"name": "default__get_select_subquery", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/table/create.sql", "original_file_path": "macros/relations/table/create.sql", "unique_id": "macro.dbt.default__get_select_subquery", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_column_names"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.265443, "supported_languages": null}, "macro.dbt.drop_view": {"name": "drop_view", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/drop.sql", "original_file_path": "macros/relations/view/drop.sql", "unique_id": "macro.dbt.drop_view", "macro_sql": "{% macro drop_view(relation) -%}\n {{- adapter.dispatch('drop_view', 'dbt')(relation) -}}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__drop_view"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.265549, "supported_languages": null}, "macro.dbt.default__drop_view": {"name": "default__drop_view", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/drop.sql", "original_file_path": "macros/relations/view/drop.sql", "unique_id": "macro.dbt.default__drop_view", "macro_sql": "{% macro default__drop_view(relation) -%}\n drop view if exists {{ relation.render() }} cascade\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.265598, "supported_languages": null}, "macro.dbt.get_replace_view_sql": {"name": "get_replace_view_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/replace.sql", "original_file_path": "macros/relations/view/replace.sql", "unique_id": "macro.dbt.get_replace_view_sql", "macro_sql": "{% macro get_replace_view_sql(relation, sql) %}\n {{- adapter.dispatch('get_replace_view_sql', 'dbt')(relation, sql) -}}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_replace_view_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.2658062, "supported_languages": null}, "macro.dbt.default__get_replace_view_sql": {"name": "default__get_replace_view_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/replace.sql", "original_file_path": "macros/relations/view/replace.sql", "unique_id": "macro.dbt.default__get_replace_view_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.265864, "supported_languages": null}, "macro.dbt.create_or_replace_view": {"name": "create_or_replace_view", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/replace.sql", "original_file_path": "macros/relations/view/replace.sql", "unique_id": "macro.dbt.create_or_replace_view", "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 %}", "depends_on": {"macros": ["macro.dbt.run_hooks", "macro.dbt.handle_existing_table", "macro.dbt.should_full_refresh", "macro.dbt.statement", "macro.dbt.get_create_view_as_sql", "macro.dbt.should_revoke", "macro.dbt.apply_grants"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2663622, "supported_languages": null}, "macro.dbt.handle_existing_table": {"name": "handle_existing_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/replace.sql", "original_file_path": "macros/relations/view/replace.sql", "unique_id": "macro.dbt.handle_existing_table", "macro_sql": "{% macro handle_existing_table(full_refresh, old_relation) %}\n {{ adapter.dispatch('handle_existing_table', 'dbt')(full_refresh, old_relation) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__handle_existing_table"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "full_refresh", "type": null, "description": ""}, {"name": "old_relation", "type": null, "description": ""}], "created_at": 1784225035.266449, "supported_languages": null}, "macro.dbt.default__handle_existing_table": {"name": "default__handle_existing_table", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/replace.sql", "original_file_path": "macros/relations/view/replace.sql", "unique_id": "macro.dbt.default__handle_existing_table", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "full_refresh", "type": null, "description": ""}, {"name": "old_relation", "type": null, "description": ""}], "created_at": 1784225035.2665448, "supported_languages": null}, "macro.dbt.get_rename_view_sql": {"name": "get_rename_view_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/rename.sql", "original_file_path": "macros/relations/view/rename.sql", "unique_id": "macro.dbt.get_rename_view_sql", "macro_sql": "{% macro get_rename_view_sql(relation, new_name) %}\n {{- adapter.dispatch('get_rename_view_sql', 'dbt')(relation, new_name) -}}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_rename_view_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "new_name", "type": null, "description": ""}], "created_at": 1784225035.266664, "supported_languages": null}, "macro.dbt.default__get_rename_view_sql": {"name": "default__get_rename_view_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/rename.sql", "original_file_path": "macros/relations/view/rename.sql", "unique_id": "macro.dbt.default__get_rename_view_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "new_name", "type": null, "description": ""}], "created_at": 1784225035.266725, "supported_languages": null}, "macro.dbt.get_create_view_as_sql": {"name": "get_create_view_as_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/create.sql", "original_file_path": "macros/relations/view/create.sql", "unique_id": "macro.dbt.get_create_view_as_sql", "macro_sql": "{% macro get_create_view_as_sql(relation, sql) -%}\n {{ adapter.dispatch('get_create_view_as_sql', 'dbt')(relation, sql) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_create_view_as_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.2668831, "supported_languages": null}, "macro.dbt.default__get_create_view_as_sql": {"name": "default__get_create_view_as_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/create.sql", "original_file_path": "macros/relations/view/create.sql", "unique_id": "macro.dbt.default__get_create_view_as_sql", "macro_sql": "{% macro default__get_create_view_as_sql(relation, sql) -%}\n {{ return(create_view_as(relation, sql)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.create_view_as"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.266947, "supported_languages": null}, "macro.dbt.create_view_as": {"name": "create_view_as", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/create.sql", "original_file_path": "macros/relations/view/create.sql", "unique_id": "macro.dbt.create_view_as", "macro_sql": "{% macro create_view_as(relation, sql) -%}\n {{ adapter.dispatch('create_view_as', 'dbt')(relation, sql) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__create_view_as"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.267017, "supported_languages": null}, "macro.dbt.default__create_view_as": {"name": "default__create_view_as", "resource_type": "macro", "package_name": "dbt", "path": "macros/relations/view/create.sql", "original_file_path": "macros/relations/view/create.sql", "unique_id": "macro.dbt.default__create_view_as", "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 %}", "depends_on": {"macros": ["macro.dbt.get_assert_columns_equivalent"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.267191, "supported_languages": null}, "macro.dbt.default__test_relationships": {"name": "default__test_relationships", "resource_type": "macro", "package_name": "dbt", "path": "macros/generic_test_sql/relationships.sql", "original_file_path": "macros/generic_test_sql/relationships.sql", "unique_id": "macro.dbt.default__test_relationships", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}, {"name": "column_name", "type": null, "description": ""}, {"name": "to", "type": null, "description": ""}, {"name": "field", "type": null, "description": ""}], "created_at": 1784225035.267328, "supported_languages": null}, "macro.dbt.default__test_not_null": {"name": "default__test_not_null", "resource_type": "macro", "package_name": "dbt", "path": "macros/generic_test_sql/not_null.sql", "original_file_path": "macros/generic_test_sql/not_null.sql", "unique_id": "macro.dbt.default__test_not_null", "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 %}", "depends_on": {"macros": ["macro.dbt.should_store_failures"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}, {"name": "column_name", "type": null, "description": ""}], "created_at": 1784225035.267445, "supported_languages": null}, "macro.dbt.default__test_unique": {"name": "default__test_unique", "resource_type": "macro", "package_name": "dbt", "path": "macros/generic_test_sql/unique.sql", "original_file_path": "macros/generic_test_sql/unique.sql", "unique_id": "macro.dbt.default__test_unique", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}, {"name": "column_name", "type": null, "description": ""}], "created_at": 1784225035.26754, "supported_languages": null}, "macro.dbt.default__test_accepted_values": {"name": "default__test_accepted_values", "resource_type": "macro", "package_name": "dbt", "path": "macros/generic_test_sql/accepted_values.sql", "original_file_path": "macros/generic_test_sql/accepted_values.sql", "unique_id": "macro.dbt.default__test_accepted_values", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}, {"name": "column_name", "type": null, "description": ""}, {"name": "values", "type": null, "description": ""}, {"name": "quote", "type": null, "description": ""}], "created_at": 1784225035.2677429, "supported_languages": null}, "macro.dbt.statement": {"name": "statement", "resource_type": "macro", "package_name": "dbt", "path": "macros/etc/statement.sql", "original_file_path": "macros/etc/statement.sql", "unique_id": "macro.dbt.statement", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "name", "type": null, "description": ""}, {"name": "fetch_result", "type": null, "description": ""}, {"name": "auto_begin", "type": null, "description": ""}, {"name": "language", "type": null, "description": ""}], "created_at": 1784225035.268249, "supported_languages": null}, "macro.dbt.noop_statement": {"name": "noop_statement", "resource_type": "macro", "package_name": "dbt", "path": "macros/etc/statement.sql", "original_file_path": "macros/etc/statement.sql", "unique_id": "macro.dbt.noop_statement", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "name", "type": null, "description": ""}, {"name": "message", "type": null, "description": ""}, {"name": "code", "type": null, "description": ""}, {"name": "rows_affected", "type": null, "description": ""}, {"name": "res", "type": null, "description": ""}], "created_at": 1784225035.268476, "supported_languages": null}, "macro.dbt.run_query": {"name": "run_query", "resource_type": "macro", "package_name": "dbt", "path": "macros/etc/statement.sql", "original_file_path": "macros/etc/statement.sql", "unique_id": "macro.dbt.run_query", "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 %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.2685912, "supported_languages": null}, "macro.dbt.convert_datetime": {"name": "convert_datetime", "resource_type": "macro", "package_name": "dbt", "path": "macros/etc/datetime.sql", "original_file_path": "macros/etc/datetime.sql", "unique_id": "macro.dbt.convert_datetime", "macro_sql": "{% macro convert_datetime(date_str, date_fmt) %}\n\n {% set error_msg -%}\n The provided partition date '{{ date_str }}' does not match the expected format '{{ date_fmt }}'\n {%- endset %}\n\n {% set res = try_or_compiler_error(error_msg, modules.datetime.datetime.strptime, date_str.strip(), date_fmt) %}\n {{ return(res) }}\n\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "date_str", "type": null, "description": ""}, {"name": "date_fmt", "type": null, "description": ""}], "created_at": 1784225035.268883, "supported_languages": null}, "macro.dbt.dates_in_range": {"name": "dates_in_range", "resource_type": "macro", "package_name": "dbt", "path": "macros/etc/datetime.sql", "original_file_path": "macros/etc/datetime.sql", "unique_id": "macro.dbt.dates_in_range", "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 %}", "depends_on": {"macros": ["macro.dbt.convert_datetime"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "start_date_str", "type": null, "description": ""}, {"name": "end_date_str", "type": null, "description": ""}, {"name": "in_fmt", "type": null, "description": ""}, {"name": "out_fmt", "type": null, "description": ""}], "created_at": 1784225035.2693288, "supported_languages": null}, "macro.dbt.partition_range": {"name": "partition_range", "resource_type": "macro", "package_name": "dbt", "path": "macros/etc/datetime.sql", "original_file_path": "macros/etc/datetime.sql", "unique_id": "macro.dbt.partition_range", "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 %}", "depends_on": {"macros": ["macro.dbt.dates_in_range"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "raw_partition_date", "type": null, "description": ""}, {"name": "date_fmt", "type": null, "description": ""}], "created_at": 1784225035.269717, "supported_languages": null}, "macro.dbt.py_current_timestring": {"name": "py_current_timestring", "resource_type": "macro", "package_name": "dbt", "path": "macros/etc/datetime.sql", "original_file_path": "macros/etc/datetime.sql", "unique_id": "macro.dbt.py_current_timestring", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.269832, "supported_languages": null}, "macro.dbt.except": {"name": "except", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/except.sql", "original_file_path": "macros/utils/except.sql", "unique_id": "macro.dbt.except", "macro_sql": "{% macro except() %}\n {{ return(adapter.dispatch('except', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__except"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.269933, "supported_languages": null}, "macro.dbt.default__except": {"name": "default__except", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/except.sql", "original_file_path": "macros/utils/except.sql", "unique_id": "macro.dbt.default__except", "macro_sql": "{% macro default__except() %}\n\n except\n\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2699661, "supported_languages": null}, "macro.dbt.get_intervals_between": {"name": "get_intervals_between", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/date_spine.sql", "original_file_path": "macros/utils/date_spine.sql", "unique_id": "macro.dbt.get_intervals_between", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_intervals_between"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "start_date", "type": null, "description": ""}, {"name": "end_date", "type": null, "description": ""}, {"name": "datepart", "type": null, "description": ""}], "created_at": 1784225035.2701728, "supported_languages": null}, "macro.dbt.default__get_intervals_between": {"name": "default__get_intervals_between", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/date_spine.sql", "original_file_path": "macros/utils/date_spine.sql", "unique_id": "macro.dbt.default__get_intervals_between", "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 %}", "depends_on": {"macros": ["macro.dbt.statement", "macro.dbt.datediff"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "start_date", "type": null, "description": ""}, {"name": "end_date", "type": null, "description": ""}, {"name": "datepart", "type": null, "description": ""}], "created_at": 1784225035.270414, "supported_languages": null}, "macro.dbt.date_spine": {"name": "date_spine", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/date_spine.sql", "original_file_path": "macros/utils/date_spine.sql", "unique_id": "macro.dbt.date_spine", "macro_sql": "{% macro date_spine(datepart, start_date, end_date) %}\n {{ return(adapter.dispatch('date_spine', 'dbt')(datepart, start_date, end_date)) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__date_spine"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "datepart", "type": null, "description": ""}, {"name": "start_date", "type": null, "description": ""}, {"name": "end_date", "type": null, "description": ""}], "created_at": 1784225035.270505, "supported_languages": null}, "macro.dbt.default__date_spine": {"name": "default__date_spine", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/date_spine.sql", "original_file_path": "macros/utils/date_spine.sql", "unique_id": "macro.dbt.default__date_spine", "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 %}", "depends_on": {"macros": ["macro.dbt.generate_series", "macro.dbt.get_intervals_between", "macro.dbt.dateadd"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "datepart", "type": null, "description": ""}, {"name": "start_date", "type": null, "description": ""}, {"name": "end_date", "type": null, "description": ""}], "created_at": 1784225035.2706492, "supported_languages": null}, "macro.dbt.date": {"name": "date", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/date.sql", "original_file_path": "macros/utils/date.sql", "unique_id": "macro.dbt.date", "macro_sql": "{% macro date(year, month, day) %}\n {{ return(adapter.dispatch('date', 'dbt') (year, month, day)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__date"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "year", "type": null, "description": ""}, {"name": "month", "type": null, "description": ""}, {"name": "day", "type": null, "description": ""}], "created_at": 1784225035.2707798, "supported_languages": null}, "macro.dbt.default__date": {"name": "default__date", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/date.sql", "original_file_path": "macros/utils/date.sql", "unique_id": "macro.dbt.default__date", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "year", "type": null, "description": ""}, {"name": "month", "type": null, "description": ""}, {"name": "day", "type": null, "description": ""}], "created_at": 1784225035.2708921, "supported_languages": null}, "macro.dbt.replace": {"name": "replace", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/replace.sql", "original_file_path": "macros/utils/replace.sql", "unique_id": "macro.dbt.replace", "macro_sql": "{% macro replace(field, old_chars, new_chars) -%}\n {{ return(adapter.dispatch('replace', 'dbt') (field, old_chars, new_chars)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__replace"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "field", "type": null, "description": ""}, {"name": "old_chars", "type": null, "description": ""}, {"name": "new_chars", "type": null, "description": ""}], "created_at": 1784225035.271019, "supported_languages": null}, "macro.dbt.default__replace": {"name": "default__replace", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/replace.sql", "original_file_path": "macros/utils/replace.sql", "unique_id": "macro.dbt.default__replace", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "field", "type": null, "description": ""}, {"name": "old_chars", "type": null, "description": ""}, {"name": "new_chars", "type": null, "description": ""}], "created_at": 1784225035.2710881, "supported_languages": null}, "macro.dbt.concat": {"name": "concat", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/concat.sql", "original_file_path": "macros/utils/concat.sql", "unique_id": "macro.dbt.concat", "macro_sql": "{% macro concat(fields) -%}\n {{ return(adapter.dispatch('concat', 'dbt')(fields)) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__concat"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "fields", "type": null, "description": ""}], "created_at": 1784225035.271189, "supported_languages": null}, "macro.dbt.default__concat": {"name": "default__concat", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/concat.sql", "original_file_path": "macros/utils/concat.sql", "unique_id": "macro.dbt.default__concat", "macro_sql": "{% macro default__concat(fields) -%}\n {{ fields|join(' || ') }}\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "fields", "type": null, "description": ""}], "created_at": 1784225035.27124, "supported_languages": null}, "macro.dbt.get_powers_of_two": {"name": "get_powers_of_two", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/generate_series.sql", "original_file_path": "macros/utils/generate_series.sql", "unique_id": "macro.dbt.get_powers_of_two", "macro_sql": "{% macro get_powers_of_two(upper_bound) %}\n {{ return(adapter.dispatch('get_powers_of_two', 'dbt')(upper_bound)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_powers_of_two"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "upper_bound", "type": null, "description": ""}], "created_at": 1784225035.2714188, "supported_languages": null}, "macro.dbt.default__get_powers_of_two": {"name": "default__get_powers_of_two", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/generate_series.sql", "original_file_path": "macros/utils/generate_series.sql", "unique_id": "macro.dbt.default__get_powers_of_two", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "upper_bound", "type": null, "description": ""}], "created_at": 1784225035.271582, "supported_languages": null}, "macro.dbt.generate_series": {"name": "generate_series", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/generate_series.sql", "original_file_path": "macros/utils/generate_series.sql", "unique_id": "macro.dbt.generate_series", "macro_sql": "{% macro generate_series(upper_bound) %}\n {{ return(adapter.dispatch('generate_series', 'dbt')(upper_bound)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__generate_series"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "upper_bound", "type": null, "description": ""}], "created_at": 1784225035.2716532, "supported_languages": null}, "macro.dbt.default__generate_series": {"name": "default__generate_series", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/generate_series.sql", "original_file_path": "macros/utils/generate_series.sql", "unique_id": "macro.dbt.default__generate_series", "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 %}", "depends_on": {"macros": ["macro.dbt.get_powers_of_two"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "upper_bound", "type": null, "description": ""}], "created_at": 1784225035.271859, "supported_languages": null}, "macro.dbt.length": {"name": "length", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/length.sql", "original_file_path": "macros/utils/length.sql", "unique_id": "macro.dbt.length", "macro_sql": "{% macro length(expression) -%}\n {{ return(adapter.dispatch('length', 'dbt') (expression)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__length"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expression", "type": null, "description": ""}], "created_at": 1784225035.2719731, "supported_languages": null}, "macro.dbt.default__length": {"name": "default__length", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/length.sql", "original_file_path": "macros/utils/length.sql", "unique_id": "macro.dbt.default__length", "macro_sql": "{% macro default__length(expression) %}\n\n length(\n {{ expression }}\n )\n\n{%- endmacro -%}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expression", "type": null, "description": ""}], "created_at": 1784225035.2720158, "supported_languages": null}, "macro.dbt.dateadd": {"name": "dateadd", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/dateadd.sql", "original_file_path": "macros/utils/dateadd.sql", "unique_id": "macro.dbt.dateadd", "macro_sql": "{% macro dateadd(datepart, interval, from_date_or_timestamp) %}\n {{ return(adapter.dispatch('dateadd', 'dbt')(datepart, interval, from_date_or_timestamp)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__dateadd"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "datepart", "type": null, "description": ""}, {"name": "interval", "type": null, "description": ""}, {"name": "from_date_or_timestamp", "type": null, "description": ""}], "created_at": 1784225035.27214, "supported_languages": null}, "macro.dbt.default__dateadd": {"name": "default__dateadd", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/dateadd.sql", "original_file_path": "macros/utils/dateadd.sql", "unique_id": "macro.dbt.default__dateadd", "macro_sql": "{% macro default__dateadd(datepart, interval, from_date_or_timestamp) %}\n\n dateadd(\n {{ datepart }},\n {{ interval }},\n {{ from_date_or_timestamp }}\n )\n\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "datepart", "type": null, "description": ""}, {"name": "interval", "type": null, "description": ""}, {"name": "from_date_or_timestamp", "type": null, "description": ""}], "created_at": 1784225035.272204, "supported_languages": null}, "macro.dbt.intersect": {"name": "intersect", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/intersect.sql", "original_file_path": "macros/utils/intersect.sql", "unique_id": "macro.dbt.intersect", "macro_sql": "{% macro intersect() %}\n {{ return(adapter.dispatch('intersect', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__intersect"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.272293, "supported_languages": null}, "macro.dbt.default__intersect": {"name": "default__intersect", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/intersect.sql", "original_file_path": "macros/utils/intersect.sql", "unique_id": "macro.dbt.default__intersect", "macro_sql": "{% macro default__intersect() %}\n\n intersect\n\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.272367, "supported_languages": null}, "macro.dbt.escape_single_quotes": {"name": "escape_single_quotes", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/escape_single_quotes.sql", "original_file_path": "macros/utils/escape_single_quotes.sql", "unique_id": "macro.dbt.escape_single_quotes", "macro_sql": "{% macro escape_single_quotes(expression) %}\n {{ return(adapter.dispatch('escape_single_quotes', 'dbt') (expression)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__escape_single_quotes"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expression", "type": null, "description": ""}], "created_at": 1784225035.272479, "supported_languages": null}, "macro.dbt.default__escape_single_quotes": {"name": "default__escape_single_quotes", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/escape_single_quotes.sql", "original_file_path": "macros/utils/escape_single_quotes.sql", "unique_id": "macro.dbt.default__escape_single_quotes", "macro_sql": "{% macro default__escape_single_quotes(expression) -%}\n{{ expression | replace(\"'\",\"''\") }}\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expression", "type": null, "description": ""}], "created_at": 1784225035.272537, "supported_languages": null}, "macro.dbt.right": {"name": "right", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/right.sql", "original_file_path": "macros/utils/right.sql", "unique_id": "macro.dbt.right", "macro_sql": "{% macro right(string_text, length_expression) -%}\n {{ return(adapter.dispatch('right', 'dbt') (string_text, length_expression)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__right"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "string_text", "type": null, "description": ""}, {"name": "length_expression", "type": null, "description": ""}], "created_at": 1784225035.272651, "supported_languages": null}, "macro.dbt.default__right": {"name": "default__right", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/right.sql", "original_file_path": "macros/utils/right.sql", "unique_id": "macro.dbt.default__right", "macro_sql": "{% macro default__right(string_text, length_expression) %}\n\n right(\n {{ string_text }},\n {{ length_expression }}\n )\n\n{%- endmacro -%}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "string_text", "type": null, "description": ""}, {"name": "length_expression", "type": null, "description": ""}], "created_at": 1784225035.272707, "supported_languages": null}, "macro.dbt.listagg": {"name": "listagg", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/listagg.sql", "original_file_path": "macros/utils/listagg.sql", "unique_id": "macro.dbt.listagg", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__listagg"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "measure", "type": null, "description": ""}, {"name": "delimiter_text", "type": null, "description": ""}, {"name": "order_by_clause", "type": null, "description": ""}, {"name": "limit_num", "type": null, "description": ""}], "created_at": 1784225035.272888, "supported_languages": null}, "macro.dbt.default__listagg": {"name": "default__listagg", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/listagg.sql", "original_file_path": "macros/utils/listagg.sql", "unique_id": "macro.dbt.default__listagg", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "measure", "type": null, "description": ""}, {"name": "delimiter_text", "type": null, "description": ""}, {"name": "order_by_clause", "type": null, "description": ""}, {"name": "limit_num", "type": null, "description": ""}], "created_at": 1784225035.273042, "supported_languages": null}, "macro.dbt.datediff": {"name": "datediff", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/datediff.sql", "original_file_path": "macros/utils/datediff.sql", "unique_id": "macro.dbt.datediff", "macro_sql": "{% macro datediff(first_date, second_date, datepart) %}\n {{ return(adapter.dispatch('datediff', 'dbt')(first_date, second_date, datepart)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__datediff"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "first_date", "type": null, "description": ""}, {"name": "second_date", "type": null, "description": ""}, {"name": "datepart", "type": null, "description": ""}], "created_at": 1784225035.2731678, "supported_languages": null}, "macro.dbt.default__datediff": {"name": "default__datediff", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/datediff.sql", "original_file_path": "macros/utils/datediff.sql", "unique_id": "macro.dbt.default__datediff", "macro_sql": "{% macro default__datediff(first_date, second_date, datepart) -%}\n\n datediff(\n {{ datepart }},\n {{ first_date }},\n {{ second_date }}\n )\n\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "first_date", "type": null, "description": ""}, {"name": "second_date", "type": null, "description": ""}, {"name": "datepart", "type": null, "description": ""}], "created_at": 1784225035.273233, "supported_languages": null}, "macro.dbt.safe_cast": {"name": "safe_cast", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/safe_cast.sql", "original_file_path": "macros/utils/safe_cast.sql", "unique_id": "macro.dbt.safe_cast", "macro_sql": "{% macro safe_cast(field, type) %}\n {{ return(adapter.dispatch('safe_cast', 'dbt') (field, type)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__safe_cast"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "field", "type": null, "description": ""}, {"name": "type", "type": null, "description": ""}], "created_at": 1784225035.2733471, "supported_languages": null}, "macro.dbt.default__safe_cast": {"name": "default__safe_cast", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/safe_cast.sql", "original_file_path": "macros/utils/safe_cast.sql", "unique_id": "macro.dbt.default__safe_cast", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "field", "type": null, "description": ""}, {"name": "type", "type": null, "description": ""}], "created_at": 1784225035.273403, "supported_languages": null}, "macro.dbt.equals": {"name": "equals", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/equals.sql", "original_file_path": "macros/utils/equals.sql", "unique_id": "macro.dbt.equals", "macro_sql": "{% macro equals(expr1, expr2) %}\n {{ return(adapter.dispatch('equals', 'dbt') (expr1, expr2)) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__equals"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expr1", "type": null, "description": ""}, {"name": "expr2", "type": null, "description": ""}], "created_at": 1784225035.273529, "supported_languages": null}, "macro.dbt.default__equals": {"name": "default__equals", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/equals.sql", "original_file_path": "macros/utils/equals.sql", "unique_id": "macro.dbt.default__equals", "macro_sql": "{% macro default__equals(expr1, expr2) -%}\n{%- if adapter.behavior.enable_truthy_nulls_equals_macro.no_warn %}\n case when (({{ expr1 }} = {{ expr2 }}) or ({{ expr1 }} is null and {{ expr2 }} is null))\n then 0\n else 1\n end = 0\n{%- else -%}\n ({{ expr1 }} = {{ expr2 }})\n{%- endif %}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expr1", "type": null, "description": ""}, {"name": "expr2", "type": null, "description": ""}], "created_at": 1784225035.273648, "supported_languages": null}, "macro.dbt.hash": {"name": "hash", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/hash.sql", "original_file_path": "macros/utils/hash.sql", "unique_id": "macro.dbt.hash", "macro_sql": "{% macro hash(field) -%}\n {{ return(adapter.dispatch('hash', 'dbt') (field)) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__hash"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "field", "type": null, "description": ""}], "created_at": 1784225035.273751, "supported_languages": null}, "macro.dbt.default__hash": {"name": "default__hash", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/hash.sql", "original_file_path": "macros/utils/hash.sql", "unique_id": "macro.dbt.default__hash", "macro_sql": "{% macro default__hash(field) -%}\n md5(cast({{ field }} as {{ api.Column.translate_type('string') }}))\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "field", "type": null, "description": ""}], "created_at": 1784225035.273814, "supported_languages": null}, "macro.dbt.cast_bool_to_text": {"name": "cast_bool_to_text", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/cast_bool_to_text.sql", "original_file_path": "macros/utils/cast_bool_to_text.sql", "unique_id": "macro.dbt.cast_bool_to_text", "macro_sql": "{% macro cast_bool_to_text(field) %}\n {{ adapter.dispatch('cast_bool_to_text', 'dbt') (field) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__cast_bool_to_text"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "field", "type": null, "description": ""}], "created_at": 1784225035.273911, "supported_languages": null}, "macro.dbt.default__cast_bool_to_text": {"name": "default__cast_bool_to_text", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/cast_bool_to_text.sql", "original_file_path": "macros/utils/cast_bool_to_text.sql", "unique_id": "macro.dbt.default__cast_bool_to_text", "macro_sql": "{% macro default__cast_bool_to_text(field) %}\n cast({{ field }} as {{ api.Column.translate_type('string') }})\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "field", "type": null, "description": ""}], "created_at": 1784225035.273973, "supported_languages": null}, "macro.dbt.cast": {"name": "cast", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/cast.sql", "original_file_path": "macros/utils/cast.sql", "unique_id": "macro.dbt.cast", "macro_sql": "{% macro cast(field, type) %}\n {{ return(adapter.dispatch('cast', 'dbt') (field, type)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__cast"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "field", "type": null, "description": ""}, {"name": "type", "type": null, "description": ""}], "created_at": 1784225035.274086, "supported_languages": null}, "macro.dbt.default__cast": {"name": "default__cast", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/cast.sql", "original_file_path": "macros/utils/cast.sql", "unique_id": "macro.dbt.default__cast", "macro_sql": "{% macro default__cast(field, type) %}\n cast({{field}} as {{type}})\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "field", "type": null, "description": ""}, {"name": "type", "type": null, "description": ""}], "created_at": 1784225035.2741382, "supported_languages": null}, "macro.dbt.any_value": {"name": "any_value", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/any_value.sql", "original_file_path": "macros/utils/any_value.sql", "unique_id": "macro.dbt.any_value", "macro_sql": "{% macro any_value(expression) -%}\n {{ return(adapter.dispatch('any_value', 'dbt') (expression)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__any_value"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expression", "type": null, "description": ""}], "created_at": 1784225035.274237, "supported_languages": null}, "macro.dbt.default__any_value": {"name": "default__any_value", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/any_value.sql", "original_file_path": "macros/utils/any_value.sql", "unique_id": "macro.dbt.default__any_value", "macro_sql": "{% macro default__any_value(expression) -%}\n\n any_value({{ expression }})\n\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expression", "type": null, "description": ""}], "created_at": 1784225035.274292, "supported_languages": null}, "macro.dbt.position": {"name": "position", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/position.sql", "original_file_path": "macros/utils/position.sql", "unique_id": "macro.dbt.position", "macro_sql": "{% macro position(substring_text, string_text) -%}\n {{ return(adapter.dispatch('position', 'dbt') (substring_text, string_text)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__position"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "substring_text", "type": null, "description": ""}, {"name": "string_text", "type": null, "description": ""}], "created_at": 1784225035.274412, "supported_languages": null}, "macro.dbt.default__position": {"name": "default__position", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/position.sql", "original_file_path": "macros/utils/position.sql", "unique_id": "macro.dbt.default__position", "macro_sql": "{% macro default__position(substring_text, string_text) %}\n\n position(\n {{ substring_text }} in {{ string_text }}\n )\n\n{%- endmacro -%}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "substring_text", "type": null, "description": ""}, {"name": "string_text", "type": null, "description": ""}], "created_at": 1784225035.274518, "supported_languages": null}, "macro.dbt.string_literal": {"name": "string_literal", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/literal.sql", "original_file_path": "macros/utils/literal.sql", "unique_id": "macro.dbt.string_literal", "macro_sql": "{%- macro string_literal(value) -%}\n {{ return(adapter.dispatch('string_literal', 'dbt') (value)) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__string_literal"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "value", "type": null, "description": ""}], "created_at": 1784225035.274627, "supported_languages": null}, "macro.dbt.default__string_literal": {"name": "default__string_literal", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/literal.sql", "original_file_path": "macros/utils/literal.sql", "unique_id": "macro.dbt.default__string_literal", "macro_sql": "{% macro default__string_literal(value) -%}\n '{{ value }}'\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "value", "type": null, "description": ""}], "created_at": 1784225035.274672, "supported_languages": null}, "macro.dbt.type_string": {"name": "type_string", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.type_string", "macro_sql": "\n\n{%- macro type_string() -%}\n {{ return(adapter.dispatch('type_string', 'dbt')()) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__type_string"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.274988, "supported_languages": null}, "macro.dbt.default__type_string": {"name": "default__type_string", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.default__type_string", "macro_sql": "{% macro default__type_string() %}\n {{ return(api.Column.translate_type(\"string\")) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275048, "supported_languages": null}, "macro.dbt.type_timestamp": {"name": "type_timestamp", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.type_timestamp", "macro_sql": "\n\n{%- macro type_timestamp() -%}\n {{ return(adapter.dispatch('type_timestamp', 'dbt')()) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__type_timestamp"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275115, "supported_languages": null}, "macro.dbt.default__type_timestamp": {"name": "default__type_timestamp", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.default__type_timestamp", "macro_sql": "{% macro default__type_timestamp() %}\n {{ return(api.Column.translate_type(\"timestamp\")) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275172, "supported_languages": null}, "macro.dbt.type_float": {"name": "type_float", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.type_float", "macro_sql": "\n\n{%- macro type_float() -%}\n {{ return(adapter.dispatch('type_float', 'dbt')()) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__type_float"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275233, "supported_languages": null}, "macro.dbt.default__type_float": {"name": "default__type_float", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.default__type_float", "macro_sql": "{% macro default__type_float() %}\n {{ return(api.Column.translate_type(\"float\")) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275297, "supported_languages": null}, "macro.dbt.type_numeric": {"name": "type_numeric", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.type_numeric", "macro_sql": "\n\n{%- macro type_numeric() -%}\n {{ return(adapter.dispatch('type_numeric', 'dbt')()) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__type_numeric"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275368, "supported_languages": null}, "macro.dbt.default__type_numeric": {"name": "default__type_numeric", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.default__type_numeric", "macro_sql": "{% macro default__type_numeric() %}\n {{ return(api.Column.numeric_type(\"numeric\", 28, 6)) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275438, "supported_languages": null}, "macro.dbt.type_bigint": {"name": "type_bigint", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.type_bigint", "macro_sql": "\n\n{%- macro type_bigint() -%}\n {{ return(adapter.dispatch('type_bigint', 'dbt')()) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__type_bigint"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275499, "supported_languages": null}, "macro.dbt.default__type_bigint": {"name": "default__type_bigint", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.default__type_bigint", "macro_sql": "{% macro default__type_bigint() %}\n {{ return(api.Column.translate_type(\"bigint\")) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275559, "supported_languages": null}, "macro.dbt.type_int": {"name": "type_int", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.type_int", "macro_sql": "\n\n{%- macro type_int() -%}\n {{ return(adapter.dispatch('type_int', 'dbt')()) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__type_int"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275618, "supported_languages": null}, "macro.dbt.default__type_int": {"name": "default__type_int", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.default__type_int", "macro_sql": "{%- macro default__type_int() -%}\n {{ return(api.Column.translate_type(\"integer\")) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2756748, "supported_languages": null}, "macro.dbt.type_boolean": {"name": "type_boolean", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.type_boolean", "macro_sql": "\n\n{%- macro type_boolean() -%}\n {{ return(adapter.dispatch('type_boolean', 'dbt')()) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__type_boolean"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275737, "supported_languages": null}, "macro.dbt.default__type_boolean": {"name": "default__type_boolean", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/data_types.sql", "original_file_path": "macros/utils/data_types.sql", "unique_id": "macro.dbt.default__type_boolean", "macro_sql": "{%- macro default__type_boolean() -%}\n {{ return(api.Column.translate_type(\"boolean\")) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.275792, "supported_languages": null}, "macro.dbt.array_concat": {"name": "array_concat", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/array_concat.sql", "original_file_path": "macros/utils/array_concat.sql", "unique_id": "macro.dbt.array_concat", "macro_sql": "{% macro array_concat(array_1, array_2) -%}\n {{ return(adapter.dispatch('array_concat', 'dbt')(array_1, array_2)) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__array_concat"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "array_1", "type": null, "description": ""}, {"name": "array_2", "type": null, "description": ""}], "created_at": 1784225035.275908, "supported_languages": null}, "macro.dbt.default__array_concat": {"name": "default__array_concat", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/array_concat.sql", "original_file_path": "macros/utils/array_concat.sql", "unique_id": "macro.dbt.default__array_concat", "macro_sql": "{% macro default__array_concat(array_1, array_2) -%}\n array_cat({{ array_1 }}, {{ array_2 }})\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "array_1", "type": null, "description": ""}, {"name": "array_2", "type": null, "description": ""}], "created_at": 1784225035.275962, "supported_languages": null}, "macro.dbt.bool_or": {"name": "bool_or", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/bool_or.sql", "original_file_path": "macros/utils/bool_or.sql", "unique_id": "macro.dbt.bool_or", "macro_sql": "{% macro bool_or(expression) -%}\n {{ return(adapter.dispatch('bool_or', 'dbt') (expression)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__bool_or"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expression", "type": null, "description": ""}], "created_at": 1784225035.2760599, "supported_languages": null}, "macro.dbt.default__bool_or": {"name": "default__bool_or", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/bool_or.sql", "original_file_path": "macros/utils/bool_or.sql", "unique_id": "macro.dbt.default__bool_or", "macro_sql": "{% macro default__bool_or(expression) -%}\n\n bool_or({{ expression }})\n\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "expression", "type": null, "description": ""}], "created_at": 1784225035.276101, "supported_languages": null}, "macro.dbt.last_day": {"name": "last_day", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/last_day.sql", "original_file_path": "macros/utils/last_day.sql", "unique_id": "macro.dbt.last_day", "macro_sql": "{% macro last_day(date, datepart) %}\n {{ return(adapter.dispatch('last_day', 'dbt') (date, datepart)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__last_day"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "date", "type": null, "description": ""}, {"name": "datepart", "type": null, "description": ""}], "created_at": 1784225035.276224, "supported_languages": null}, "macro.dbt.default_last_day": {"name": "default_last_day", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/last_day.sql", "original_file_path": "macros/utils/last_day.sql", "unique_id": "macro.dbt.default_last_day", "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", "depends_on": {"macros": ["macro.dbt.dateadd", "macro.dbt.date_trunc"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "date", "type": null, "description": ""}, {"name": "datepart", "type": null, "description": ""}], "created_at": 1784225035.276372, "supported_languages": null}, "macro.dbt.default__last_day": {"name": "default__last_day", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/last_day.sql", "original_file_path": "macros/utils/last_day.sql", "unique_id": "macro.dbt.default__last_day", "macro_sql": "{% macro default__last_day(date, datepart) -%}\n {{dbt.default_last_day(date, datepart)}}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default_last_day"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "date", "type": null, "description": ""}, {"name": "datepart", "type": null, "description": ""}], "created_at": 1784225035.276434, "supported_languages": null}, "macro.dbt.split_part": {"name": "split_part", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/split_part.sql", "original_file_path": "macros/utils/split_part.sql", "unique_id": "macro.dbt.split_part", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__split_part"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "string_text", "type": null, "description": ""}, {"name": "delimiter_text", "type": null, "description": ""}, {"name": "part_number", "type": null, "description": ""}], "created_at": 1784225035.276583, "supported_languages": null}, "macro.dbt.default__split_part": {"name": "default__split_part", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/split_part.sql", "original_file_path": "macros/utils/split_part.sql", "unique_id": "macro.dbt.default__split_part", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "string_text", "type": null, "description": ""}, {"name": "delimiter_text", "type": null, "description": ""}, {"name": "part_number", "type": null, "description": ""}], "created_at": 1784225035.276649, "supported_languages": null}, "macro.dbt._split_part_negative": {"name": "_split_part_negative", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/split_part.sql", "original_file_path": "macros/utils/split_part.sql", "unique_id": "macro.dbt._split_part_negative", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "string_text", "type": null, "description": ""}, {"name": "delimiter_text", "type": null, "description": ""}, {"name": "part_number", "type": null, "description": ""}], "created_at": 1784225035.276733, "supported_languages": null}, "macro.dbt.date_trunc": {"name": "date_trunc", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/date_trunc.sql", "original_file_path": "macros/utils/date_trunc.sql", "unique_id": "macro.dbt.date_trunc", "macro_sql": "{% macro date_trunc(datepart, date) -%}\n {{ return(adapter.dispatch('date_trunc', 'dbt') (datepart, date)) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__date_trunc"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "datepart", "type": null, "description": ""}, {"name": "date", "type": null, "description": ""}], "created_at": 1784225035.276843, "supported_languages": null}, "macro.dbt.default__date_trunc": {"name": "default__date_trunc", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/date_trunc.sql", "original_file_path": "macros/utils/date_trunc.sql", "unique_id": "macro.dbt.default__date_trunc", "macro_sql": "{% macro default__date_trunc(datepart, date) -%}\n date_trunc('{{datepart}}', {{date}})\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "datepart", "type": null, "description": ""}, {"name": "date", "type": null, "description": ""}], "created_at": 1784225035.276897, "supported_languages": null}, "macro.dbt.array_construct": {"name": "array_construct", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/array_construct.sql", "original_file_path": "macros/utils/array_construct.sql", "unique_id": "macro.dbt.array_construct", "macro_sql": "{% macro array_construct(inputs=[], data_type=api.Column.translate_type('integer')) -%}\n {{ return(adapter.dispatch('array_construct', 'dbt')(inputs, data_type)) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__array_construct"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "inputs", "type": null, "description": ""}, {"name": "data_type", "type": null, "description": ""}], "created_at": 1784225035.277044, "supported_languages": null}, "macro.dbt.default__array_construct": {"name": "default__array_construct", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/array_construct.sql", "original_file_path": "macros/utils/array_construct.sql", "unique_id": "macro.dbt.default__array_construct", "macro_sql": "{% macro default__array_construct(inputs, data_type) -%}\n {% if inputs|length > 0 %}\n array[ {{ inputs|join(' , ') }} ]\n {% else %}\n array[]::{{data_type}}[]\n {% endif %}\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "inputs", "type": null, "description": ""}, {"name": "data_type", "type": null, "description": ""}], "created_at": 1784225035.27715, "supported_languages": null}, "macro.dbt.array_append": {"name": "array_append", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/array_append.sql", "original_file_path": "macros/utils/array_append.sql", "unique_id": "macro.dbt.array_append", "macro_sql": "{% macro array_append(array, new_element) -%}\n {{ return(adapter.dispatch('array_append', 'dbt')(array, new_element)) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__array_append"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "array", "type": null, "description": ""}, {"name": "new_element", "type": null, "description": ""}], "created_at": 1784225035.277266, "supported_languages": null}, "macro.dbt.default__array_append": {"name": "default__array_append", "resource_type": "macro", "package_name": "dbt", "path": "macros/utils/array_append.sql", "original_file_path": "macros/utils/array_append.sql", "unique_id": "macro.dbt.default__array_append", "macro_sql": "{% macro default__array_append(array, new_element) -%}\n array_append({{ array }}, {{ new_element }})\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "array", "type": null, "description": ""}, {"name": "new_element", "type": null, "description": ""}], "created_at": 1784225035.277319, "supported_languages": null}, "macro.dbt.create_schema": {"name": "create_schema", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/schema.sql", "original_file_path": "macros/adapters/schema.sql", "unique_id": "macro.dbt.create_schema", "macro_sql": "{% macro create_schema(relation) -%}\n {{ adapter.dispatch('create_schema', 'dbt')(relation) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__create_schema"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.2774458, "supported_languages": null}, "macro.dbt.default__create_schema": {"name": "default__create_schema", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/schema.sql", "original_file_path": "macros/adapters/schema.sql", "unique_id": "macro.dbt.default__create_schema", "macro_sql": "{% macro default__create_schema(relation) -%}\n {%- call statement('create_schema') -%}\n create schema if not exists {{ relation.without_identifier() }}\n {% endcall %}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.277517, "supported_languages": null}, "macro.dbt.drop_schema": {"name": "drop_schema", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/schema.sql", "original_file_path": "macros/adapters/schema.sql", "unique_id": "macro.dbt.drop_schema", "macro_sql": "{% macro drop_schema(relation) -%}\n {{ adapter.dispatch('drop_schema', 'dbt')(relation) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__drop_schema"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.277577, "supported_languages": null}, "macro.dbt.default__drop_schema": {"name": "default__drop_schema", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/schema.sql", "original_file_path": "macros/adapters/schema.sql", "unique_id": "macro.dbt.default__drop_schema", "macro_sql": "{% macro default__drop_schema(relation) -%}\n {%- call statement('drop_schema') -%}\n drop schema if exists {{ relation.without_identifier() }} cascade\n {% endcall %}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.277645, "supported_languages": null}, "macro.dbt.current_timestamp": {"name": "current_timestamp", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/timestamps.sql", "original_file_path": "macros/adapters/timestamps.sql", "unique_id": "macro.dbt.current_timestamp", "macro_sql": "{%- macro current_timestamp() -%}\n {{ adapter.dispatch('current_timestamp', 'dbt')() }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt_postgres.postgres__current_timestamp"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.277834, "supported_languages": null}, "macro.dbt.default__current_timestamp": {"name": "default__current_timestamp", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/timestamps.sql", "original_file_path": "macros/adapters/timestamps.sql", "unique_id": "macro.dbt.default__current_timestamp", "macro_sql": "{% macro default__current_timestamp() -%}\n {{ exceptions.raise_not_implemented(\n 'current_timestamp macro not implemented for adapter ' + adapter.type()) }}\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.277892, "supported_languages": null}, "macro.dbt.snapshot_get_time": {"name": "snapshot_get_time", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/timestamps.sql", "original_file_path": "macros/adapters/timestamps.sql", "unique_id": "macro.dbt.snapshot_get_time", "macro_sql": "\n\n{%- macro snapshot_get_time() -%}\n {{ adapter.dispatch('snapshot_get_time', 'dbt')() }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt_postgres.postgres__snapshot_get_time"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.277945, "supported_languages": null}, "macro.dbt.default__snapshot_get_time": {"name": "default__snapshot_get_time", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/timestamps.sql", "original_file_path": "macros/adapters/timestamps.sql", "unique_id": "macro.dbt.default__snapshot_get_time", "macro_sql": "{% macro default__snapshot_get_time() %}\n {{ current_timestamp() }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.current_timestamp"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.277985, "supported_languages": null}, "macro.dbt.get_snapshot_get_time_data_type": {"name": "get_snapshot_get_time_data_type", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/timestamps.sql", "original_file_path": "macros/adapters/timestamps.sql", "unique_id": "macro.dbt.get_snapshot_get_time_data_type", "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 %}", "depends_on": {"macros": ["macro.dbt.snapshot_get_time", "macro.dbt_postgres.postgres__snapshot_get_time", "macro.dbt.get_column_schema_from_query"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2781398, "supported_languages": null}, "macro.dbt.current_timestamp_backcompat": {"name": "current_timestamp_backcompat", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/timestamps.sql", "original_file_path": "macros/adapters/timestamps.sql", "unique_id": "macro.dbt.current_timestamp_backcompat", "macro_sql": "{% macro current_timestamp_backcompat() %}\n {{ return(adapter.dispatch('current_timestamp_backcompat', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__current_timestamp_backcompat"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2782028, "supported_languages": null}, "macro.dbt.default__current_timestamp_backcompat": {"name": "default__current_timestamp_backcompat", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/timestamps.sql", "original_file_path": "macros/adapters/timestamps.sql", "unique_id": "macro.dbt.default__current_timestamp_backcompat", "macro_sql": "{% macro default__current_timestamp_backcompat() %}\n current_timestamp::timestamp\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2782369, "supported_languages": null}, "macro.dbt.current_timestamp_in_utc_backcompat": {"name": "current_timestamp_in_utc_backcompat", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/timestamps.sql", "original_file_path": "macros/adapters/timestamps.sql", "unique_id": "macro.dbt.current_timestamp_in_utc_backcompat", "macro_sql": "{% macro current_timestamp_in_utc_backcompat() %}\n {{ return(adapter.dispatch('current_timestamp_in_utc_backcompat', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__current_timestamp_in_utc_backcompat"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.278307, "supported_languages": null}, "macro.dbt.default__current_timestamp_in_utc_backcompat": {"name": "default__current_timestamp_in_utc_backcompat", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/timestamps.sql", "original_file_path": "macros/adapters/timestamps.sql", "unique_id": "macro.dbt.default__current_timestamp_in_utc_backcompat", "macro_sql": "{% macro default__current_timestamp_in_utc_backcompat() %}\n {{ return(adapter.dispatch('current_timestamp_backcompat', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.current_timestamp_backcompat", "macro.dbt_postgres.postgres__current_timestamp_backcompat"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.278421, "supported_languages": null}, "macro.dbt.get_create_index_sql": {"name": "get_create_index_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/indexes.sql", "original_file_path": "macros/adapters/indexes.sql", "unique_id": "macro.dbt.get_create_index_sql", "macro_sql": "{% macro get_create_index_sql(relation, index_dict) -%}\n {{ return(adapter.dispatch('get_create_index_sql', 'dbt')(relation, index_dict)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_create_index_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "index_dict", "type": null, "description": ""}], "created_at": 1784225035.27862, "supported_languages": null}, "macro.dbt.default__get_create_index_sql": {"name": "default__get_create_index_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/indexes.sql", "original_file_path": "macros/adapters/indexes.sql", "unique_id": "macro.dbt.default__get_create_index_sql", "macro_sql": "{% macro default__get_create_index_sql(relation, index_dict) -%}\n {% do return(None) %}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "index_dict", "type": null, "description": ""}], "created_at": 1784225035.2786748, "supported_languages": null}, "macro.dbt.create_indexes": {"name": "create_indexes", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/indexes.sql", "original_file_path": "macros/adapters/indexes.sql", "unique_id": "macro.dbt.create_indexes", "macro_sql": "{% macro create_indexes(relation) -%}\n {{ adapter.dispatch('create_indexes', 'dbt')(relation) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt.default__create_indexes"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.278738, "supported_languages": null}, "macro.dbt.default__create_indexes": {"name": "default__create_indexes", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/indexes.sql", "original_file_path": "macros/adapters/indexes.sql", "unique_id": "macro.dbt.default__create_indexes", "macro_sql": "{% macro default__create_indexes(relation) -%}\n {%- set _indexes = config.get('indexes', default=[]) -%}\n\n {% for _index_dict in _indexes %}\n {% set create_index_sql = get_create_index_sql(relation, _index_dict) %}\n {% if create_index_sql %}\n {% do run_query(create_index_sql) %}\n {% endif %}\n {% endfor %}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.get_create_index_sql", "macro.dbt.run_query"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.2788858, "supported_languages": null}, "macro.dbt.get_drop_index_sql": {"name": "get_drop_index_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/indexes.sql", "original_file_path": "macros/adapters/indexes.sql", "unique_id": "macro.dbt.get_drop_index_sql", "macro_sql": "{% macro get_drop_index_sql(relation, index_name) -%}\n {{ adapter.dispatch('get_drop_index_sql', 'dbt')(relation, index_name) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_drop_index_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "index_name", "type": null, "description": ""}], "created_at": 1784225035.278961, "supported_languages": null}, "macro.dbt.default__get_drop_index_sql": {"name": "default__get_drop_index_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/indexes.sql", "original_file_path": "macros/adapters/indexes.sql", "unique_id": "macro.dbt.default__get_drop_index_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "index_name", "type": null, "description": ""}], "created_at": 1784225035.279016, "supported_languages": null}, "macro.dbt.get_show_indexes_sql": {"name": "get_show_indexes_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/indexes.sql", "original_file_path": "macros/adapters/indexes.sql", "unique_id": "macro.dbt.get_show_indexes_sql", "macro_sql": "{% macro get_show_indexes_sql(relation) -%}\n {{ adapter.dispatch('get_show_indexes_sql', 'dbt')(relation) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_show_indexes_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.279076, "supported_languages": null}, "macro.dbt.default__get_show_indexes_sql": {"name": "default__get_show_indexes_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/indexes.sql", "original_file_path": "macros/adapters/indexes.sql", "unique_id": "macro.dbt.default__get_show_indexes_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.2791219, "supported_languages": null}, "macro.dbt.make_intermediate_relation": {"name": "make_intermediate_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.make_intermediate_relation", "macro_sql": "{% macro make_intermediate_relation(base_relation, suffix='__dbt_tmp') %}\n {{ return(adapter.dispatch('make_intermediate_relation', 'dbt')(base_relation, suffix)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__make_intermediate_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "base_relation", "type": null, "description": ""}, {"name": "suffix", "type": null, "description": ""}], "created_at": 1784225035.279399, "supported_languages": null}, "macro.dbt.default__make_intermediate_relation": {"name": "default__make_intermediate_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.default__make_intermediate_relation", "macro_sql": "{% macro default__make_intermediate_relation(base_relation, suffix) %}\n {{ return(default__make_temp_relation(base_relation, suffix)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__make_temp_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "base_relation", "type": null, "description": ""}, {"name": "suffix", "type": null, "description": ""}], "created_at": 1784225035.2794619, "supported_languages": null}, "macro.dbt.make_temp_relation": {"name": "make_temp_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.make_temp_relation", "macro_sql": "{% macro make_temp_relation(base_relation, suffix='__dbt_tmp') %}\n {#-- This ensures microbatch batches get unique temp relations to avoid clobbering --#}\n {% if suffix == '__dbt_tmp' and model.batch %}\n {% set suffix = suffix ~ '_' ~ model.batch.id %}\n {% endif %}\n\n {{ return(adapter.dispatch('make_temp_relation', 'dbt')(base_relation, suffix)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__make_temp_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "base_relation", "type": null, "description": ""}, {"name": "suffix", "type": null, "description": ""}], "created_at": 1784225035.279677, "supported_languages": null}, "macro.dbt.default__make_temp_relation": {"name": "default__make_temp_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.default__make_temp_relation", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "base_relation", "type": null, "description": ""}, {"name": "suffix", "type": null, "description": ""}], "created_at": 1784225035.279831, "supported_languages": null}, "macro.dbt.make_backup_relation": {"name": "make_backup_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.make_backup_relation", "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 %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__make_backup_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "base_relation", "type": null, "description": ""}, {"name": "backup_relation_type", "type": null, "description": ""}, {"name": "suffix", "type": null, "description": ""}], "created_at": 1784225035.2799392, "supported_languages": null}, "macro.dbt.default__make_backup_relation": {"name": "default__make_backup_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.default__make_backup_relation", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "base_relation", "type": null, "description": ""}, {"name": "backup_relation_type", "type": null, "description": ""}, {"name": "suffix", "type": null, "description": ""}], "created_at": 1784225035.280067, "supported_languages": null}, "macro.dbt.truncate_relation": {"name": "truncate_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.truncate_relation", "macro_sql": "{% macro truncate_relation(relation) -%}\n {{ return(adapter.dispatch('truncate_relation', 'dbt')(relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__truncate_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.280139, "supported_languages": null}, "macro.dbt.default__truncate_relation": {"name": "default__truncate_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.default__truncate_relation", "macro_sql": "{% macro default__truncate_relation(relation) -%}\n {% call statement('truncate_relation') -%}\n truncate table {{ relation.render() }}\n {%- endcall %}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.28021, "supported_languages": null}, "macro.dbt.get_or_create_relation": {"name": "get_or_create_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.get_or_create_relation", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_or_create_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "database", "type": null, "description": ""}, {"name": "schema", "type": null, "description": ""}, {"name": "identifier", "type": null, "description": ""}, {"name": "type", "type": null, "description": ""}], "created_at": 1784225035.2803042, "supported_languages": null}, "macro.dbt.default__get_or_create_relation": {"name": "default__get_or_create_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.default__get_or_create_relation", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "database", "type": null, "description": ""}, {"name": "schema", "type": null, "description": ""}, {"name": "identifier", "type": null, "description": ""}, {"name": "type", "type": null, "description": ""}], "created_at": 1784225035.280512, "supported_languages": null}, "macro.dbt.load_cached_relation": {"name": "load_cached_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.load_cached_relation", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.2806022, "supported_languages": null}, "macro.dbt.load_relation": {"name": "load_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/relation.sql", "original_file_path": "macros/adapters/relation.sql", "unique_id": "macro.dbt.load_relation", "macro_sql": "{% macro load_relation(relation) %}\n {{ return(load_cached_relation(relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.load_cached_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.280659, "supported_languages": null}, "macro.dbt.is_core_v2": {"name": "is_core_v2", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/runtime.sql", "original_file_path": "macros/adapters/runtime.sql", "unique_id": "macro.dbt.is_core_v2", "macro_sql": "{% macro is_core_v2() -%}\n {%- set major_version = (dbt_version.split('.') | first) | int -%}\n {{ return(major_version == 2) }}\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.280787, "supported_languages": null}, "macro.dbt.collect_freshness": {"name": "collect_freshness", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/freshness.sql", "original_file_path": "macros/adapters/freshness.sql", "unique_id": "macro.dbt.collect_freshness", "macro_sql": "{% macro collect_freshness(source, loaded_at_field, filter) %}\n {{ return(adapter.dispatch('collect_freshness', 'dbt')(source, loaded_at_field, filter))}}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__collect_freshness"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source", "type": null, "description": ""}, {"name": "loaded_at_field", "type": null, "description": ""}, {"name": "filter", "type": null, "description": ""}], "created_at": 1784225035.2810292, "supported_languages": null}, "macro.dbt.default__collect_freshness": {"name": "default__collect_freshness", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/freshness.sql", "original_file_path": "macros/adapters/freshness.sql", "unique_id": "macro.dbt.default__collect_freshness", "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 %}", "depends_on": {"macros": ["macro.dbt.statement", "macro.dbt.current_timestamp"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source", "type": null, "description": ""}, {"name": "loaded_at_field", "type": null, "description": ""}, {"name": "filter", "type": null, "description": ""}], "created_at": 1784225035.281193, "supported_languages": null}, "macro.dbt.collect_freshness_custom_sql": {"name": "collect_freshness_custom_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/freshness.sql", "original_file_path": "macros/adapters/freshness.sql", "unique_id": "macro.dbt.collect_freshness_custom_sql", "macro_sql": "{% macro collect_freshness_custom_sql(source, loaded_at_query) %}\n {{ return(adapter.dispatch('collect_freshness_custom_sql', 'dbt')(source, loaded_at_query))}}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__collect_freshness_custom_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source", "type": null, "description": ""}, {"name": "loaded_at_query", "type": null, "description": ""}], "created_at": 1784225035.281279, "supported_languages": null}, "macro.dbt.default__collect_freshness_custom_sql": {"name": "default__collect_freshness_custom_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/freshness.sql", "original_file_path": "macros/adapters/freshness.sql", "unique_id": "macro.dbt.default__collect_freshness_custom_sql", "macro_sql": "{% macro default__collect_freshness_custom_sql(source, loaded_at_query) %}\n {% call statement('collect_freshness_custom_sql', fetch_result=True, auto_begin=False) -%}\n with source_query as (\n {{ loaded_at_query }}\n )\n select\n (select * from source_query) as max_loaded_at,\n {{ current_timestamp() }} as snapshotted_at\n {% endcall %}\n {{ return(load_result('collect_freshness_custom_sql')) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.statement", "macro.dbt.current_timestamp"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "source", "type": null, "description": ""}, {"name": "loaded_at_query", "type": null, "description": ""}], "created_at": 1784225035.2814121, "supported_languages": null}, "macro.dbt.validate_sql": {"name": "validate_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/validate_sql.sql", "original_file_path": "macros/adapters/validate_sql.sql", "unique_id": "macro.dbt.validate_sql", "macro_sql": "{% macro validate_sql(sql) -%}\n {{ return(adapter.dispatch('validate_sql', 'dbt')(sql)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__validate_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.2815292, "supported_languages": null}, "macro.dbt.default__validate_sql": {"name": "default__validate_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/validate_sql.sql", "original_file_path": "macros/adapters/validate_sql.sql", "unique_id": "macro.dbt.default__validate_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}], "created_at": 1784225035.281624, "supported_languages": null}, "macro.dbt.copy_grants": {"name": "copy_grants", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.copy_grants", "macro_sql": "{% macro copy_grants() %}\n {{ return(adapter.dispatch('copy_grants', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__copy_grants"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2820969, "supported_languages": null}, "macro.dbt.default__copy_grants": {"name": "default__copy_grants", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.default__copy_grants", "macro_sql": "{% macro default__copy_grants() %}\n {{ return(True) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.282142, "supported_languages": null}, "macro.dbt.support_multiple_grantees_per_dcl_statement": {"name": "support_multiple_grantees_per_dcl_statement", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.support_multiple_grantees_per_dcl_statement", "macro_sql": "{% macro support_multiple_grantees_per_dcl_statement() %}\n {{ return(adapter.dispatch('support_multiple_grantees_per_dcl_statement', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__support_multiple_grantees_per_dcl_statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2822049, "supported_languages": null}, "macro.dbt.default__support_multiple_grantees_per_dcl_statement": {"name": "default__support_multiple_grantees_per_dcl_statement", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.default__support_multiple_grantees_per_dcl_statement", "macro_sql": "\n\n{%- macro default__support_multiple_grantees_per_dcl_statement() -%}\n {{ return(True) }}\n{%- endmacro -%}\n\n\n", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.282249, "supported_languages": null}, "macro.dbt.should_revoke": {"name": "should_revoke", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.should_revoke", "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 %}", "depends_on": {"macros": ["macro.dbt.copy_grants"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "existing_relation", "type": null, "description": ""}, {"name": "full_refresh_mode", "type": null, "description": ""}], "created_at": 1784225035.282384, "supported_languages": null}, "macro.dbt.get_show_grant_sql": {"name": "get_show_grant_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.get_show_grant_sql", "macro_sql": "{% macro get_show_grant_sql(relation) %}\n {{ return(adapter.dispatch(\"get_show_grant_sql\", \"dbt\")(relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_show_grant_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.282457, "supported_languages": null}, "macro.dbt.default__get_show_grant_sql": {"name": "default__get_show_grant_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.default__get_show_grant_sql", "macro_sql": "{% macro default__get_show_grant_sql(relation) %}\n show grants on {{ relation.render() }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.282503, "supported_languages": null}, "macro.dbt.get_grant_sql": {"name": "get_grant_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.get_grant_sql", "macro_sql": "{% macro get_grant_sql(relation, privilege, grantees) %}\n {{ return(adapter.dispatch('get_grant_sql', 'dbt')(relation, privilege, grantees)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_grant_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "privilege", "type": null, "description": ""}, {"name": "grantees", "type": null, "description": ""}], "created_at": 1784225035.2825952, "supported_languages": null}, "macro.dbt.default__get_grant_sql": {"name": "default__get_grant_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.default__get_grant_sql", "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", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "privilege", "type": null, "description": ""}, {"name": "grantees", "type": null, "description": ""}], "created_at": 1784225035.282686, "supported_languages": null}, "macro.dbt.get_revoke_sql": {"name": "get_revoke_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.get_revoke_sql", "macro_sql": "{% macro get_revoke_sql(relation, privilege, grantees) %}\n {{ return(adapter.dispatch('get_revoke_sql', 'dbt')(relation, privilege, grantees)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_revoke_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "privilege", "type": null, "description": ""}, {"name": "grantees", "type": null, "description": ""}], "created_at": 1784225035.282781, "supported_languages": null}, "macro.dbt.default__get_revoke_sql": {"name": "default__get_revoke_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.default__get_revoke_sql", "macro_sql": "\n\n{%- macro default__get_revoke_sql(relation, privilege, grantees) -%}\n {%- set quoted_grantees = [] -%}\n {%- for grantee in grantees -%}\n {%- do quoted_grantees.append(adapter.quote(grantee)) -%}\n {%- endfor -%}\n revoke {{ privilege }} on {{ relation.render() }} from {{ quoted_grantees | join(', ') }}\n{%- endmacro -%}\n\n\n", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "privilege", "type": null, "description": ""}, {"name": "grantees", "type": null, "description": ""}], "created_at": 1784225035.282943, "supported_languages": null}, "macro.dbt.get_dcl_statement_list": {"name": "get_dcl_statement_list", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.get_dcl_statement_list", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_dcl_statement_list"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "grant_config", "type": null, "description": ""}, {"name": "get_dcl_macro", "type": null, "description": ""}], "created_at": 1784225035.283037, "supported_languages": null}, "macro.dbt.default__get_dcl_statement_list": {"name": "default__get_dcl_statement_list", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.default__get_dcl_statement_list", "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 %}", "depends_on": {"macros": ["macro.dbt.support_multiple_grantees_per_dcl_statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "grant_config", "type": null, "description": ""}, {"name": "get_dcl_macro", "type": null, "description": ""}], "created_at": 1784225035.2833128, "supported_languages": null}, "macro.dbt.call_dcl_statements": {"name": "call_dcl_statements", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.call_dcl_statements", "macro_sql": "{% macro call_dcl_statements(dcl_statement_list) %}\n {{ return(adapter.dispatch(\"call_dcl_statements\", \"dbt\")(dcl_statement_list)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__call_dcl_statements"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "dcl_statement_list", "type": null, "description": ""}], "created_at": 1784225035.2833889, "supported_languages": null}, "macro.dbt.default__call_dcl_statements": {"name": "default__call_dcl_statements", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.default__call_dcl_statements", "macro_sql": "{% macro default__call_dcl_statements(dcl_statement_list) %}\n {#\n -- By default, supply all grant + revoke statements in a single semicolon-separated block,\n -- so that they're all processed together.\n\n -- Some databases do not support this. Those adapters will need to override this macro\n -- to run each statement individually.\n #}\n {% call statement('grants') %}\n {% for dcl_statement in dcl_statement_list %}\n {{ dcl_statement }};\n {% endfor %}\n {% endcall %}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "dcl_statement_list", "type": null, "description": ""}], "created_at": 1784225035.28349, "supported_languages": null}, "macro.dbt.apply_grants": {"name": "apply_grants", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.apply_grants", "macro_sql": "{% macro apply_grants(relation, grant_config, should_revoke) %}\n {{ return(adapter.dispatch(\"apply_grants\", \"dbt\")(relation, grant_config, should_revoke)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__apply_grants"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "grant_config", "type": null, "description": ""}, {"name": "should_revoke", "type": null, "description": ""}], "created_at": 1784225035.2836301, "supported_languages": null}, "macro.dbt.default__apply_grants": {"name": "default__apply_grants", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/apply_grants.sql", "original_file_path": "macros/adapters/apply_grants.sql", "unique_id": "macro.dbt.default__apply_grants", "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 %}", "depends_on": {"macros": ["macro.dbt.run_query", "macro.dbt.get_show_grant_sql", "macro.dbt.get_dcl_statement_list", "macro.dbt.call_dcl_statements"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "grant_config", "type": null, "description": ""}, {"name": "should_revoke", "type": null, "description": ""}], "created_at": 1784225035.284075, "supported_languages": null}, "macro.dbt.get_show_sql": {"name": "get_show_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/show.sql", "original_file_path": "macros/adapters/show.sql", "unique_id": "macro.dbt.get_show_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.get_limit_subquery_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "compiled_code", "type": null, "description": ""}, {"name": "sql_header", "type": null, "description": ""}, {"name": "limit", "type": null, "description": ""}], "created_at": 1784225035.284245, "supported_languages": null}, "macro.dbt.get_limit_subquery_sql": {"name": "get_limit_subquery_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/show.sql", "original_file_path": "macros/adapters/show.sql", "unique_id": "macro.dbt.get_limit_subquery_sql", "macro_sql": "\n{%- macro get_limit_subquery_sql(sql, limit) -%}\n {{ adapter.dispatch('get_limit_sql', 'dbt')(sql, limit) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__get_limit_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}, {"name": "limit", "type": null, "description": ""}], "created_at": 1784225035.284317, "supported_languages": null}, "macro.dbt.default__get_limit_sql": {"name": "default__get_limit_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/show.sql", "original_file_path": "macros/adapters/show.sql", "unique_id": "macro.dbt.default__get_limit_sql", "macro_sql": "{% macro default__get_limit_sql(sql, limit) %}\n {{ sql }}\n {% if limit is not none %}\n limit {{ limit }}\n {%- endif -%}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "sql", "type": null, "description": ""}, {"name": "limit", "type": null, "description": ""}], "created_at": 1784225035.2843919, "supported_languages": null}, "macro.dbt.alter_column_comment": {"name": "alter_column_comment", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/persist_docs.sql", "original_file_path": "macros/adapters/persist_docs.sql", "unique_id": "macro.dbt.alter_column_comment", "macro_sql": "{% macro alter_column_comment(relation, column_dict) -%}\n {{ return(adapter.dispatch('alter_column_comment', 'dbt')(relation, column_dict)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__alter_column_comment"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "column_dict", "type": null, "description": ""}], "created_at": 1784225035.284659, "supported_languages": null}, "macro.dbt.default__alter_column_comment": {"name": "default__alter_column_comment", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/persist_docs.sql", "original_file_path": "macros/adapters/persist_docs.sql", "unique_id": "macro.dbt.default__alter_column_comment", "macro_sql": "{% macro default__alter_column_comment(relation, column_dict) -%}\n {{ exceptions.raise_not_implemented(\n 'alter_column_comment macro not implemented for adapter '+adapter.type()) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "column_dict", "type": null, "description": ""}], "created_at": 1784225035.284723, "supported_languages": null}, "macro.dbt.alter_relation_comment": {"name": "alter_relation_comment", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/persist_docs.sql", "original_file_path": "macros/adapters/persist_docs.sql", "unique_id": "macro.dbt.alter_relation_comment", "macro_sql": "{% macro alter_relation_comment(relation, relation_comment) -%}\n {{ return(adapter.dispatch('alter_relation_comment', 'dbt')(relation, relation_comment)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__alter_relation_comment"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "relation_comment", "type": null, "description": ""}], "created_at": 1784225035.2848, "supported_languages": null}, "macro.dbt.default__alter_relation_comment": {"name": "default__alter_relation_comment", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/persist_docs.sql", "original_file_path": "macros/adapters/persist_docs.sql", "unique_id": "macro.dbt.default__alter_relation_comment", "macro_sql": "{% macro default__alter_relation_comment(relation, relation_comment) -%}\n {{ exceptions.raise_not_implemented(\n 'alter_relation_comment macro not implemented for adapter '+adapter.type()) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "relation_comment", "type": null, "description": ""}], "created_at": 1784225035.284864, "supported_languages": null}, "macro.dbt.persist_docs": {"name": "persist_docs", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/persist_docs.sql", "original_file_path": "macros/adapters/persist_docs.sql", "unique_id": "macro.dbt.persist_docs", "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 %}", "depends_on": {"macros": ["macro.dbt.default__persist_docs"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "model", "type": null, "description": ""}, {"name": "for_relation", "type": null, "description": ""}, {"name": "for_columns", "type": null, "description": ""}], "created_at": 1784225035.284965, "supported_languages": null}, "macro.dbt.validate_doc_columns": {"name": "validate_doc_columns", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/persist_docs.sql", "original_file_path": "macros/adapters/persist_docs.sql", "unique_id": "macro.dbt.validate_doc_columns", "macro_sql": "{% macro validate_doc_columns(relation, column_dict, existing_column_names) %}\n {% set existing_lower = existing_column_names | map(\"lower\") | list %}\n {% set missing = [] %}\n {% set filtered = {} %}\n {% for col_name in column_dict %}\n {% set is_quoted = column_dict[col_name]['quote'] %}\n {% if is_quoted %}\n {% set present = col_name in existing_column_names %}\n {% else %}\n {% set present = col_name | lower in existing_lower %}\n {% endif %}\n {% if present %}\n {% do filtered.update({col_name: column_dict[col_name]}) %}\n {% else %}\n {% do missing.append(col_name) %}\n {% endif %}\n {% endfor %}\n {% if missing | length > 0 %}\n {{ exceptions.warn(\"In relation \" ~ relation.render() ~ \": The following columns are specified in the schema but are not present in the database: \" ~ missing | join(\", \")) }}\n {% endif %}\n {{ return(filtered) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "column_dict", "type": null, "description": ""}, {"name": "existing_column_names", "type": null, "description": ""}], "created_at": 1784225035.285355, "supported_languages": null}, "macro.dbt.default__persist_docs": {"name": "default__persist_docs", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/persist_docs.sql", "original_file_path": "macros/adapters/persist_docs.sql", "unique_id": "macro.dbt.default__persist_docs", "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 {% set existing_columns = adapter.get_columns_in_relation(relation) | map(attribute=\"name\") | list %}\n {% set filtered_columns = validate_doc_columns(relation, model.columns, existing_columns) %}\n {% set alter_comment_sql = alter_column_comment(relation, filtered_columns) %}\n {% if alter_comment_sql and alter_comment_sql | trim | length > 0 %}\n {% do run_query(alter_comment_sql) %}\n {% endif %}\n {% endif %}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.run_query", "macro.dbt.alter_relation_comment", "macro.dbt.validate_doc_columns", "macro.dbt.alter_column_comment"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "model", "type": null, "description": ""}, {"name": "for_relation", "type": null, "description": ""}, {"name": "for_columns", "type": null, "description": ""}], "created_at": 1784225035.2856882, "supported_languages": null}, "macro.dbt.get_catalog_relations": {"name": "get_catalog_relations", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.get_catalog_relations", "macro_sql": "{% macro get_catalog_relations(information_schema, relations) -%}\n {{ return(adapter.dispatch('get_catalog_relations', 'dbt')(information_schema, relations)) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_catalog_relations"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "information_schema", "type": null, "description": ""}, {"name": "relations", "type": null, "description": ""}], "created_at": 1784225035.286056, "supported_languages": null}, "macro.dbt.default__get_catalog_relations": {"name": "default__get_catalog_relations", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.default__get_catalog_relations", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "information_schema", "type": null, "description": ""}, {"name": "relations", "type": null, "description": ""}], "created_at": 1784225035.286159, "supported_languages": null}, "macro.dbt.get_catalog": {"name": "get_catalog", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.get_catalog", "macro_sql": "{% macro get_catalog(information_schema, schemas) -%}\n {{ return(adapter.dispatch('get_catalog', 'dbt')(information_schema, schemas)) }}\n{%- endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_catalog"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "information_schema", "type": null, "description": ""}, {"name": "schemas", "type": null, "description": ""}], "created_at": 1784225035.2862358, "supported_languages": null}, "macro.dbt.default__get_catalog": {"name": "default__get_catalog", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.default__get_catalog", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "information_schema", "type": null, "description": ""}, {"name": "schemas", "type": null, "description": ""}], "created_at": 1784225035.2863371, "supported_languages": null}, "macro.dbt.information_schema_name": {"name": "information_schema_name", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.information_schema_name", "macro_sql": "{% macro information_schema_name(database) %}\n {{ return(adapter.dispatch('information_schema_name', 'dbt')(database)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__information_schema_name"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "database", "type": null, "description": ""}], "created_at": 1784225035.2864058, "supported_languages": null}, "macro.dbt.default__information_schema_name": {"name": "default__information_schema_name", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.default__information_schema_name", "macro_sql": "{% macro default__information_schema_name(database) -%}\n {%- if database -%}\n {{ database }}.INFORMATION_SCHEMA\n {%- else -%}\n INFORMATION_SCHEMA\n {%- endif -%}\n{%- endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "database", "type": null, "description": ""}], "created_at": 1784225035.28647, "supported_languages": null}, "macro.dbt.list_schemas": {"name": "list_schemas", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.list_schemas", "macro_sql": "{% macro list_schemas(database) -%}\n {{ return(adapter.dispatch('list_schemas', 'dbt')(database)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__list_schemas"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "database", "type": null, "description": ""}], "created_at": 1784225035.286538, "supported_languages": null}, "macro.dbt.default__list_schemas": {"name": "default__list_schemas", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.default__list_schemas", "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 %}", "depends_on": {"macros": ["macro.dbt.information_schema_name", "macro.dbt.run_query"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "database", "type": null, "description": ""}], "created_at": 1784225035.286628, "supported_languages": null}, "macro.dbt.check_schema_exists": {"name": "check_schema_exists", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.check_schema_exists", "macro_sql": "{% macro check_schema_exists(information_schema, schema) -%}\n {{ return(adapter.dispatch('check_schema_exists', 'dbt')(information_schema, schema)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__check_schema_exists"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "information_schema", "type": null, "description": ""}, {"name": "schema", "type": null, "description": ""}], "created_at": 1784225035.286707, "supported_languages": null}, "macro.dbt.default__check_schema_exists": {"name": "default__check_schema_exists", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.default__check_schema_exists", "macro_sql": "{% macro default__check_schema_exists(information_schema, schema) -%}\n {% set sql -%}\n select count(*)\n from {{ information_schema.replace(information_schema_view='SCHEMATA') }}\n where catalog_name='{{ information_schema.database }}'\n and schema_name='{{ schema }}'\n {%- endset %}\n {{ return(run_query(sql)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.replace", "macro.dbt.run_query"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "information_schema", "type": null, "description": ""}, {"name": "schema", "type": null, "description": ""}], "created_at": 1784225035.28688, "supported_languages": null}, "macro.dbt.list_relations_without_caching": {"name": "list_relations_without_caching", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.list_relations_without_caching", "macro_sql": "{% macro list_relations_without_caching(schema_relation) %}\n {{ return(adapter.dispatch('list_relations_without_caching', 'dbt')(schema_relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__list_relations_without_caching"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "schema_relation", "type": null, "description": ""}], "created_at": 1784225035.286956, "supported_languages": null}, "macro.dbt.default__list_relations_without_caching": {"name": "default__list_relations_without_caching", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.default__list_relations_without_caching", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "schema_relation", "type": null, "description": ""}], "created_at": 1784225035.287022, "supported_languages": null}, "macro.dbt.list_function_relations_without_caching": {"name": "list_function_relations_without_caching", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.list_function_relations_without_caching", "macro_sql": "{% macro list_function_relations_without_caching(schema_relation) %}\n {{ return(adapter.dispatch('list_function_relations_without_caching', 'dbt')(schema_relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__list_function_relations_without_caching"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "schema_relation", "type": null, "description": ""}], "created_at": 1784225035.2870898, "supported_languages": null}, "macro.dbt.default__list_function_relations_without_caching": {"name": "default__list_function_relations_without_caching", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.default__list_function_relations_without_caching", "macro_sql": "{% macro default__list_function_relations_without_caching(schema_relation) %}\n {{ exceptions.raise_not_implemented(\n 'list_function_relations_without_caching macro not implemented for adapter '+adapter.type()) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "schema_relation", "type": null, "description": ""}], "created_at": 1784225035.287151, "supported_languages": null}, "macro.dbt.get_catalog_for_single_relation": {"name": "get_catalog_for_single_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.get_catalog_for_single_relation", "macro_sql": "{% macro get_catalog_for_single_relation(relation) %}\n {{ return(adapter.dispatch('get_catalog_for_single_relation', 'dbt')(relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_catalog_for_single_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.287221, "supported_languages": null}, "macro.dbt.default__get_catalog_for_single_relation": {"name": "default__get_catalog_for_single_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.default__get_catalog_for_single_relation", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.2872808, "supported_languages": null}, "macro.dbt.get_relations": {"name": "get_relations", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.get_relations", "macro_sql": "{% macro get_relations() %}\n {{ return(adapter.dispatch('get_relations', 'dbt')()) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_relations"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.287342, "supported_languages": null}, "macro.dbt.default__get_relations": {"name": "default__get_relations", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.default__get_relations", "macro_sql": "{% macro default__get_relations() %}\n {{ exceptions.raise_not_implemented(\n 'get_relations macro not implemented for adapter '+adapter.type()) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2873979, "supported_languages": null}, "macro.dbt.get_relation_last_modified": {"name": "get_relation_last_modified", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.get_relation_last_modified", "macro_sql": "{% macro get_relation_last_modified(information_schema, relations) %}\n {{ return(adapter.dispatch('get_relation_last_modified', 'dbt')(information_schema, relations)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_relation_last_modified"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "information_schema", "type": null, "description": ""}, {"name": "relations", "type": null, "description": ""}], "created_at": 1784225035.287474, "supported_languages": null}, "macro.dbt.default__get_relation_last_modified": {"name": "default__get_relation_last_modified", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/metadata.sql", "original_file_path": "macros/adapters/metadata.sql", "unique_id": "macro.dbt.default__get_relation_last_modified", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "information_schema", "type": null, "description": ""}, {"name": "relations", "type": null, "description": ""}], "created_at": 1784225035.287539, "supported_languages": null}, "macro.dbt.get_columns_in_relation": {"name": "get_columns_in_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.get_columns_in_relation", "macro_sql": "{% macro get_columns_in_relation(relation) -%}\n {{ return(adapter.dispatch('get_columns_in_relation', 'dbt')(relation)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt_postgres.postgres__get_columns_in_relation"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.2880151, "supported_languages": null}, "macro.dbt.default__get_columns_in_relation": {"name": "default__get_columns_in_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.default__get_columns_in_relation", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}], "created_at": 1784225035.288077, "supported_languages": null}, "macro.dbt.sql_convert_columns_in_relation": {"name": "sql_convert_columns_in_relation", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.sql_convert_columns_in_relation", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "table", "type": null, "description": ""}], "created_at": 1784225035.288196, "supported_languages": null}, "macro.dbt.get_list_of_column_names": {"name": "get_list_of_column_names", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.get_list_of_column_names", "macro_sql": "\n\n{%- macro get_list_of_column_names(columns) -%}\n {% set col_names = [] %}\n {% for col in columns %}\n {% do col_names.append(col.name) %}\n {% endfor %}\n {{ return(col_names) }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "columns", "type": null, "description": ""}], "created_at": 1784225035.2883031, "supported_languages": null}, "macro.dbt.get_empty_subquery_sql": {"name": "get_empty_subquery_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.get_empty_subquery_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.default__get_empty_subquery_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "select_sql", "type": null, "description": ""}, {"name": "select_sql_header", "type": null, "description": ""}], "created_at": 1784225035.288387, "supported_languages": null}, "macro.dbt.default__get_empty_subquery_sql": {"name": "default__get_empty_subquery_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.default__get_empty_subquery_sql", "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 %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "select_sql", "type": null, "description": ""}, {"name": "select_sql_header", "type": null, "description": ""}], "created_at": 1784225035.288468, "supported_languages": null}, "macro.dbt.get_empty_schema_sql": {"name": "get_empty_schema_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.get_empty_schema_sql", "macro_sql": "{% macro get_empty_schema_sql(columns) -%}\n {{ return(adapter.dispatch('get_empty_schema_sql', 'dbt')(columns)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_empty_schema_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "columns", "type": null, "description": ""}], "created_at": 1784225035.2885382, "supported_languages": null}, "macro.dbt.default__get_empty_schema_sql": {"name": "default__get_empty_schema_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.default__get_empty_schema_sql", "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 %}", "depends_on": {"macros": ["macro.dbt.cast"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "columns", "type": null, "description": ""}], "created_at": 1784225035.2889779, "supported_languages": null}, "macro.dbt.get_column_schema_from_query": {"name": "get_column_schema_from_query", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.get_column_schema_from_query", "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 %}", "depends_on": {"macros": ["macro.dbt.get_empty_subquery_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "select_sql", "type": null, "description": ""}, {"name": "select_sql_header", "type": null, "description": ""}], "created_at": 1784225035.2891579, "supported_languages": null}, "macro.dbt.get_columns_in_query": {"name": "get_columns_in_query", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.get_columns_in_query", "macro_sql": "{% macro get_columns_in_query(select_sql) -%}\n {{ return(adapter.dispatch('get_columns_in_query', 'dbt')(select_sql)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__get_columns_in_query"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "select_sql", "type": null, "description": ""}], "created_at": 1784225035.2892318, "supported_languages": null}, "macro.dbt.default__get_columns_in_query": {"name": "default__get_columns_in_query", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.default__get_columns_in_query", "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 %}", "depends_on": {"macros": ["macro.dbt.statement", "macro.dbt.get_empty_subquery_sql"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "select_sql", "type": null, "description": ""}], "created_at": 1784225035.289361, "supported_languages": null}, "macro.dbt.alter_column_type": {"name": "alter_column_type", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.alter_column_type", "macro_sql": "{% macro alter_column_type(relation, column_name, new_column_type) -%}\n {{ return(adapter.dispatch('alter_column_type', 'dbt')(relation, column_name, new_column_type)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__alter_column_type"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "column_name", "type": null, "description": ""}, {"name": "new_column_type", "type": null, "description": ""}], "created_at": 1784225035.289449, "supported_languages": null}, "macro.dbt.default__alter_column_type": {"name": "default__alter_column_type", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.default__alter_column_type", "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 %}", "depends_on": {"macros": ["macro.dbt.statement"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "column_name", "type": null, "description": ""}, {"name": "new_column_type", "type": null, "description": ""}], "created_at": 1784225035.289737, "supported_languages": null}, "macro.dbt.alter_relation_add_remove_columns": {"name": "alter_relation_add_remove_columns", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.alter_relation_add_remove_columns", "macro_sql": "{% macro alter_relation_add_remove_columns(relation, add_columns = none, remove_columns = none) -%}\n {{ return(adapter.dispatch('alter_relation_add_remove_columns', 'dbt')(relation, add_columns, remove_columns)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__alter_relation_add_remove_columns"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "add_columns", "type": null, "description": ""}, {"name": "remove_columns", "type": null, "description": ""}], "created_at": 1784225035.2898428, "supported_languages": null}, "macro.dbt.default__alter_relation_add_remove_columns": {"name": "default__alter_relation_add_remove_columns", "resource_type": "macro", "package_name": "dbt", "path": "macros/adapters/columns.sql", "original_file_path": "macros/adapters/columns.sql", "unique_id": "macro.dbt.default__alter_relation_add_remove_columns", "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.quoted }} {{ column.expanded_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.quoted }}{{ ',' if not loop.last }}\n {% endfor %}\n\n {%- endset -%}\n\n {% do run_query(sql) %}\n\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.run_query"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "relation", "type": null, "description": ""}, {"name": "add_columns", "type": null, "description": ""}, {"name": "remove_columns", "type": null, "description": ""}], "created_at": 1784225035.2901492, "supported_languages": null}, "macro.dbt.get_fixture_sql": {"name": "get_fixture_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/unit_test_sql/get_fixture_sql.sql", "original_file_path": "macros/unit_test_sql/get_fixture_sql.sql", "unique_id": "macro.dbt.get_fixture_sql", "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{%- set column_name_to_quoted = {} -%}\n{%- for column in columns_in_relation -%}\n\n{#-- This needs to be a case-insensitive comparison --#}\n{%- do column_name_to_data_types.update({column.name|lower: column.data_type}) -%}\n{%- do column_name_to_quoted.update({column.name|lower: column.quoted}) -%}\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_to_quoted[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_to_quoted[column_name] }}{% if not loop.last -%},{%- endif %}\n {%- endfor %}\n limit 0\n{%- endif -%}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.load_relation", "macro.dbt.safe_cast", "macro.dbt.validate_fixture_rows", "macro.dbt.format_row"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "rows", "type": null, "description": ""}, {"name": "column_name_to_data_types", "type": null, "description": ""}], "created_at": 1784225035.2912042, "supported_languages": null}, "macro.dbt.get_expected_sql": {"name": "get_expected_sql", "resource_type": "macro", "package_name": "dbt", "path": "macros/unit_test_sql/get_fixture_sql.sql", "original_file_path": "macros/unit_test_sql/get_fixture_sql.sql", "unique_id": "macro.dbt.get_expected_sql", "macro_sql": "{% macro get_expected_sql(rows, column_name_to_data_types, column_name_to_quoted) %}\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_to_quoted[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 %}", "depends_on": {"macros": ["macro.dbt.format_row"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "rows", "type": null, "description": ""}, {"name": "column_name_to_data_types", "type": null, "description": ""}, {"name": "column_name_to_quoted", "type": null, "description": ""}], "created_at": 1784225035.291439, "supported_languages": null}, "macro.dbt.format_row": {"name": "format_row", "resource_type": "macro", "package_name": "dbt", "path": "macros/unit_test_sql/get_fixture_sql.sql", "original_file_path": "macros/unit_test_sql/get_fixture_sql.sql", "unique_id": "macro.dbt.format_row", "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 {#-- For string fixture values, strip varchar length to prevent silent truncation (GH-11974) --#}\n {%- if column_value is string and 'varying' in column_type -%}\n {%- set column_type = column_type.split('(')[0] -%}\n {%- endif -%}\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", "depends_on": {"macros": ["macro.dbt.string_literal", "macro.dbt.escape_single_quotes", "macro.dbt.safe_cast"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "row", "type": null, "description": ""}, {"name": "column_name_to_data_types", "type": null, "description": ""}], "created_at": 1784225035.2919302, "supported_languages": null}, "macro.dbt.validate_fixture_rows": {"name": "validate_fixture_rows", "resource_type": "macro", "package_name": "dbt", "path": "macros/unit_test_sql/get_fixture_sql.sql", "original_file_path": "macros/unit_test_sql/get_fixture_sql.sql", "unique_id": "macro.dbt.validate_fixture_rows", "macro_sql": "{%- macro validate_fixture_rows(rows, row_number) -%}\n {{ return(adapter.dispatch('validate_fixture_rows', 'dbt')(rows, row_number)) }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": ["macro.dbt.default__validate_fixture_rows"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "rows", "type": null, "description": ""}, {"name": "row_number", "type": null, "description": ""}], "created_at": 1784225035.292015, "supported_languages": null}, "macro.dbt.default__validate_fixture_rows": {"name": "default__validate_fixture_rows", "resource_type": "macro", "package_name": "dbt", "path": "macros/unit_test_sql/get_fixture_sql.sql", "original_file_path": "macros/unit_test_sql/get_fixture_sql.sql", "unique_id": "macro.dbt.default__validate_fixture_rows", "macro_sql": "{%- macro default__validate_fixture_rows(rows, row_number) -%}\n {# This is an abstract method for adapter overrides as needed #}\n{%- endmacro -%}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "rows", "type": null, "description": ""}, {"name": "row_number", "type": null, "description": ""}], "created_at": 1784225035.292057, "supported_languages": null}, "macro.dbt.resolve_model_name": {"name": "resolve_model_name", "resource_type": "macro", "package_name": "dbt", "path": "macros/python_model/python.sql", "original_file_path": "macros/python_model/python.sql", "unique_id": "macro.dbt.resolve_model_name", "macro_sql": "{% macro resolve_model_name(input_model_name) %}\n {{ return(adapter.dispatch('resolve_model_name', 'dbt')(input_model_name)) }}\n{% endmacro %}", "depends_on": {"macros": ["macro.dbt.default__resolve_model_name"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "input_model_name", "type": null, "description": ""}], "created_at": 1784225035.292395, "supported_languages": null}, "macro.dbt.default__resolve_model_name": {"name": "default__resolve_model_name", "resource_type": "macro", "package_name": "dbt", "path": "macros/python_model/python.sql", "original_file_path": "macros/python_model/python.sql", "unique_id": "macro.dbt.default__resolve_model_name", "macro_sql": "\n\n{%- macro default__resolve_model_name(input_model_name) -%}\n {{ input_model_name | string | replace('\"', '\\\"') }}\n{%- endmacro -%}\n\n", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "input_model_name", "type": null, "description": ""}], "created_at": 1784225035.292458, "supported_languages": null}, "macro.dbt.build_ref_function": {"name": "build_ref_function", "resource_type": "macro", "package_name": "dbt", "path": "macros/python_model/python.sql", "original_file_path": "macros/python_model/python.sql", "unique_id": "macro.dbt.build_ref_function", "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\n {#\n We want to get the string of the returned relation by calling .render() in order to skip sample/empty\n mode rendering logic. However, people override the default ref macro, and often return a string instead\n of a relation (like the ref macro does by default). Thus, to make sure we dont blow things up, we have\n to ensure the resolved relation has a .render() method.\n #}\n {%- if resolved.render is defined and resolved.render is callable -%}\n {%- set resolved = resolved.render() -%}\n {%- endif -%}\n\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 %}", "depends_on": {"macros": ["macro.dbt.resolve_model_name"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}], "created_at": 1784225035.2928388, "supported_languages": null}, "macro.dbt.build_source_function": {"name": "build_source_function", "resource_type": "macro", "package_name": "dbt", "path": "macros/python_model/python.sql", "original_file_path": "macros/python_model/python.sql", "unique_id": "macro.dbt.build_source_function", "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 %}", "depends_on": {"macros": ["macro.dbt.resolve_model_name"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}], "created_at": 1784225035.2929978, "supported_languages": null}, "macro.dbt.build_config_dict": {"name": "build_config_dict", "resource_type": "macro", "package_name": "dbt", "path": "macros/python_model/python.sql", "original_file_path": "macros/python_model/python.sql", "unique_id": "macro.dbt.build_config_dict", "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 -%}\n {# Handle dbt.config.meta_get() calls - use separate dict to avoid overwriting native configs #}\n {%- set meta_dict = {} -%}\n {%- if model.config.meta_keys_used -%}\n {% set meta_dbt_used = zip(model.config.meta_keys_used, model.config.meta_keys_defaults) | list %}\n {%- for key, default in meta_dbt_used -%}\n {%- if model.config.meta and key in model.config.meta -%}\n {%- set value = model.config.meta[key] -%}\n {%- else -%}\n {%- set value = default -%}\n {%- endif -%}\n {%- do meta_dict.update({key: value}) -%}\n {%- endfor -%}\n {%- endif -%}\nconfig_dict = {{ config_dict }}\nmeta_dict = {{ meta_dict }}\n{% endmacro %}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}], "created_at": 1784225035.293438, "supported_languages": null}, "macro.dbt.py_script_postfix": {"name": "py_script_postfix", "resource_type": "macro", "package_name": "dbt", "path": "macros/python_model/python.sql", "original_file_path": "macros/python_model/python.sql", "unique_id": "macro.dbt.py_script_postfix", "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\n @staticmethod\n def meta_get(key, default=None):\n return meta_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 %}", "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": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [{"name": "model", "type": null, "description": ""}], "created_at": 1784225035.293633, "supported_languages": null}, "macro.dbt.py_script_comment": {"name": "py_script_comment", "resource_type": "macro", "package_name": "dbt", "path": "macros/python_model/python.sql", "original_file_path": "macros/python_model/python.sql", "unique_id": "macro.dbt.py_script_comment", "macro_sql": "{%macro py_script_comment()%}\n{%endmacro%}", "depends_on": {"macros": []}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2936661, "supported_languages": null}, "macro.dbt.test_unique": {"name": "test_unique", "resource_type": "macro", "package_name": "dbt", "path": "tests/generic/builtin.sql", "original_file_path": "tests/generic/builtin.sql", "unique_id": "macro.dbt.test_unique", "macro_sql": "{% test unique(model, column_name) %}\n {% set macro = adapter.dispatch('test_unique', 'dbt') %}\n {{ macro(model, column_name) }}\n{% endtest %}", "depends_on": {"macros": ["macro.dbt.default__test_unique"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2938628, "supported_languages": null}, "macro.dbt.test_not_null": {"name": "test_not_null", "resource_type": "macro", "package_name": "dbt", "path": "tests/generic/builtin.sql", "original_file_path": "tests/generic/builtin.sql", "unique_id": "macro.dbt.test_not_null", "macro_sql": "{% test not_null(model, column_name) %}\n {% set macro = adapter.dispatch('test_not_null', 'dbt') %}\n {{ macro(model, column_name) }}\n{% endtest %}", "depends_on": {"macros": ["macro.dbt.default__test_not_null"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.293963, "supported_languages": null}, "macro.dbt.test_accepted_values": {"name": "test_accepted_values", "resource_type": "macro", "package_name": "dbt", "path": "tests/generic/builtin.sql", "original_file_path": "tests/generic/builtin.sql", "unique_id": "macro.dbt.test_accepted_values", "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 %}", "depends_on": {"macros": ["macro.dbt.default__test_accepted_values"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.29408, "supported_languages": null}, "macro.dbt.test_relationships": {"name": "test_relationships", "resource_type": "macro", "package_name": "dbt", "path": "tests/generic/builtin.sql", "original_file_path": "tests/generic/builtin.sql", "unique_id": "macro.dbt.test_relationships", "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 %}", "depends_on": {"macros": ["macro.dbt.default__test_relationships"]}, "description": "", "meta": {}, "docs": {"show": true, "node_color": null}, "config": {"meta": {}, "docs": {"show": true, "node_color": null}}, "patch_path": null, "arguments": [], "created_at": 1784225035.2943518, "supported_languages": null}}, "docs": {"doc.dbt.__overview__": {"name": "__overview__", "resource_type": "doc", "package_name": "dbt", "path": "overview.md", "original_file_path": "docs/overview.md", "unique_id": "doc.dbt.__overview__", "block_contents": "### Welcome!\n\nWelcome to the auto-generated documentation for your dbt project!\n\n### Navigation\n\nYou can use the `Project` and `Database` navigation tabs on the left side of the window to explore the models\nin your project.\n\n#### Project Tab\nThe `Project` tab mirrors the directory structure of your dbt project. In this tab, you can see all of the\nmodels defined in your dbt project, as well as models imported from dbt packages.\n\n#### Database Tab\nThe `Database` tab also exposes your models, but in a format that looks more like a database explorer. This view\nshows relations (tables and views) grouped into database schemas. Note that ephemeral models are _not_ shown\nin this interface, as they do not exist in the database.\n\n### Graph Exploration\nYou can click the blue icon on the bottom-right corner of the page to view the lineage graph of your models.\n\nOn model pages, you'll see the immediate parents and children of the model you're exploring. By clicking the `Expand`\nbutton at the top-right of this lineage pane, you'll be able to see all of the models that are used to build,\nor are built from, the model you're exploring.\n\nOnce expanded, you'll be able to use the `--select` and `--exclude` model selection syntax to filter the\nmodels in the graph. For more information on model selection, check out the [dbt docs](https://docs.getdbt.com/docs/model-selection-syntax).\n\nNote that you can also right-click on models to interactively filter and explore the graph.\n\n---\n\n### More information\n\n- [What is dbt](https://docs.getdbt.com/docs/introduction)?\n- Read the [dbt viewpoint](https://docs.getdbt.com/docs/viewpoint)\n- [Installation](https://docs.getdbt.com/docs/installation)\n- Join the [dbt Community](https://www.getdbt.com/community/) for questions and discussion"}}, "exposures": {}, "metrics": {}, "groups": {}, "selectors": {}, "disabled": {}, "parent_map": {"seed.school_compare.la_code_names": [], "seed.school_compare.gias_code_names": [], "seed.school_compare.school_type_codes": [], "model.school_compare.stg_ees_ks4_national": ["source.school_compare.raw.ees_ks4_national"], "model.school_compare.dim_location": ["model.school_compare.stg_gias_establishments"], "model.school_compare.dim_school": ["model.school_compare.int_ofsted_latest", "model.school_compare.stg_gias_establishments"], "model.school_compare.stg_gias_establishments": ["source.school_compare.raw.gias_establishments"], "model.school_compare.fact_performance": ["model.school_compare.fact_ks2_performance", "model.school_compare.fact_ks4_performance"], "model.school_compare.fact_ks2_performance": ["model.school_compare.int_ks2_with_lineage"], "model.school_compare.int_ks2_with_lineage": ["model.school_compare.int_school_lineage", "model.school_compare.stg_ees_ks2", "model.school_compare.stg_legacy_ks2"], "model.school_compare.fact_ks4_national_averages": ["model.school_compare.stg_ees_ks4_national"], "model.school_compare.fact_ks4_performance": ["model.school_compare.int_ks4_with_lineage"], "model.school_compare.int_ks4_with_lineage": ["model.school_compare.int_school_lineage", "model.school_compare.stg_ees_ks4", "model.school_compare.stg_legacy_ks4"], "model.school_compare.map_school_lineage": ["model.school_compare.int_school_lineage"], "model.school_compare.int_school_lineage": ["model.school_compare.stg_gias_links"], "model.school_compare.stg_gias_links": ["source.school_compare.raw.gias_links"], "model.school_compare.fact_ofsted_inspection": ["model.school_compare.stg_ofsted_inspections"], "model.school_compare.int_ofsted_latest": ["model.school_compare.stg_ofsted_inspections"], "model.school_compare.stg_ofsted_inspections": ["source.school_compare.raw.ofsted_inspections"], "model.school_compare.stg_ees_ks2": ["source.school_compare.raw.ees_ks2_attainment", "source.school_compare.raw.ees_ks2_info"], "model.school_compare.stg_legacy_ks2": ["source.school_compare.raw.legacy_ks2"], "model.school_compare.stg_ees_ks4": ["source.school_compare.raw.ees_ks4_info", "source.school_compare.raw.ees_ks4_performance"], "model.school_compare.stg_legacy_ks4": ["source.school_compare.raw.legacy_ks4"], "model.school_compare.fact_census_benchmarks": ["model.school_compare.fact_pupil_characteristics"], "model.school_compare.fact_pupil_characteristics": ["model.school_compare.int_pupil_chars_merged"], "model.school_compare.int_pupil_chars_merged": ["model.school_compare.stg_ees_census"], "model.school_compare.stg_ees_census": ["source.school_compare.raw.ees_census"], "model.school_compare.fact_admissions": ["model.school_compare.stg_ees_admissions"], "model.school_compare.stg_ees_admissions": ["source.school_compare.raw.ees_admissions"], "model.school_compare.fact_ks2_national_averages": ["model.school_compare.stg_ees_ks2_national"], "model.school_compare.stg_ees_ks2_national": ["source.school_compare.raw.ees_ks2_national"], "model.school_compare.fact_finance": ["model.school_compare.stg_fbit_finance"], "model.school_compare.stg_fbit_finance": ["source.school_compare.raw.fbit_finance"], "model.school_compare.fact_deprivation": ["model.school_compare.stg_idaci"], "model.school_compare.stg_idaci": ["source.school_compare.raw.idaci"], "test.school_compare.assert_urns_in_uk_bounds": ["model.school_compare.dim_location"], "test.school_compare.assert_no_orphaned_facts": ["model.school_compare.dim_school", "model.school_compare.fact_ks2_performance"], "test.school_compare.assert_gias_code_names_match_seed": ["seed.school_compare.gias_code_names", "source.school_compare.raw.gias_establishments"], "test.school_compare.not_null_dim_location_urn.aefc04518b": ["model.school_compare.dim_location"], "test.school_compare.unique_dim_location_urn.7acc2482eb": ["model.school_compare.dim_location"], "test.school_compare.relationships_dim_location_urn__urn__ref_dim_school_.719013884a": ["model.school_compare.dim_location", "model.school_compare.dim_school"], "test.school_compare.not_null_dim_location_postcode.1693ab4948": ["model.school_compare.dim_location"], "test.school_compare.not_null_dim_school_urn.06fbd2ff26": ["model.school_compare.dim_school"], "test.school_compare.unique_dim_school_urn.9851fcd288": ["model.school_compare.dim_school"], "test.school_compare.not_null_dim_school_school_name.2a2e381565": ["model.school_compare.dim_school"], "test.school_compare.not_null_dim_school_phase_code.3140ca1112": ["model.school_compare.dim_school"], "test.school_compare.not_null_dim_school_has_sixth_form.ea8e313799": ["model.school_compare.dim_school"], "test.school_compare.accepted_values_dim_school_has_sixth_form__True__False.41eaa1ffd6": ["model.school_compare.dim_school"], "test.school_compare.accepted_values_dim_school_status_code__1__3.b0a0bd9a3a": ["model.school_compare.dim_school"], "test.school_compare.accepted_values_dim_school_school_type_code__1__2__3__5__6__7__8__10__11__12__14__15__18__24__25__26__27__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__49__56__57.66c218b8b6": ["model.school_compare.dim_school"], "test.school_compare.accepted_values_dim_school_religious_character_code__0__2__3__4__5__6__7__8__9__10__11__12__13__14__15__16__17__18__19__20__21__22__24__25__26__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__47__48__49__99.16074ac494": ["model.school_compare.dim_school"], "test.school_compare.accepted_values_dim_school_admissions_policy_code__0__2__4__9.cfb6e9f008": ["model.school_compare.dim_school"], "test.school_compare.not_null_fact_ks2_performance_urn.7b7546cb10": ["model.school_compare.fact_ks2_performance"], "test.school_compare.not_null_fact_ks2_performance_year.bf28467bae": ["model.school_compare.fact_ks2_performance"], "test.school_compare.unique_fact_ks2_performance_urn_year.240e6de465": ["model.school_compare.fact_ks2_performance"], "test.school_compare.not_null_fact_performance_urn.334fe56f01": ["model.school_compare.fact_performance"], "test.school_compare.not_null_fact_performance_year.eed5795761": ["model.school_compare.fact_performance"], "test.school_compare.unique_fact_performance_urn_year.f5c028dcb0": ["model.school_compare.fact_performance"], "test.school_compare.not_null_fact_ks4_performance_urn.dc24537cea": ["model.school_compare.fact_ks4_performance"], "test.school_compare.not_null_fact_ks4_performance_year.ca2d34b977": ["model.school_compare.fact_ks4_performance"], "test.school_compare.accepted_values_fact_ks4_performance_progress_8_banding__Well_above_average__Above_average__Average__Below_average__Well_below_average.1f92b23f9b": ["model.school_compare.fact_ks4_performance"], "test.school_compare.unique_fact_ks4_performance_urn_year.eba97e8000": ["model.school_compare.fact_ks4_performance"], "test.school_compare.not_null_fact_ks4_national_averages_year.43387931fd": ["model.school_compare.fact_ks4_national_averages"], "test.school_compare.unique_fact_ks4_national_averages_year.9e4ab94935": ["model.school_compare.fact_ks4_national_averages"], "test.school_compare.not_null_map_school_lineage_urn.24da1a9909": ["model.school_compare.map_school_lineage"], "test.school_compare.not_null_fact_ofsted_inspection_urn.65304a896d": ["model.school_compare.fact_ofsted_inspection"], "test.school_compare.not_null_fact_ofsted_inspection_inspection_date.5aa4bf0513": ["model.school_compare.fact_ofsted_inspection"], "test.school_compare.not_null_fact_pupil_characteristics_urn.bdeebf869b": ["model.school_compare.fact_pupil_characteristics"], "test.school_compare.not_null_fact_pupil_characteristics_year.19bec90c81": ["model.school_compare.fact_pupil_characteristics"], "test.school_compare.not_null_fact_census_benchmarks_phase.c4c9ad96c1": ["model.school_compare.fact_census_benchmarks"], "test.school_compare.unique_fact_census_benchmarks_phase.c06d73d097": ["model.school_compare.fact_census_benchmarks"], "test.school_compare.not_null_fact_admissions_urn.fdf334f63c": ["model.school_compare.fact_admissions"], "test.school_compare.not_null_fact_admissions_year.11169d1a1f": ["model.school_compare.fact_admissions"], "test.school_compare.not_null_fact_ks2_national_averages_year.84b854a9ce": ["model.school_compare.fact_ks2_national_averages"], "test.school_compare.unique_fact_ks2_national_averages_year.99f3ae39bb": ["model.school_compare.fact_ks2_national_averages"], "test.school_compare.not_null_fact_finance_urn.162f08d129": ["model.school_compare.fact_finance"], "test.school_compare.not_null_fact_finance_year.d96868883e": ["model.school_compare.fact_finance"], "test.school_compare.not_null_fact_deprivation_urn.96d84c2c61": ["model.school_compare.fact_deprivation"], "test.school_compare.unique_fact_deprivation_urn.194d6d1f01": ["model.school_compare.fact_deprivation"], "test.school_compare.source_not_null_raw_gias_establishments__URN_.daa9473baf": ["source.school_compare.raw.gias_establishments"], "test.school_compare.source_unique_raw_gias_establishments__URN_.9f6d358797": ["source.school_compare.raw.gias_establishments"], "test.school_compare.source_not_null_raw_gias_links__URN_.588070236c": ["source.school_compare.raw.gias_links"], "source.school_compare.raw.gias_establishments": [], "source.school_compare.raw.gias_links": [], "source.school_compare.raw.ofsted_inspections": [], "source.school_compare.raw.ees_ks2_attainment": [], "source.school_compare.raw.ees_ks2_info": [], "source.school_compare.raw.legacy_ks2": [], "source.school_compare.raw.ees_ks4_performance": [], "source.school_compare.raw.ees_ks4_info": [], "source.school_compare.raw.legacy_ks4": [], "source.school_compare.raw.ees_census": [], "source.school_compare.raw.ees_admissions": [], "source.school_compare.raw.ees_ks2_national": [], "source.school_compare.raw.ees_ks4_national": [], "source.school_compare.raw.fbit_finance": [], "source.school_compare.raw.idaci": []}, "child_map": {"seed.school_compare.la_code_names": [], "seed.school_compare.gias_code_names": ["test.school_compare.assert_gias_code_names_match_seed"], "seed.school_compare.school_type_codes": [], "model.school_compare.stg_ees_ks4_national": ["model.school_compare.fact_ks4_national_averages"], "model.school_compare.dim_location": ["test.school_compare.assert_urns_in_uk_bounds", "test.school_compare.not_null_dim_location_postcode.1693ab4948", "test.school_compare.not_null_dim_location_urn.aefc04518b", "test.school_compare.relationships_dim_location_urn__urn__ref_dim_school_.719013884a", "test.school_compare.unique_dim_location_urn.7acc2482eb"], "model.school_compare.dim_school": ["test.school_compare.accepted_values_dim_school_admissions_policy_code__0__2__4__9.cfb6e9f008", "test.school_compare.accepted_values_dim_school_has_sixth_form__True__False.41eaa1ffd6", "test.school_compare.accepted_values_dim_school_religious_character_code__0__2__3__4__5__6__7__8__9__10__11__12__13__14__15__16__17__18__19__20__21__22__24__25__26__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__47__48__49__99.16074ac494", "test.school_compare.accepted_values_dim_school_school_type_code__1__2__3__5__6__7__8__10__11__12__14__15__18__24__25__26__27__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__49__56__57.66c218b8b6", "test.school_compare.accepted_values_dim_school_status_code__1__3.b0a0bd9a3a", "test.school_compare.assert_no_orphaned_facts", "test.school_compare.not_null_dim_school_has_sixth_form.ea8e313799", "test.school_compare.not_null_dim_school_phase_code.3140ca1112", "test.school_compare.not_null_dim_school_school_name.2a2e381565", "test.school_compare.not_null_dim_school_urn.06fbd2ff26", "test.school_compare.relationships_dim_location_urn__urn__ref_dim_school_.719013884a", "test.school_compare.unique_dim_school_urn.9851fcd288"], "model.school_compare.stg_gias_establishments": ["model.school_compare.dim_location", "model.school_compare.dim_school"], "model.school_compare.fact_performance": ["test.school_compare.not_null_fact_performance_urn.334fe56f01", "test.school_compare.not_null_fact_performance_year.eed5795761", "test.school_compare.unique_fact_performance_urn_year.f5c028dcb0"], "model.school_compare.fact_ks2_performance": ["model.school_compare.fact_performance", "test.school_compare.assert_no_orphaned_facts", "test.school_compare.not_null_fact_ks2_performance_urn.7b7546cb10", "test.school_compare.not_null_fact_ks2_performance_year.bf28467bae", "test.school_compare.unique_fact_ks2_performance_urn_year.240e6de465"], "model.school_compare.int_ks2_with_lineage": ["model.school_compare.fact_ks2_performance"], "model.school_compare.fact_ks4_national_averages": ["test.school_compare.not_null_fact_ks4_national_averages_year.43387931fd", "test.school_compare.unique_fact_ks4_national_averages_year.9e4ab94935"], "model.school_compare.fact_ks4_performance": ["model.school_compare.fact_performance", "test.school_compare.accepted_values_fact_ks4_performance_progress_8_banding__Well_above_average__Above_average__Average__Below_average__Well_below_average.1f92b23f9b", "test.school_compare.not_null_fact_ks4_performance_urn.dc24537cea", "test.school_compare.not_null_fact_ks4_performance_year.ca2d34b977", "test.school_compare.unique_fact_ks4_performance_urn_year.eba97e8000"], "model.school_compare.int_ks4_with_lineage": ["model.school_compare.fact_ks4_performance"], "model.school_compare.map_school_lineage": ["test.school_compare.not_null_map_school_lineage_urn.24da1a9909"], "model.school_compare.int_school_lineage": ["model.school_compare.int_ks2_with_lineage", "model.school_compare.int_ks4_with_lineage", "model.school_compare.map_school_lineage"], "model.school_compare.stg_gias_links": ["model.school_compare.int_school_lineage"], "model.school_compare.fact_ofsted_inspection": ["test.school_compare.not_null_fact_ofsted_inspection_inspection_date.5aa4bf0513", "test.school_compare.not_null_fact_ofsted_inspection_urn.65304a896d"], "model.school_compare.int_ofsted_latest": ["model.school_compare.dim_school"], "model.school_compare.stg_ofsted_inspections": ["model.school_compare.fact_ofsted_inspection", "model.school_compare.int_ofsted_latest"], "model.school_compare.stg_ees_ks2": ["model.school_compare.int_ks2_with_lineage"], "model.school_compare.stg_legacy_ks2": ["model.school_compare.int_ks2_with_lineage"], "model.school_compare.stg_ees_ks4": ["model.school_compare.int_ks4_with_lineage"], "model.school_compare.stg_legacy_ks4": ["model.school_compare.int_ks4_with_lineage"], "model.school_compare.fact_census_benchmarks": ["test.school_compare.not_null_fact_census_benchmarks_phase.c4c9ad96c1", "test.school_compare.unique_fact_census_benchmarks_phase.c06d73d097"], "model.school_compare.fact_pupil_characteristics": ["model.school_compare.fact_census_benchmarks", "test.school_compare.not_null_fact_pupil_characteristics_urn.bdeebf869b", "test.school_compare.not_null_fact_pupil_characteristics_year.19bec90c81"], "model.school_compare.int_pupil_chars_merged": ["model.school_compare.fact_pupil_characteristics"], "model.school_compare.stg_ees_census": ["model.school_compare.int_pupil_chars_merged"], "model.school_compare.fact_admissions": ["test.school_compare.not_null_fact_admissions_urn.fdf334f63c", "test.school_compare.not_null_fact_admissions_year.11169d1a1f"], "model.school_compare.stg_ees_admissions": ["model.school_compare.fact_admissions"], "model.school_compare.fact_ks2_national_averages": ["test.school_compare.not_null_fact_ks2_national_averages_year.84b854a9ce", "test.school_compare.unique_fact_ks2_national_averages_year.99f3ae39bb"], "model.school_compare.stg_ees_ks2_national": ["model.school_compare.fact_ks2_national_averages"], "model.school_compare.fact_finance": ["test.school_compare.not_null_fact_finance_urn.162f08d129", "test.school_compare.not_null_fact_finance_year.d96868883e"], "model.school_compare.stg_fbit_finance": ["model.school_compare.fact_finance"], "model.school_compare.fact_deprivation": ["test.school_compare.not_null_fact_deprivation_urn.96d84c2c61", "test.school_compare.unique_fact_deprivation_urn.194d6d1f01"], "model.school_compare.stg_idaci": ["model.school_compare.fact_deprivation"], "test.school_compare.assert_urns_in_uk_bounds": [], "test.school_compare.assert_no_orphaned_facts": [], "test.school_compare.assert_gias_code_names_match_seed": [], "test.school_compare.not_null_dim_location_urn.aefc04518b": [], "test.school_compare.unique_dim_location_urn.7acc2482eb": [], "test.school_compare.relationships_dim_location_urn__urn__ref_dim_school_.719013884a": [], "test.school_compare.not_null_dim_location_postcode.1693ab4948": [], "test.school_compare.not_null_dim_school_urn.06fbd2ff26": [], "test.school_compare.unique_dim_school_urn.9851fcd288": [], "test.school_compare.not_null_dim_school_school_name.2a2e381565": [], "test.school_compare.not_null_dim_school_phase_code.3140ca1112": [], "test.school_compare.not_null_dim_school_has_sixth_form.ea8e313799": [], "test.school_compare.accepted_values_dim_school_has_sixth_form__True__False.41eaa1ffd6": [], "test.school_compare.accepted_values_dim_school_status_code__1__3.b0a0bd9a3a": [], "test.school_compare.accepted_values_dim_school_school_type_code__1__2__3__5__6__7__8__10__11__12__14__15__18__24__25__26__27__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__49__56__57.66c218b8b6": [], "test.school_compare.accepted_values_dim_school_religious_character_code__0__2__3__4__5__6__7__8__9__10__11__12__13__14__15__16__17__18__19__20__21__22__24__25__26__28__29__30__31__32__33__34__35__36__37__38__39__40__41__42__43__44__45__46__47__48__49__99.16074ac494": [], "test.school_compare.accepted_values_dim_school_admissions_policy_code__0__2__4__9.cfb6e9f008": [], "test.school_compare.not_null_fact_ks2_performance_urn.7b7546cb10": [], "test.school_compare.not_null_fact_ks2_performance_year.bf28467bae": [], "test.school_compare.unique_fact_ks2_performance_urn_year.240e6de465": [], "test.school_compare.not_null_fact_performance_urn.334fe56f01": [], "test.school_compare.not_null_fact_performance_year.eed5795761": [], "test.school_compare.unique_fact_performance_urn_year.f5c028dcb0": [], "test.school_compare.not_null_fact_ks4_performance_urn.dc24537cea": [], "test.school_compare.not_null_fact_ks4_performance_year.ca2d34b977": [], "test.school_compare.accepted_values_fact_ks4_performance_progress_8_banding__Well_above_average__Above_average__Average__Below_average__Well_below_average.1f92b23f9b": [], "test.school_compare.unique_fact_ks4_performance_urn_year.eba97e8000": [], "test.school_compare.not_null_fact_ks4_national_averages_year.43387931fd": [], "test.school_compare.unique_fact_ks4_national_averages_year.9e4ab94935": [], "test.school_compare.not_null_map_school_lineage_urn.24da1a9909": [], "test.school_compare.not_null_fact_ofsted_inspection_urn.65304a896d": [], "test.school_compare.not_null_fact_ofsted_inspection_inspection_date.5aa4bf0513": [], "test.school_compare.not_null_fact_pupil_characteristics_urn.bdeebf869b": [], "test.school_compare.not_null_fact_pupil_characteristics_year.19bec90c81": [], "test.school_compare.not_null_fact_census_benchmarks_phase.c4c9ad96c1": [], "test.school_compare.unique_fact_census_benchmarks_phase.c06d73d097": [], "test.school_compare.not_null_fact_admissions_urn.fdf334f63c": [], "test.school_compare.not_null_fact_admissions_year.11169d1a1f": [], "test.school_compare.not_null_fact_ks2_national_averages_year.84b854a9ce": [], "test.school_compare.unique_fact_ks2_national_averages_year.99f3ae39bb": [], "test.school_compare.not_null_fact_finance_urn.162f08d129": [], "test.school_compare.not_null_fact_finance_year.d96868883e": [], "test.school_compare.not_null_fact_deprivation_urn.96d84c2c61": [], "test.school_compare.unique_fact_deprivation_urn.194d6d1f01": [], "test.school_compare.source_not_null_raw_gias_establishments__URN_.daa9473baf": [], "test.school_compare.source_unique_raw_gias_establishments__URN_.9f6d358797": [], "test.school_compare.source_not_null_raw_gias_links__URN_.588070236c": [], "source.school_compare.raw.gias_establishments": ["model.school_compare.stg_gias_establishments", "test.school_compare.assert_gias_code_names_match_seed", "test.school_compare.source_not_null_raw_gias_establishments__URN_.daa9473baf", "test.school_compare.source_unique_raw_gias_establishments__URN_.9f6d358797"], "source.school_compare.raw.gias_links": ["model.school_compare.stg_gias_links", "test.school_compare.source_not_null_raw_gias_links__URN_.588070236c"], "source.school_compare.raw.ofsted_inspections": ["model.school_compare.stg_ofsted_inspections"], "source.school_compare.raw.ees_ks2_attainment": ["model.school_compare.stg_ees_ks2"], "source.school_compare.raw.ees_ks2_info": ["model.school_compare.stg_ees_ks2"], "source.school_compare.raw.legacy_ks2": ["model.school_compare.stg_legacy_ks2"], "source.school_compare.raw.ees_ks4_performance": ["model.school_compare.stg_ees_ks4"], "source.school_compare.raw.ees_ks4_info": ["model.school_compare.stg_ees_ks4"], "source.school_compare.raw.legacy_ks4": ["model.school_compare.stg_legacy_ks4"], "source.school_compare.raw.ees_census": ["model.school_compare.stg_ees_census"], "source.school_compare.raw.ees_admissions": ["model.school_compare.stg_ees_admissions"], "source.school_compare.raw.ees_ks2_national": ["model.school_compare.stg_ees_ks2_national"], "source.school_compare.raw.ees_ks4_national": ["model.school_compare.stg_ees_ks4_national"], "source.school_compare.raw.fbit_finance": ["model.school_compare.stg_fbit_finance"], "source.school_compare.raw.idaci": ["model.school_compare.stg_idaci"]}, "group_map": {}, "saved_queries": {}, "semantic_models": {}, "unit_tests": {}, "functions": {}}