This commit is contained in:
Pearl Dsilva 2026-06-22 16:14:03 -04:00
parent a7b9a414fa
commit b5cd9c84fe
2 changed files with 42 additions and 3 deletions

View File

@ -167,14 +167,49 @@ public class VolumeServiceImplClvmTest {
}
@Test
public void testIsLockTransferRequired_DifferentPools() {
public void testIsLockTransferRequired_DifferentPools_LockOnDifferentHost() {
when(volumeService.findVolumeLockHost(volumeInfoMock)).thenReturn(HOST_ID_2);
assertTrue(volumeService.isLockTransferRequired(
volumeInfoMock, StoragePoolType.CLVM, StoragePoolType.CLVM,
POOL_ID_1, POOL_ID_2, HOST_ID_1));
}
@Test
public void testIsLockTransferRequired_DifferentPools_LockOnSameHost() {
when(volumeService.findVolumeLockHost(volumeInfoMock)).thenReturn(HOST_ID_1);
assertFalse(volumeService.isLockTransferRequired(
volumeInfoMock, StoragePoolType.CLVM, StoragePoolType.CLVM,
POOL_ID_1, POOL_ID_2, HOST_ID_1));
}
@Test
public void testIsLockTransferRequired_NullPoolIds() {
public void testIsLockTransferRequired_DifferentPools_NoLockHost() {
when(volumeService.findVolumeLockHost(volumeInfoMock)).thenReturn(null);
assertFalse(volumeService.isLockTransferRequired(
volumeInfoMock, StoragePoolType.CLVM, StoragePoolType.CLVM,
POOL_ID_1, POOL_ID_2, HOST_ID_1));
}
@Test
public void testIsLockTransferRequired_NullPoolIds_LockOnDifferentHost() {
when(volumeService.findVolumeLockHost(volumeInfoMock)).thenReturn(HOST_ID_2);
assertTrue(volumeService.isLockTransferRequired(
volumeInfoMock, StoragePoolType.CLVM, StoragePoolType.CLVM,
null, POOL_ID_1, HOST_ID_1));
assertTrue(volumeService.isLockTransferRequired(
volumeInfoMock, StoragePoolType.CLVM, StoragePoolType.CLVM,
POOL_ID_1, null, HOST_ID_1));
}
@Test
public void testIsLockTransferRequired_NullPoolIds_NoLockHost() {
when(volumeService.findVolumeLockHost(volumeInfoMock)).thenReturn(null);
assertFalse(volumeService.isLockTransferRequired(
volumeInfoMock, StoragePoolType.CLVM, StoragePoolType.CLVM,
null, POOL_ID_1, HOST_ID_1));

View File

@ -568,7 +568,11 @@ public class KVMStorageProcessor implements StorageProcessor {
final VolumeObjectTO newVol = new VolumeObjectTO();
newVol.setPath(vol.getName());
newVol.setSize(volume.getSize());
if (StoragePoolType.CLVM_NG.equals(primaryStore.getPoolType()) && vol != null && vol.getVirtualSize() > 0) {
newVol.setSize(vol.getVirtualSize());
} else {
newVol.setSize(volume.getSize());
}
if (vol.getQemuEncryptFormat() != null) {
newVol.setEncryptFormat(vol.getQemuEncryptFormat().toString());
}