You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When using the get_relations_by_pattern macro to populate a table with them in a union, when trying to build the table using the + selector on the model name, it does not build the downstream tables and results in a failed model build.
Steps to reproduce
{{ config(materialized="table") }}
{% set relations =dbt_utils.get_relations_by_pattern(target.schema, "%my%pattern%") %}
with unions as ({{ dbt_utils.union_relations(relations=relations) }})
select*from unions
Expected results
I would expect to be able to use these macros to generate upstream models without having to manually generate the downstream models, negating the usefulness of this macro. I understand that this macro reads from information_schema (in Snowflake) to populate, but without the ability to generate the models, how would we use this to build upstream models with a single command?
Actual results
Model fails to build because the union_relations macro does not have any relations, creating invalid SQL.
Screenshots and log output
14:58:39 Database Error in model stg_addresses (models/my_model.sql)
001003 (42000): SQL compilation error:
syntax error line 11 at position 4 unexpected ')'.
compiled code at target/run/my_project/models/my_model.sql
Generated file at target/run/my_project/models/my_model.sql:
with unions as (
)
select*from unions
System information
The contents of your packages.yml file:
Which database are you using dbt with?
postgres
redshift
bigquery
snowflake
other (specify: ____________)
The output of dbt --version:
Core:
- installed: 1.8.8
- latest: 1.8.8 - Up to date!
Plugins:
- snowflake: 1.8.4 - Up to date!
Additional context
Are you interested in contributing the fix?
With some direction, I have attempted to contribute to dbt before and was not successful. If there is a fix to be made, I am happy to take a shot at it.
The text was updated successfully, but these errors were encountered:
Describe the bug
When using the
get_relations_by_pattern
macro to populate a table with them in a union, when trying to build the table using the+
selector on the model name, it does not build the downstream tables and results in a failed model build.Steps to reproduce
Expected results
I would expect to be able to use these macros to generate upstream models without having to manually generate the downstream models, negating the usefulness of this macro. I understand that this macro reads from
information_schema
(in Snowflake) to populate, but without the ability to generate the models, how would we use this to build upstream models with a single command?Actual results
Model fails to build because the
union_relations
macro does not have any relations, creating invalid SQL.Screenshots and log output
Generated file at
target/run/my_project/models/my_model.sql
:System information
The contents of your
packages.yml
file:Which database are you using dbt with?
The output of
dbt --version
:Additional context
Are you interested in contributing the fix?
With some direction, I have attempted to contribute to dbt before and was not successful. If there is a fix to be made, I am happy to take a shot at it.
The text was updated successfully, but these errors were encountered: