From 57a585149f6f88ba091c0a8f2d156a42af4a4e07 Mon Sep 17 00:00:00 2001 From: Qiu Jian Date: Wed, 27 Sep 2023 14:28:48 +0800 Subject: [PATCH] fix: fail purge disk due to getMastHost failure --- pkg/compute/tasks/disk_delete_task.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkg/compute/tasks/disk_delete_task.go b/pkg/compute/tasks/disk_delete_task.go index bc415e1644..39bb69e0ad 100644 --- a/pkg/compute/tasks/disk_delete_task.go +++ b/pkg/compute/tasks/disk_delete_task.go @@ -116,14 +116,16 @@ func (self *DiskDeleteTask) startDeleteDisk(ctx context.Context, disk *models.SD return } + purgeParams := jsonutils.QueryBoolean(self.Params, "purge", false) + host, err := storage.GetMasterHost() - if err != nil && errors.Cause(err) != sql.ErrNoRows { + if err != nil && errors.Cause(err) != sql.ErrNoRows && !purgeParams { self.OnGuestDiskDeleteCompleteFailed(ctx, disk, jsonutils.NewString("storage.GetMasterHost")) return } isPurge := false - if (host == nil || !host.GetEnabled()) && jsonutils.QueryBoolean(self.Params, "purge", false) { + if (host == nil || !host.GetEnabled()) && purgeParams { isPurge = true } disk.SetStatus(self.UserCred, api.DISK_DEALLOC, "")