From 8aa76d2176e642dade6ae3ff84d2d3ad85320cc6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=88=E8=BD=A9?= Date: Mon, 28 Oct 2024 16:41:06 +0800 Subject: [PATCH] =?UTF-8?q?fix(region):=20=E9=81=BF=E5=85=8D=E7=BF=BB?= =?UTF-8?q?=E9=A1=B5=E6=9F=A5=E8=AF=A2=E5=AF=BC=E8=87=B4=E5=85=AC=E6=9C=89?= =?UTF-8?q?=E4=BA=91=E5=AE=9E=E4=BE=8B=E8=A2=AB=E8=AF=AF=E6=B8=85=E9=99=A4?= =?UTF-8?q?=20(#21481)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/compute/models/guests.go | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/pkg/compute/models/guests.go b/pkg/compute/models/guests.go index 2ddb3f2414..5014f8c248 100644 --- a/pkg/compute/models/guests.go +++ b/pkg/compute/models/guests.go @@ -3000,17 +3000,21 @@ func (self *SGuest) SyncRemoveCloudVM(ctx context.Context, userCred mcclient.Tok } return q }) - if err == nil { - _, err = db.Update(self, func() error { - self.HostId = host.GetId() - self.Status = iVM.GetStatus() - self.PowerStates = iVM.GetPowerStates() - self.InferPowerStates() - return nil - }) - return err + if err != nil { + log.Errorf("fetch vm %s(%s) host by id %s error: %v", self.Name, self.ExternalId, hostId, err) + return nil } + _, err = db.Update(self, func() error { + self.HostId = host.GetId() + self.Status = iVM.GetStatus() + self.PowerStates = iVM.GetPowerStates() + self.InferPowerStates() + return nil + }) + return err } + // 公有云实例, 因为翻页查询导致实例返回结果漏查,且GetIHostId一般返回为空 + return nil } else if errors.Cause(err) != cloudprovider.ErrNotFound { return errors.Wrap(err, "GetIVMById") }