From 1a37043c0ddaf8bb7530286dca472061873ec2be Mon Sep 17 00:00:00 2001 From: Daan Hoogland Date: Wed, 10 Jan 2024 09:01:33 +0100 Subject: [PATCH] round up root disk size to the nearest accptable size for import --- .../org/apache/cloudstack/vm/UnmanagedVMsManagerImpl.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/server/src/main/java/org/apache/cloudstack/vm/UnmanagedVMsManagerImpl.java b/server/src/main/java/org/apache/cloudstack/vm/UnmanagedVMsManagerImpl.java index 3179bf12fea5..feb10840cec6 100644 --- a/server/src/main/java/org/apache/cloudstack/vm/UnmanagedVMsManagerImpl.java +++ b/server/src/main/java/org/apache/cloudstack/vm/UnmanagedVMsManagerImpl.java @@ -1113,7 +1113,8 @@ private UserVm importVirtualMachineInternal(final UnmanagedInstanceTO unmanagedI } allDetails.put(VmDetailConstants.ROOT_DISK_CONTROLLER, rootDisk.getController()); if (cluster.getHypervisorType() == Hypervisor.HypervisorType.KVM && isImportUnmanagedFromSameHypervisor) { - allDetails.put(VmDetailConstants.ROOT_DISK_SIZE, String.valueOf(rootDisk.getCapacity() / Resource.ResourceType.bytesToGiB)); + long size = Double.valueOf(Math.ceil((double)rootDisk.getCapacity() / Resource.ResourceType.bytesToGiB)).longValue(); + allDetails.put(VmDetailConstants.ROOT_DISK_SIZE, String.valueOf(size)); } try { @@ -1172,7 +1173,7 @@ private UserVm importVirtualMachineInternal(final UnmanagedInstanceTO unmanagedI } DiskOfferingVO diskOffering = diskOfferingDao.findById(serviceOffering.getDiskOfferingId()); diskProfileStoragePoolList.add(importDisk(rootDisk, userVm, cluster, diskOffering, Volume.Type.ROOT, String.format("ROOT-%d", userVm.getId()), - (rootDisk.getCapacity() / Resource.ResourceType.bytesToGiB), minIops, maxIops, + Double.valueOf(Math.ceil((double)rootDisk.getCapacity() / Resource.ResourceType.bytesToGiB)).longValue(), minIops, maxIops, template, owner, null)); long deviceId = 1L; for (UnmanagedInstanceTO.Disk disk : dataDisks) {