From 03ceb05ffed45eda95ec42894a749d071b388084 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Diogo=20Ferr=C3=A3o?= Date: Tue, 14 May 2024 17:46:38 +0100 Subject: [PATCH 1/2] sort mongodb restore jobs in `RestoreInstanceWaitHandler` --- services/mongodbflex/wait/wait.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/services/mongodbflex/wait/wait.go b/services/mongodbflex/wait/wait.go index 20ae4f2de..17e64ef21 100644 --- a/services/mongodbflex/wait/wait.go +++ b/services/mongodbflex/wait/wait.go @@ -1,9 +1,11 @@ package wait import ( + "cmp" "context" "fmt" "net/http" + "slices" "time" "github.com/stackitcloud/stackit-sdk-go/core/oapierror" @@ -75,8 +77,16 @@ func RestoreInstanceWaitHandler(ctx context.Context, a APIClientInstanceInterfac return false, nil, nil } + restoreJobsSlice := *s.Items + + // sort array by descending date + slices.SortFunc(restoreJobsSlice, func(i, j mongodbflex.RestoreInstanceStatus) int { + // swap elements to sort by descending order + return cmp.Compare(*j.Date, *i.Date) + }) + var status string - for _, restoreJob := range *s.Items { + for _, restoreJob := range restoreJobsSlice { if *restoreJob.BackupID == backupId { status = *restoreJob.Status break From 0516b068c2ccad60c37d5bb1758660bc496e6732 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Diogo=20Ferr=C3=A3o?= Date: Tue, 14 May 2024 18:04:48 +0100 Subject: [PATCH 2/2] remove slices package --- services/mongodbflex/wait/wait.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/services/mongodbflex/wait/wait.go b/services/mongodbflex/wait/wait.go index 17e64ef21..104468e1d 100644 --- a/services/mongodbflex/wait/wait.go +++ b/services/mongodbflex/wait/wait.go @@ -1,11 +1,10 @@ package wait import ( - "cmp" "context" "fmt" "net/http" - "slices" + "sort" "time" "github.com/stackitcloud/stackit-sdk-go/core/oapierror" @@ -80,9 +79,9 @@ func RestoreInstanceWaitHandler(ctx context.Context, a APIClientInstanceInterfac restoreJobsSlice := *s.Items // sort array by descending date - slices.SortFunc(restoreJobsSlice, func(i, j mongodbflex.RestoreInstanceStatus) int { + sort.Slice(restoreJobsSlice, func(i, j int) bool { // swap elements to sort by descending order - return cmp.Compare(*j.Date, *i.Date) + return *restoreJobsSlice[i].Date > *restoreJobsSlice[j].Date }) var status string