Skip to content

detection_period propery works wrong #1523

Open
@dmitrii-khr

Description

@dmitrii-khr

Describe the bug
I'd like to complain again about the detection_period configuration property.
The following setup

 detection_period:
                period: day
                count: 1

transforms to the following statement in the elementary query which decides whether alert or not alert:

bucket_end >= 
    dateadd(day, cast('-1' as integer), cast(max_bucket_end as timestamp))

The non-strict condition means that it will alert for 2 days. But it is expected that the alert will be only one 1 day.
Now it is not possible to configure a time series test, to alert it for the current day and not for issues that were yesterday. 0 value causes test failure.

To Reproduce
setup time-series test with bucket size 1 day and detection_period 1 day

Expected behavior
With detection period of 1 day, test will not fail if start date of failed time bucket is more than 24 hours ago.
Condition which detects if test should fail have to be strict:

bucket_end >
    dateadd(day, cast('-1' as integer), cast(max_bucket_end as timestamp))

Environment (please complete the following information):

  • dbt package Version: 0.15.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions