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 running: dbt compile --models +staging.area --exclude tag:myTag
it looks like it ignores the --models and --exclude flags as it compiles everything and produces a manifest.json that contains information about all the models.
the same manifest is used in docs which causes the lineage graph to include a lot of floating nodes that are not attached to anything.
Some more context:
The reason why those files are treated as models is because they are within my models directory, but they are just macros that are only relevant for that mart area.
I guess i could just move those macros out of models and define them at global level.
Expected behavior
Would expect to have the same behaviour as the run command
System information
Which database are you using dbt with?
postgres
redshift
bigquery
snowflake
other (specify: ____________)
The output of dbt --version:
0.15.0
The output of python --version: 3.6
The text was updated successfully, but these errors were encountered:
I'm pretty sure the manifest written for dbt compile (and dbt run) only includes parsed manifest information, not compiled. dbt has to parse the entire manifest so that it can understand your selectors and refs, so we might as well include what we have in the output.
You can see if a model was selected by your dbt compile by looking at its compiled tab in the SQL section of its page. If there's no run_results.json entry corresponding tot he node (so it was not compiled), the section will say -- compiled SQL not found for this model.
@drewbanin Are you sure we should change this as suggested? It would involve changing how writing the manifest file actually works to take the models/exclude flags into account and only write selected nodes.
This use case in particular seems like it'd be best addressed by whatever fixes #1671, rather than changing what the selectors do to the generated manifest.
Agree with the above: we want manifests to include information about all enabled nodes in the project. The --models and --exclude flags should only impact which nodes generate their compiled_sql. That's important as we continue to think about ways that manifests can be used to reliably represent a past project state.
I think there are other things we can do to make dbt-docs customizable, but I don't think it looks like writing partial manifests.
Describe the bug
when running:
dbt compile --models +staging.area --exclude tag:myTag
it looks like it ignores the
--models
and--exclude
flags as it compiles everything and produces amanifest.json
that contains information about all the models.the same manifest is used in docs which causes the lineage graph to include a lot of floating nodes that are not attached to anything.
Some more context:
The reason why those files are treated as models is because they are within my models directory, but they are just macros that are only relevant for that mart area.
I guess i could just move those macros out of models and define them at global level.
Expected behavior
Would expect to have the same behaviour as the
run
commandSystem information
Which database are you using dbt with?
The output of
dbt --version
:The output of
python --version
:3.6
The text was updated successfully, but these errors were encountered: