fix disk list corruption issue

pull/564/head
andyzhangx 2019-04-28 11:56:59 +00:00
parent b8f2b772e3
commit c01eca5802
2 changed files with 10 additions and 4 deletions

View File

@ -40,7 +40,9 @@ func (as *availabilitySet) AttachDisk(isManagedDisk bool, diskName, diskURI stri
return err
}
disks := *vm.StorageProfile.DataDisks
disks := make([]compute.DataDisk, len(*vm.StorageProfile.DataDisks))
copy(disks, *vm.StorageProfile.DataDisks)
if isManagedDisk {
disks = append(disks,
compute.DataDisk{
@ -112,7 +114,9 @@ func (as *availabilitySet) DetachDiskByName(diskName, diskURI string, nodeName t
return err
}
disks := *vm.StorageProfile.DataDisks
disks := make([]compute.DataDisk, len(*vm.StorageProfile.DataDisks))
copy(disks, *vm.StorageProfile.DataDisks)
bFoundDisk := false
for i, disk := range disks {
if disk.Lun != nil && (disk.Name != nil && diskName != "" && *disk.Name == diskName) ||

View File

@ -42,7 +42,8 @@ func (ss *scaleSet) AttachDisk(isManagedDisk bool, diskName, diskURI string, nod
disks := []compute.DataDisk{}
if vm.StorageProfile != nil && vm.StorageProfile.DataDisks != nil {
disks = *vm.StorageProfile.DataDisks
disks = make([]compute.DataDisk, len(*vm.StorageProfile.DataDisks))
copy(disks, *vm.StorageProfile.DataDisks)
}
if isManagedDisk {
disks = append(disks,
@ -117,7 +118,8 @@ func (ss *scaleSet) DetachDiskByName(diskName, diskURI string, nodeName types.No
disks := []compute.DataDisk{}
if vm.StorageProfile != nil && vm.StorageProfile.DataDisks != nil {
disks = *vm.StorageProfile.DataDisks
disks = make([]compute.DataDisk, len(*vm.StorageProfile.DataDisks))
copy(disks, *vm.StorageProfile.DataDisks)
}
bFoundDisk := false
for i, disk := range disks {