diff --git a/pkg/compute/models/isolated_devices.go b/pkg/compute/models/isolated_devices.go index 83a0e05372..dde96f209f 100644 --- a/pkg/compute/models/isolated_devices.go +++ b/pkg/compute/models/isolated_devices.go @@ -589,7 +589,8 @@ func (manager *SIsolatedDeviceManager) FindByHost(id string) []SIsolatedDevice { func (manager *SIsolatedDeviceManager) FindByHosts(ids []string) []SIsolatedDevice { dest := make([]SIsolatedDevice, 0) - err := manager.Query().In("host_id", ids).All(&dest) + q := manager.Query().In("host_id", ids) + err := db.FetchModelObjects(manager, q, &dest) if err != nil { log.Errorln(err) return nil diff --git a/pkg/compute/tasks/baremetal_unconvert_hypervisor_task.go b/pkg/compute/tasks/baremetal_unconvert_hypervisor_task.go index c6be22f89a..7c2c40d473 100644 --- a/pkg/compute/tasks/baremetal_unconvert_hypervisor_task.go +++ b/pkg/compute/tasks/baremetal_unconvert_hypervisor_task.go @@ -49,6 +49,7 @@ func (self *BaremetalUnconvertHypervisorTask) OnInit(ctx context.Context, obj db } else { self.OnGuestDeleteComplete(ctx, baremetal, nil) } + models.IsolatedDeviceManager.DeleteDevicesByHost(ctx, self.GetUserCred(), baremetal) } func (self *BaremetalUnconvertHypervisorTask) OnGuestDeleteComplete(ctx context.Context, baremetal *models.SHost, body jsonutils.JSONObject) {