fix: Render relations to avoid including time filters in source_column_name #1061
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
resolves #
#1059
Problem
If the model has event_time filters or micro-batch implemented the source_column_name returns the complete query for the relation like so
This causes the macro to break and prevents setting up sampling and other related features.
This occurs because of the function in dbt-core here which is used in the str method that is used by
dbt.string_literal.Solution
Use the 'render' method on the relation to obtain the relevant information as a string literal rather than the str method of the relation.
It returns the expected SQL
Checklist