diff --git a/coderd/database/migrations/000356_enforce_deadline_below_max_deadline.up.sql b/coderd/database/migrations/000356_enforce_deadline_below_max_deadline.up.sql index bcb3ab643521f..00c36ddd0b5dd 100644 --- a/coderd/database/migrations/000356_enforce_deadline_below_max_deadline.up.sql +++ b/coderd/database/migrations/000356_enforce_deadline_below_max_deadline.up.sql @@ -8,13 +8,15 @@ UPDATE SET deadline = max_deadline WHERE - deadline > max_deadline - AND max_deadline != '0001-01-01 00:00:00+00'; + (deadline = '0001-01-01 00:00:00+00'::timestamptz OR deadline > max_deadline) + AND max_deadline != '0001-01-01 00:00:00+00'::timestamptz; -- Add the new constraint. ALTER TABLE workspace_builds ADD CONSTRAINT workspace_builds_deadline_below_max_deadline CHECK ( + -- (deadline is not zero AND deadline <= max_deadline)... (deadline != '0001-01-01 00:00:00+00'::timestamptz AND deadline <= max_deadline) + -- UNLESS max_deadline is zero. OR max_deadline = '0001-01-01 00:00:00+00'::timestamptz );