From 9f4ac8fb79654807951bc9d090a74b4344c5e905 Mon Sep 17 00:00:00 2001 From: gearnode Date: Thu, 27 Mar 2025 08:05:18 +0100 Subject: [PATCH] Fix delete task with evidences 5xx close #64 Signed-off-by: gearnode --- pkg/coredata/evidence.go | 2 +- pkg/coredata/migrations/20250327T065928Z.sql | 9 +++++++++ pkg/probo/evidence_service.go | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 pkg/coredata/migrations/20250327T065928Z.sql diff --git a/pkg/coredata/evidence.go b/pkg/coredata/evidence.go index 1b6be1ebc..a848934fd 100644 --- a/pkg/coredata/evidence.go +++ b/pkg/coredata/evidence.go @@ -29,7 +29,7 @@ import ( type ( Evidence struct { ID gid.GID `db:"id"` - TaskID gid.GID `db:"task_id"` + TaskID *gid.GID `db:"task_id"` State EvidenceState `db:"state"` Type EvidenceType `db:"type"` ObjectKey string `db:"object_key"` diff --git a/pkg/coredata/migrations/20250327T065928Z.sql b/pkg/coredata/migrations/20250327T065928Z.sql new file mode 100644 index 000000000..3c656f20a --- /dev/null +++ b/pkg/coredata/migrations/20250327T065928Z.sql @@ -0,0 +1,9 @@ +ALTER TABLE evidences DROP CONSTRAINT evidences_task_id_fkey; + +ALTER TABLE evidences + ADD CONSTRAINT evidences_task_id_fkey + FOREIGN KEY (task_id) + REFERENCES tasks(id) + ON DELETE SET NULL; + +ALTER TABLE evidences ALTER COLUMN task_id DROP NOT NULL; \ No newline at end of file diff --git a/pkg/probo/evidence_service.go b/pkg/probo/evidence_service.go index 8409becb6..5df60c2f4 100644 --- a/pkg/probo/evidence_service.go +++ b/pkg/probo/evidence_service.go @@ -79,7 +79,7 @@ func (s EvidenceService) Create( evidence := &coredata.Evidence{ ID: evidenceID, - TaskID: req.TaskID, + TaskID: &req.TaskID, State: coredata.EvidenceStateValid, Type: req.Type, Filename: req.Name,