From 859a261b050a9927f8fc188e7fbb42556825b556 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Fri, 15 Jul 2022 16:39:51 +0200 Subject: [PATCH] Manager: on deletion of a worker, do not cascade to deletion of its tasks Fix an issue where deleting a Worker would also delete the tasks it was assigned to. --- internal/manager/persistence/jobs.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/manager/persistence/jobs.go b/internal/manager/persistence/jobs.go index a5bb4b6c..bfb67cbb 100644 --- a/internal/manager/persistence/jobs.go +++ b/internal/manager/persistence/jobs.go @@ -48,7 +48,7 @@ type Task struct { // Which worker is/was working on this. WorkerID *uint - Worker *Worker `gorm:"foreignkey:WorkerID;references:ID;constraint:OnDelete:CASCADE"` + Worker *Worker `gorm:"foreignkey:WorkerID;references:ID;constraint:OnDelete:SET NULL"` LastTouchedAt time.Time `gorm:"index"` // Should contain UTC timestamps. // Dependencies are tasks that need to be completed before this one can run.