-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make Satellite HWM safe against outside truncate #74
Comments
COALESCE(MAX({{ src_ldts }}),{{ datavault4dbt.string_to_timestamp(timestamp_format, beginning_of_all_times) }}) |
This issue is stale because it has been open for 90 days with no activity. If you would like the issue to remain open, please remove the stale label or comment on the issue. Otherwise it will be closed in 14 days |
check all macros and apply this to all that use a HWM |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
In All Kinds of Satellites there is a HWM logic applied for incremental runs. This logic checks
WHERE ldts > (SELECT max(ldts) FROM {{ this }})
But for cases, where this table is truncated outside of dbt,
SELECT max(ldts)
would returnNULL
, and on some databases the comparisonldts > NULL
throws an error.To avoid this, we need to insert the beginning-of-all-times for cases when
max(ldts)
returnsNULL
, like this:WHERE ldts > (SELECT COALESCE(max(ldts), {{ datavault4dbt.beginning_of_all_times() }}) FROM {{ this }})
Thanks to
for pointing out this issue and proposing a solution!
The text was updated successfully, but these errors were encountered: