From 3f8a54bdee4020241e1d4937d3d61dc29c91467d Mon Sep 17 00:00:00 2001 From: Harikrishna Patnala Date: Tue, 30 Jan 2024 13:17:35 +0530 Subject: [PATCH] Refactored the names to look similar across the code --- .../com/cloud/storage/VolumeApiService.java | 4 +-- ...rCmd.java => CheckAndRepairVolumeCmd.java} | 8 +++--- ...r.java => CheckAndRepairVolumeAnswer.java} | 8 +++--- ....java => CheckAndRepairVolumeCommand.java} | 4 +-- .../cloud/vm/VmWorkCheckAndRepairVolume.java | 2 +- .../storage/volume/VolumeServiceImpl.java | 17 ++++++------ .../storage/volume/VolumeServiceTest.java | 12 ++++----- ...rtCheckAndRepairVolumeCommandWrapper.java} | 26 +++++++++---------- ...eckAndRepairVolumeCommandWrapperTest.java} | 16 ++++++------ .../cloud/server/ManagementServerImpl.java | 4 +-- .../cloud/storage/VolumeApiServiceImpl.java | 20 +++++++------- .../storage/VolumeApiServiceImplTest.java | 4 +-- 12 files changed, 63 insertions(+), 62 deletions(-) rename api/src/main/java/org/apache/cloudstack/api/command/user/volume/{CheckVolumeAndRepairCmd.java => CheckAndRepairVolumeCmd.java} (92%) rename core/src/main/java/com/cloud/agent/api/storage/{CheckVolumeAndRepairAnswer.java => CheckAndRepairVolumeAnswer.java} (89%) rename core/src/main/java/com/cloud/agent/api/storage/{CheckVolumeAndRepairCommand.java => CheckAndRepairVolumeCommand.java} (94%) rename plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/{LibvirtCheckVolumeAndRepairCommandWrapper.java => LibvirtCheckAndRepairVolumeCommandWrapper.java} (86%) rename plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/{LibvirtCheckVolumeAndRepairCommandWrapperTest.java => LibvirtCheckAndRepairVolumeCommandWrapperTest.java} (84%) diff --git a/api/src/main/java/com/cloud/storage/VolumeApiService.java b/api/src/main/java/com/cloud/storage/VolumeApiService.java index 652d4ab3cc8..a673df12d0f 100644 --- a/api/src/main/java/com/cloud/storage/VolumeApiService.java +++ b/api/src/main/java/com/cloud/storage/VolumeApiService.java @@ -26,7 +26,7 @@ import com.cloud.utils.Pair; import org.apache.cloudstack.api.command.user.volume.AssignVolumeCmd; import org.apache.cloudstack.api.command.user.volume.AttachVolumeCmd; import org.apache.cloudstack.api.command.user.volume.ChangeOfferingForVolumeCmd; -import org.apache.cloudstack.api.command.user.volume.CheckVolumeAndRepairCmd; +import org.apache.cloudstack.api.command.user.volume.CheckAndRepairVolumeCmd; import org.apache.cloudstack.api.command.user.volume.CreateVolumeCmd; import org.apache.cloudstack.api.command.user.volume.DetachVolumeCmd; import org.apache.cloudstack.api.command.user.volume.ExtractVolumeCmd; @@ -181,5 +181,5 @@ public interface VolumeApiService { boolean stateTransitTo(Volume vol, Volume.Event event) throws NoTransitionException; - Pair checkAndRepairVolume(CheckVolumeAndRepairCmd cmd) throws ResourceAllocationException; + Pair checkAndRepairVolume(CheckAndRepairVolumeCmd cmd) throws ResourceAllocationException; } diff --git a/api/src/main/java/org/apache/cloudstack/api/command/user/volume/CheckVolumeAndRepairCmd.java b/api/src/main/java/org/apache/cloudstack/api/command/user/volume/CheckAndRepairVolumeCmd.java similarity index 92% rename from api/src/main/java/org/apache/cloudstack/api/command/user/volume/CheckVolumeAndRepairCmd.java rename to api/src/main/java/org/apache/cloudstack/api/command/user/volume/CheckAndRepairVolumeCmd.java index 5ac5445fe5f..01835de8ce1 100644 --- a/api/src/main/java/org/apache/cloudstack/api/command/user/volume/CheckVolumeAndRepairCmd.java +++ b/api/src/main/java/org/apache/cloudstack/api/command/user/volume/CheckAndRepairVolumeCmd.java @@ -36,15 +36,15 @@ import com.cloud.user.Account; import com.cloud.utils.Pair; import com.cloud.utils.StringUtils; -@APICommand(name = "checkVolumeAndRepair", description = "Check the volume and repair if needed, this is currently supported for KVM only", responseObject = VolumeResponse.class, entityType = {Volume.class}, +@APICommand(name = "checkVolume", description = "Check the volume for any errors or leaks and also repairs when repair parameter is passed, this is currently supported for KVM only", responseObject = VolumeResponse.class, entityType = {Volume.class}, since = "4.18.1", authorized = {RoleType.Admin, RoleType.ResourceAdmin, RoleType.DomainAdmin, RoleType.User}, requestHasSensitiveInfo = false, responseHasSensitiveInfo = true) -public class CheckVolumeAndRepairCmd extends BaseCmd { - public static final Logger s_logger = Logger.getLogger(CheckVolumeAndRepairCmd.class.getName()); +public class CheckAndRepairVolumeCmd extends BaseCmd { + public static final Logger s_logger = Logger.getLogger(CheckAndRepairVolumeCmd.class.getName()); - private static final String s_name = "checkvolumeandrepairresponse"; + private static final String s_name = "checkandrepairvolumeresponse"; ///////////////////////////////////////////////////// //////////////// API parameters ///////////////////// diff --git a/core/src/main/java/com/cloud/agent/api/storage/CheckVolumeAndRepairAnswer.java b/core/src/main/java/com/cloud/agent/api/storage/CheckAndRepairVolumeAnswer.java similarity index 89% rename from core/src/main/java/com/cloud/agent/api/storage/CheckVolumeAndRepairAnswer.java rename to core/src/main/java/com/cloud/agent/api/storage/CheckAndRepairVolumeAnswer.java index 25fc9082787..3dc7752bfef 100644 --- a/core/src/main/java/com/cloud/agent/api/storage/CheckVolumeAndRepairAnswer.java +++ b/core/src/main/java/com/cloud/agent/api/storage/CheckAndRepairVolumeAnswer.java @@ -21,21 +21,21 @@ package com.cloud.agent.api.storage; import com.cloud.agent.api.Answer; -public class CheckVolumeAndRepairAnswer extends Answer { +public class CheckAndRepairVolumeAnswer extends Answer { private String volumeCheckExecutionResult; private String volumeRepairExecutionResult; - protected CheckVolumeAndRepairAnswer() { + protected CheckAndRepairVolumeAnswer() { super(); } - public CheckVolumeAndRepairAnswer(CheckVolumeAndRepairCommand cmd, boolean result, String details, String volumeCheckExecutionResult, String volumeRepairedExecutionResult) { + public CheckAndRepairVolumeAnswer(CheckAndRepairVolumeCommand cmd, boolean result, String details, String volumeCheckExecutionResult, String volumeRepairedExecutionResult) { super(cmd, result, details); this.volumeCheckExecutionResult = volumeCheckExecutionResult; this.volumeRepairExecutionResult = volumeRepairedExecutionResult; } - public CheckVolumeAndRepairAnswer(CheckVolumeAndRepairCommand cmd, boolean result, String details) { + public CheckAndRepairVolumeAnswer(CheckAndRepairVolumeCommand cmd, boolean result, String details) { super(cmd, result, details); } diff --git a/core/src/main/java/com/cloud/agent/api/storage/CheckVolumeAndRepairCommand.java b/core/src/main/java/com/cloud/agent/api/storage/CheckAndRepairVolumeCommand.java similarity index 94% rename from core/src/main/java/com/cloud/agent/api/storage/CheckVolumeAndRepairCommand.java rename to core/src/main/java/com/cloud/agent/api/storage/CheckAndRepairVolumeCommand.java index e6d12aab513..2553fdf477c 100644 --- a/core/src/main/java/com/cloud/agent/api/storage/CheckVolumeAndRepairCommand.java +++ b/core/src/main/java/com/cloud/agent/api/storage/CheckAndRepairVolumeCommand.java @@ -25,7 +25,7 @@ import com.cloud.agent.api.to.StorageFilerTO; import java.util.Arrays; -public class CheckVolumeAndRepairCommand extends Command { +public class CheckAndRepairVolumeCommand extends Command { private String path; private StorageFilerTO pool; private String repair; @@ -33,7 +33,7 @@ public class CheckVolumeAndRepairCommand extends Command { private byte[] passphrase; private String encryptFormat; - public CheckVolumeAndRepairCommand(String path, StorageFilerTO pool, String repair, byte[] passphrase, String encryptFormat) { + public CheckAndRepairVolumeCommand(String path, StorageFilerTO pool, String repair, byte[] passphrase, String encryptFormat) { this.path = path; this.pool = pool; this.repair = repair; diff --git a/engine/components-api/src/main/java/com/cloud/vm/VmWorkCheckAndRepairVolume.java b/engine/components-api/src/main/java/com/cloud/vm/VmWorkCheckAndRepairVolume.java index b6b73df959f..eaee4d19eb3 100644 --- a/engine/components-api/src/main/java/com/cloud/vm/VmWorkCheckAndRepairVolume.java +++ b/engine/components-api/src/main/java/com/cloud/vm/VmWorkCheckAndRepairVolume.java @@ -19,7 +19,7 @@ package com.cloud.vm; public class VmWorkCheckAndRepairVolume extends VmWork { - private static final long serialVersionUID = 341816293003023823L; + private static final long serialVersionUID = 341816293003023824L; private Long volumeId; diff --git a/engine/storage/volume/src/main/java/org/apache/cloudstack/storage/volume/VolumeServiceImpl.java b/engine/storage/volume/src/main/java/org/apache/cloudstack/storage/volume/VolumeServiceImpl.java index c0628007326..76b6b7de9c0 100644 --- a/engine/storage/volume/src/main/java/org/apache/cloudstack/storage/volume/VolumeServiceImpl.java +++ b/engine/storage/volume/src/main/java/org/apache/cloudstack/storage/volume/VolumeServiceImpl.java @@ -34,7 +34,7 @@ import javax.inject.Inject; import org.apache.cloudstack.annotation.AnnotationService; import org.apache.cloudstack.annotation.dao.AnnotationDao; -import org.apache.cloudstack.api.command.user.volume.CheckVolumeAndRepairCmd; +import org.apache.cloudstack.api.command.user.volume.CheckAndRepairVolumeCmd; import org.apache.cloudstack.engine.cloud.entity.api.VolumeEntity; import org.apache.cloudstack.engine.orchestration.service.VolumeOrchestrationService; import org.apache.cloudstack.engine.subsystem.api.storage.ChapInfo; @@ -88,8 +88,8 @@ import org.springframework.stereotype.Component; import com.cloud.agent.AgentManager; import com.cloud.agent.api.Answer; import com.cloud.agent.api.ModifyTargetsCommand; -import com.cloud.agent.api.storage.CheckVolumeAndRepairAnswer; -import com.cloud.agent.api.storage.CheckVolumeAndRepairCommand; +import com.cloud.agent.api.storage.CheckAndRepairVolumeAnswer; +import com.cloud.agent.api.storage.CheckAndRepairVolumeCommand; import com.cloud.agent.api.storage.ListVolumeAnswer; import com.cloud.agent.api.storage.ListVolumeCommand; import com.cloud.agent.api.storage.ResizeVolumeCommand; @@ -2768,9 +2768,9 @@ public class VolumeServiceImpl implements VolumeService { @Override public void checkAndRepairVolumeBasedOnConfig(DataObject dataObject, Host host) { if (HypervisorType.KVM.equals(host.getHypervisorType()) && DataObjectType.VOLUME.equals(dataObject.getType())) { - if (com.cloud.storage.VolumeApiServiceImpl.AllowVolumeCheckAndRepair.value()) { + if (com.cloud.storage.VolumeApiServiceImpl.AllowCheckAndRepairVolume.value()) { s_logger.info(String.format("Trying to check and repair the volume %d", dataObject.getId())); - String repair = CheckVolumeAndRepairCmd.RepairValues.leaks.name(); + String repair = CheckAndRepairVolumeCmd.RepairValues.leaks.name(); CheckAndRepairVolumePayload payload = new CheckAndRepairVolumePayload(repair); VolumeInfo volumeInfo = volFactory.getVolume(dataObject.getId()); volumeInfo.addPayload(payload); @@ -2784,11 +2784,11 @@ public class VolumeServiceImpl implements VolumeService { Long poolId = volume.getPoolId(); StoragePool pool = _storageMgr.getStoragePool(poolId); CheckAndRepairVolumePayload payload = (CheckAndRepairVolumePayload) volume.getpayload(); - CheckVolumeAndRepairCommand command = new CheckVolumeAndRepairCommand(volume.getPath(), new StorageFilerTO(pool), payload.getRepair(), + CheckAndRepairVolumeCommand command = new CheckAndRepairVolumeCommand(volume.getPath(), new StorageFilerTO(pool), payload.getRepair(), volume.getPassphrase(), volume.getEncryptFormat()); try { - CheckVolumeAndRepairAnswer answer = (CheckVolumeAndRepairAnswer) _storageMgr.sendToPool(pool, null, command); + CheckAndRepairVolumeAnswer answer = (CheckAndRepairVolumeAnswer) _storageMgr.sendToPool(pool, null, command); if (answer != null && answer.getResult()) { s_logger.debug("Check volume response result: " + answer.getDetails()); payload.setVolumeCheckExecutionResult(answer.getVolumeCheckExecutionResult()); @@ -2797,7 +2797,8 @@ public class VolumeServiceImpl implements VolumeService { } return new Pair<>(answer.getVolumeCheckExecutionResult(), answer.getVolumeRepairExecutionResult()); } else { - s_logger.debug("Failed to check and repair the volume with error " + answer.getDetails()); + String errMsg = (answer == null) ? null : answer.getDetails(); + s_logger.debug("Failed to check and repair the volume with error " + errMsg); } } catch (Exception e) { diff --git a/engine/storage/volume/src/test/java/org/apache/cloudstack/storage/volume/VolumeServiceTest.java b/engine/storage/volume/src/test/java/org/apache/cloudstack/storage/volume/VolumeServiceTest.java index 23996fda470..a789a2fb660 100644 --- a/engine/storage/volume/src/test/java/org/apache/cloudstack/storage/volume/VolumeServiceTest.java +++ b/engine/storage/volume/src/test/java/org/apache/cloudstack/storage/volume/VolumeServiceTest.java @@ -19,8 +19,8 @@ package org.apache.cloudstack.storage.volume; -import com.cloud.agent.api.storage.CheckVolumeAndRepairAnswer; -import com.cloud.agent.api.storage.CheckVolumeAndRepairCommand; +import com.cloud.agent.api.storage.CheckAndRepairVolumeAnswer; +import com.cloud.agent.api.storage.CheckAndRepairVolumeCommand; import com.cloud.agent.api.to.StorageFilerTO; import com.cloud.exception.StorageUnavailableException; import com.cloud.storage.CheckAndRepairVolumePayload; @@ -251,10 +251,10 @@ public class VolumeServiceTest extends TestCase{ " \"fragmented-clusters\": 96135\n" + "}"; - CheckVolumeAndRepairCommand command = new CheckVolumeAndRepairCommand(volume.getPath(), new StorageFilerTO(pool), payload.getRepair(), + CheckAndRepairVolumeCommand command = new CheckAndRepairVolumeCommand(volume.getPath(), new StorageFilerTO(pool), payload.getRepair(), volume.getPassphrase(), volume.getEncryptFormat()); - CheckVolumeAndRepairAnswer answer = new CheckVolumeAndRepairAnswer(command, true, checkResult); + CheckAndRepairVolumeAnswer answer = new CheckAndRepairVolumeAnswer(command, true, checkResult); answer.setVolumeCheckExecutionResult(checkResult); Mockito.when(storageManagerMock.sendToPool(pool, null, command)).thenReturn(answer); @@ -276,10 +276,10 @@ public class VolumeServiceTest extends TestCase{ Mockito.when(volume.getPassphrase()).thenReturn(new byte[] {3, 1, 2, 3}); Mockito.when(volume.getEncryptFormat()).thenReturn("LUKS"); - CheckVolumeAndRepairCommand command = new CheckVolumeAndRepairCommand(volume.getPath(), new StorageFilerTO(pool), payload.getRepair(), + CheckAndRepairVolumeCommand command = new CheckAndRepairVolumeCommand(volume.getPath(), new StorageFilerTO(pool), payload.getRepair(), volume.getPassphrase(), volume.getEncryptFormat()); - CheckVolumeAndRepairAnswer answer = new CheckVolumeAndRepairAnswer(command, false, "Unable to execute qemu command"); + CheckAndRepairVolumeAnswer answer = new CheckAndRepairVolumeAnswer(command, false, "Unable to execute qemu command"); Mockito.when(storageManagerMock.sendToPool(pool, null, command)).thenReturn(answer); Pair result = volumeServiceImplSpy.checkAndRepairVolume(volume); diff --git a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckVolumeAndRepairCommandWrapper.java b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckAndRepairVolumeCommandWrapper.java similarity index 86% rename from plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckVolumeAndRepairCommandWrapper.java rename to plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckAndRepairVolumeCommandWrapper.java index 280e2aa14d2..38eb3187516 100644 --- a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckVolumeAndRepairCommandWrapper.java +++ b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckAndRepairVolumeCommandWrapper.java @@ -20,8 +20,8 @@ package com.cloud.hypervisor.kvm.resource.wrapper; import com.cloud.agent.api.Answer; -import com.cloud.agent.api.storage.CheckVolumeAndRepairCommand; -import com.cloud.agent.api.storage.CheckVolumeAndRepairAnswer; +import com.cloud.agent.api.storage.CheckAndRepairVolumeCommand; +import com.cloud.agent.api.storage.CheckAndRepairVolumeAnswer; import com.cloud.agent.api.to.StorageFilerTO; import com.cloud.hypervisor.kvm.resource.LibvirtComputingResource; import com.cloud.hypervisor.kvm.storage.KVMPhysicalDisk; @@ -48,13 +48,13 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; -@ResourceWrapper(handles = CheckVolumeAndRepairCommand.class) -public class LibvirtCheckVolumeAndRepairCommandWrapper extends CommandWrapper { +@ResourceWrapper(handles = CheckAndRepairVolumeCommand.class) +public class LibvirtCheckAndRepairVolumeCommandWrapper extends CommandWrapper { - private static final Logger s_logger = Logger.getLogger(LibvirtCheckVolumeAndRepairCommandWrapper.class); + private static final Logger s_logger = Logger.getLogger(LibvirtCheckAndRepairVolumeCommandWrapper.class); @Override - public Answer execute(CheckVolumeAndRepairCommand command, LibvirtComputingResource serverResource) { + public Answer execute(CheckAndRepairVolumeCommand command, LibvirtComputingResource serverResource) { final String volumeId = command.getPath(); final String repair = command.getRepair(); final StorageFilerTO spool = command.getPool(); @@ -66,9 +66,9 @@ public class LibvirtCheckVolumeAndRepairCommandWrapper extends CommandWrapper passphraseObjects = new ArrayList<>(); QemuImageOptions imgOptions = null; if (ArrayUtils.isEmpty(passphrase)) { diff --git a/plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckVolumeAndRepairCommandWrapperTest.java b/plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckAndRepairVolumeCommandWrapperTest.java similarity index 84% rename from plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckVolumeAndRepairCommandWrapperTest.java rename to plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckAndRepairVolumeCommandWrapperTest.java index dd7b6e0e2f7..3fa113dadbd 100644 --- a/plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckVolumeAndRepairCommandWrapperTest.java +++ b/plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckAndRepairVolumeCommandWrapperTest.java @@ -14,8 +14,8 @@ package com.cloud.hypervisor.kvm.resource.wrapper; -import com.cloud.agent.api.storage.CheckVolumeAndRepairAnswer; -import com.cloud.agent.api.storage.CheckVolumeAndRepairCommand; +import com.cloud.agent.api.storage.CheckAndRepairVolumeAnswer; +import com.cloud.agent.api.storage.CheckAndRepairVolumeCommand; import com.cloud.agent.api.to.StorageFilerTO; import com.cloud.hypervisor.kvm.resource.LibvirtComputingResource; import com.cloud.hypervisor.kvm.storage.KVMPhysicalDisk; @@ -37,16 +37,16 @@ import org.powermock.core.classloader.annotations.PrepareForTest; import org.powermock.modules.junit4.PowerMockRunner; @RunWith(PowerMockRunner.class) -public class LibvirtCheckVolumeAndRepairCommandWrapperTest { +public class LibvirtCheckAndRepairVolumeCommandWrapperTest { @Spy - LibvirtCheckVolumeAndRepairCommandWrapper libvirtCheckVolumeAndRepairCommandWrapperSpy = Mockito.spy(LibvirtCheckVolumeAndRepairCommandWrapper.class); + LibvirtCheckAndRepairVolumeCommandWrapper libvirtCheckAndRepairVolumeCommandWrapperSpy = Mockito.spy(LibvirtCheckAndRepairVolumeCommandWrapper.class); @Mock LibvirtComputingResource libvirtComputingResourceMock; @Mock - CheckVolumeAndRepairCommand checkVolumeAndRepairCommand; + CheckAndRepairVolumeCommand checkAndRepairVolumeCommand; @Mock QemuImg qemuImgMock; @@ -57,10 +57,10 @@ public class LibvirtCheckVolumeAndRepairCommandWrapperTest { } @Test - @PrepareForTest(LibvirtCheckVolumeAndRepairCommandWrapper.class) + @PrepareForTest(LibvirtCheckAndRepairVolumeCommandWrapper.class) public void testCheckAndRepairVolume() throws Exception { - CheckVolumeAndRepairCommand cmd = Mockito.mock(CheckVolumeAndRepairCommand.class); + CheckAndRepairVolumeCommand cmd = Mockito.mock(CheckAndRepairVolumeCommand.class); Mockito.when(cmd.getPath()).thenReturn("cbac516a-0f1f-4559-921c-1a7c6c408ccf"); Mockito.when(cmd.getRepair()).thenReturn(null); StorageFilerTO spool = Mockito.mock(StorageFilerTO.class); @@ -94,7 +94,7 @@ public class LibvirtCheckVolumeAndRepairCommandWrapperTest { PowerMockito.whenNew(QemuImg.class).withArguments(Mockito.anyInt()).thenReturn(qemuImgMock); Mockito.when(qemuImgMock.checkAndRepair(Mockito.any(), Mockito.any(), Mockito.any(), Mockito.any())).thenReturn(checkResult); - CheckVolumeAndRepairAnswer result = (CheckVolumeAndRepairAnswer) libvirtCheckVolumeAndRepairCommandWrapperSpy.execute(cmd, libvirtComputingResourceMock); + CheckAndRepairVolumeAnswer result = (CheckAndRepairVolumeAnswer) libvirtCheckAndRepairVolumeCommandWrapperSpy.execute(cmd, libvirtComputingResourceMock); Assert.assertEquals(checkResult, result.getVolumeCheckExecutionResult()); } diff --git a/server/src/main/java/com/cloud/server/ManagementServerImpl.java b/server/src/main/java/com/cloud/server/ManagementServerImpl.java index 56df8d501ee..70fe067858c 100644 --- a/server/src/main/java/com/cloud/server/ManagementServerImpl.java +++ b/server/src/main/java/com/cloud/server/ManagementServerImpl.java @@ -553,7 +553,7 @@ import org.apache.cloudstack.api.command.user.volume.AddResourceDetailCmd; import org.apache.cloudstack.api.command.user.volume.AssignVolumeCmd; import org.apache.cloudstack.api.command.user.volume.AttachVolumeCmd; import org.apache.cloudstack.api.command.user.volume.ChangeOfferingForVolumeCmd; -import org.apache.cloudstack.api.command.user.volume.CheckVolumeAndRepairCmd; +import org.apache.cloudstack.api.command.user.volume.CheckAndRepairVolumeCmd; import org.apache.cloudstack.api.command.user.volume.CreateVolumeCmd; import org.apache.cloudstack.api.command.user.volume.DeleteVolumeCmd; import org.apache.cloudstack.api.command.user.volume.DestroyVolumeCmd; @@ -3707,7 +3707,7 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe cmdList.add(ListVMGroupsCmd.class); cmdList.add(UpdateVMGroupCmd.class); cmdList.add(AttachVolumeCmd.class); - cmdList.add(CheckVolumeAndRepairCmd.class); + cmdList.add(CheckAndRepairVolumeCmd.class); cmdList.add(CreateVolumeCmd.class); cmdList.add(DeleteVolumeCmd.class); cmdList.add(UpdateVolumeCmd.class); diff --git a/server/src/main/java/com/cloud/storage/VolumeApiServiceImpl.java b/server/src/main/java/com/cloud/storage/VolumeApiServiceImpl.java index e58dd110afd..dcf9fb3f80d 100644 --- a/server/src/main/java/com/cloud/storage/VolumeApiServiceImpl.java +++ b/server/src/main/java/com/cloud/storage/VolumeApiServiceImpl.java @@ -42,7 +42,7 @@ import org.apache.cloudstack.api.ServerApiException; import org.apache.cloudstack.api.command.user.volume.AssignVolumeCmd; import org.apache.cloudstack.api.command.user.volume.AttachVolumeCmd; import org.apache.cloudstack.api.command.user.volume.ChangeOfferingForVolumeCmd; -import org.apache.cloudstack.api.command.user.volume.CheckVolumeAndRepairCmd; +import org.apache.cloudstack.api.command.user.volume.CheckAndRepairVolumeCmd; import org.apache.cloudstack.api.command.user.volume.CreateVolumeCmd; import org.apache.cloudstack.api.command.user.volume.DetachVolumeCmd; import org.apache.cloudstack.api.command.user.volume.ExtractVolumeCmd; @@ -381,7 +381,7 @@ public class VolumeApiServiceImpl extends ManagerBase implements VolumeApiServic public static ConfigKey storageTagRuleExecutionTimeout = new ConfigKey<>("Advanced", Long.class, "storage.tag.rule.execution.timeout", "2000", "The maximum runtime," + " in milliseconds, to execute a storage tag rule; if it is reached, a timeout will happen.", true); - public static final ConfigKey AllowVolumeCheckAndRepair = new ConfigKey("Advanced", Boolean.class, "volume.check.and.repair.before.use", "false", + public static final ConfigKey AllowCheckAndRepairVolume = new ConfigKey("Advanced", Boolean.class, "volume.check.and.repair.leaks.before.use", "false", "To check and repair the volume if it has any leaks before performing volume attach or VM start operations", true); private final StateMachine2 _volStateMachine; @@ -1824,7 +1824,7 @@ public class VolumeApiServiceImpl extends ManagerBase implements VolumeApiServic @Override @ActionEvent(eventType = EventTypes.EVENT_VOLUME_CHECK, eventDescription = "checking volume and repair if needed", async = true) - public Pair checkAndRepairVolume(CheckVolumeAndRepairCmd cmd) throws ResourceAllocationException { + public Pair checkAndRepairVolume(CheckAndRepairVolumeCmd cmd) throws ResourceAllocationException { long volumeId = cmd.getId(); String repair = cmd.getRepair(); @@ -1841,13 +1841,13 @@ public class VolumeApiServiceImpl extends ManagerBase implements VolumeApiServic VmWorkJobVO placeHolder = null; placeHolder = createPlaceHolderWork(vmId); try { - Pair result = orchestrateCheckVolumeAndRepair(volumeId, repair); + Pair result = orchestrateCheckAndRepairVolume(volumeId, repair); return result; } finally { _workJobDao.expunge(placeHolder.getId()); } } else { - Outcome outcome = checkVolumeAndRepairThroughJobQueue(vmId, volumeId, repair); + Outcome outcome = checkAndRepairVolumeThroughJobQueue(vmId, volumeId, repair); try { outcome.get(); @@ -1914,7 +1914,7 @@ public class VolumeApiServiceImpl extends ManagerBase implements VolumeApiServic } } - private Pair orchestrateCheckVolumeAndRepair(Long volumeId, String repair) { + private Pair orchestrateCheckAndRepairVolume(Long volumeId, String repair) { VolumeInfo volume = volFactory.getVolume(volumeId); @@ -1932,7 +1932,7 @@ public class VolumeApiServiceImpl extends ManagerBase implements VolumeApiServic return volService.checkAndRepairVolume(volume); } - public Outcome checkVolumeAndRepairThroughJobQueue(final Long vmId, final Long volumeId, String repair) { + public Outcome checkAndRepairVolumeThroughJobQueue(final Long vmId, final Long volumeId, String repair) { final CallContext context = CallContext.current(); final User callingUser = context.getCallingUser(); @@ -5003,9 +5003,9 @@ public class VolumeApiServiceImpl extends ManagerBase implements VolumeApiServic } @ReflectionUse - private Pair orchestrateCheckVolumeAndRepair(VmWorkCheckAndRepairVolume work) throws Exception { + private Pair orchestrateCheckAndRepairVolume(VmWorkCheckAndRepairVolume work) throws Exception { Account account = _accountDao.findById(work.getAccountId()); - Pair result = orchestrateCheckVolumeAndRepair(work.getVolumeId(), work.getRepair()); + Pair result = orchestrateCheckAndRepairVolume(work.getVolumeId(), work.getRepair()); return new Pair(JobInfo.Status.SUCCEEDED, _jobMgr.marshallResultObject(result)); } @@ -5046,7 +5046,7 @@ public class VolumeApiServiceImpl extends ManagerBase implements VolumeApiServic MatchStoragePoolTagsWithDiskOffering, UseHttpsToUpload, WaitDetachDevice, - AllowVolumeCheckAndRepair + AllowCheckAndRepairVolume }; } } diff --git a/server/src/test/java/com/cloud/storage/VolumeApiServiceImplTest.java b/server/src/test/java/com/cloud/storage/VolumeApiServiceImplTest.java index bab5bdd20a9..4957eddecb8 100644 --- a/server/src/test/java/com/cloud/storage/VolumeApiServiceImplTest.java +++ b/server/src/test/java/com/cloud/storage/VolumeApiServiceImplTest.java @@ -40,7 +40,7 @@ import java.util.concurrent.ExecutionException; import org.apache.cloudstack.acl.ControlledEntity; import org.apache.cloudstack.acl.SecurityChecker.AccessType; -import org.apache.cloudstack.api.command.user.volume.CheckVolumeAndRepairCmd; +import org.apache.cloudstack.api.command.user.volume.CheckAndRepairVolumeCmd; import org.apache.cloudstack.api.command.user.volume.CreateVolumeCmd; import org.apache.cloudstack.api.command.user.volume.DetachVolumeCmd; import org.apache.cloudstack.api.command.user.volume.MigrateVolumeCmd; @@ -1766,7 +1766,7 @@ public class VolumeApiServiceImplTest { @Test public void testCheckAndRepairVolume() throws ResourceAllocationException { - CheckVolumeAndRepairCmd cmd = mock(CheckVolumeAndRepairCmd.class); + CheckAndRepairVolumeCmd cmd = mock(CheckAndRepairVolumeCmd.class); when(cmd.getId()).thenReturn(1L); when(cmd.getRepair()).thenReturn(null);