This is an automated email from the ASF dual-hosted git repository.
DaanHoogland pushed a commit to branch 4.20
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
The following commit(s) were added to refs/heads/4.20 by this push:
new 6a2e033322b apply the restored volume max IOPS to the max IOPS field
(#14024)
6a2e033322b is described below
commit 6a2e033322b12bfdb374d1fe01a833b040fe5859
Author: Ramgopal Nagaboina <[email protected]>
AuthorDate: Tue Sep 8 06:49:34 2026 -0400
apply the restored volume max IOPS to the max IOPS field (#14024)
---
server/src/main/java/com/cloud/vm/UserVmManagerImpl.java | 2 +-
.../src/test/java/com/cloud/vm/UserVmManagerImplTest.java | 15 +++++++++++++++
2 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/server/src/main/java/com/cloud/vm/UserVmManagerImpl.java
b/server/src/main/java/com/cloud/vm/UserVmManagerImpl.java
index 2d2cf80c830..54ba6f0e872 100644
--- a/server/src/main/java/com/cloud/vm/UserVmManagerImpl.java
+++ b/server/src/main/java/com/cloud/vm/UserVmManagerImpl.java
@@ -8655,7 +8655,7 @@ public class UserVmManagerImpl extends ManagerBase
implements UserVmManager, Vir
resizedVolume.setMinIops(Long.parseLong(minIops));
}
if (StringUtils.isNumeric(maxIops)) {
- resizedVolume.setMinIops(Long.parseLong(maxIops));
+ resizedVolume.setMaxIops(Long.parseLong(maxIops));
}
}
}
diff --git a/server/src/test/java/com/cloud/vm/UserVmManagerImplTest.java
b/server/src/test/java/com/cloud/vm/UserVmManagerImplTest.java
index 96f25307d9b..68c3fbedf03 100644
--- a/server/src/test/java/com/cloud/vm/UserVmManagerImplTest.java
+++ b/server/src/test/java/com/cloud/vm/UserVmManagerImplTest.java
@@ -3186,4 +3186,19 @@ public class UserVmManagerImplTest {
userVmManagerImpl.verifyVmLimits(userVmVoMock,
customParameters));
Assert.assertTrue(ex.getMessage().startsWith("The CPU speed of this
offering"));
}
+
+ @Test
+ public void getRootVolumeSizeForVmRestoreAppliesMaxIopsToTheMaxIopsField()
{
+ VolumeVO volume = new VolumeVO(Volume.Type.ROOT, "root", 1L, 1L, 1L,
1L,
+ com.cloud.storage.Storage.ProvisioningType.THIN, 10L, null,
null, null);
+ UserVmVO restoreVm = Mockito.mock(UserVmVO.class);
+ Map<String, String> details = new HashMap<>();
+ details.put(ApiConstants.MIN_IOPS, "500");
+ details.put(ApiConstants.MAX_IOPS, "2000");
+
+ userVmManagerImpl.getRootVolumeSizeForVmRestore(volume, null,
restoreVm, null, details, true);
+
+ Assert.assertEquals(Long.valueOf(500L), volume.getMinIops());
+ Assert.assertEquals(Long.valueOf(2000L), volume.getMaxIops());
+ }
}