diff --git a/pkg/compute/models/snapshots.go b/pkg/compute/models/snapshots.go index 65108baece..fe16f8b261 100644 --- a/pkg/compute/models/snapshots.go +++ b/pkg/compute/models/snapshots.go @@ -623,6 +623,11 @@ func (self *SSnapshot) ValidateDeleteCondition(ctx context.Context) error { if count > 0 { return httperrors.NewBadRequestError("snapshot referenced by instance snapshot") } + if disk, err := self.GetDisk(); err == nil { + if disk.Status == api.DISK_RESET { + return httperrors.NewBadRequestError("Cannot delete snapshot on disk reset") + } + } driver := self.GetRegionDriver() if driver != nil { return driver.ValidateSnapshotDelete(ctx, self)