From 24fd649a2a48121282f85121f257cebead7b3bf2 Mon Sep 17 00:00:00 2001 From: Marcus Sorensen Date: Thu, 6 Jul 2023 16:12:16 -0600 Subject: [PATCH] Set encrypted PowerFlex disk format correctly --- .../cloud/hypervisor/kvm/storage/KVMStorageProcessor.java | 3 +++ .../datastore/driver/ScaleIOPrimaryDataStoreDriver.java | 8 ++------ 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java index fd23d23745c1..69c28d4350a8 100644 --- a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java +++ b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java @@ -1609,6 +1609,9 @@ public Answer createVolume(final CreateObjectCommand cmd) { if (vol.getQemuEncryptFormat() != null) { newVol.setEncryptFormat(vol.getQemuEncryptFormat().toString()); } + if (vol.getFormat() != null) { + format = vol.getFormat(); + } } newVol.setSize(volume.getSize()); newVol.setFormat(ImageFormat.valueOf(format.toString().toUpperCase())); diff --git a/plugins/storage/volume/scaleio/src/main/java/org/apache/cloudstack/storage/datastore/driver/ScaleIOPrimaryDataStoreDriver.java b/plugins/storage/volume/scaleio/src/main/java/org/apache/cloudstack/storage/datastore/driver/ScaleIOPrimaryDataStoreDriver.java index 3a285b499044..cad88dcdd15e 100644 --- a/plugins/storage/volume/scaleio/src/main/java/org/apache/cloudstack/storage/datastore/driver/ScaleIOPrimaryDataStoreDriver.java +++ b/plugins/storage/volume/scaleio/src/main/java/org/apache/cloudstack/storage/datastore/driver/ScaleIOPrimaryDataStoreDriver.java @@ -504,11 +504,7 @@ public CreateObjectAnswer createVolume(VolumeInfo volumeInfo, long storagePoolId volume.setFolder(scaleIOVolume.getVtreeId()); volume.setSize(scaleIOVolume.getSizeInKb() * 1024); volume.setPoolType(Storage.StoragePoolType.PowerFlex); - if (volumeInfo.getVolumeType().equals(Volume.Type.ROOT)) { - volume.setFormat(volumeInfo.getFormat()); - } else { - volume.setFormat(Storage.ImageFormat.RAW); - } + volume.setFormat(volumeInfo.getFormat()); volume.setPoolId(storagePoolId); VolumeObject createdObject = VolumeObject.getVolumeObject(volumeInfo.getDataStore(), volume); createdObject.update(); @@ -1202,7 +1198,7 @@ private void resizeVolume(VolumeInfo volumeInfo) { if (payload.instanceName != null) { VMInstanceVO instance = vmInstanceDao.findVMByInstanceName(payload.instanceName); - if (instance.getState().equals(VirtualMachine.State.Running)) { + if (instance != null && instance.getState().equals(VirtualMachine.State.Running)) { hostId = instance.getHostId(); attachedRunning = true; }