diff --git a/plugins/hypervisors/vmware/src/main/java/com/cloud/storage/resource/VmwareStorageProcessor.java b/plugins/hypervisors/vmware/src/main/java/com/cloud/storage/resource/VmwareStorageProcessor.java index 0a9de9f5a78..68f63619cab 100644 --- a/plugins/hypervisors/vmware/src/main/java/com/cloud/storage/resource/VmwareStorageProcessor.java +++ b/plugins/hypervisors/vmware/src/main/java/com/cloud/storage/resource/VmwareStorageProcessor.java @@ -3483,7 +3483,7 @@ public class VmwareStorageProcessor implements StorageProcessor { throw new Exception("Unable to create container VM for volume creation"); } - clonedVm.moveAllVmDiskFiles(primaryDsMo, "", false); + clonedVm.moveAllVmDiskFiles(primaryDsMo, HypervisorHostHelper.VSPHERE_DATASTORE_BASE_FOLDER, false); clonedVm.detachAllDisks(); return _storage.getSize(srcOVFFileName); } finally { diff --git a/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/DatastoreMO.java b/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/DatastoreMO.java index b5955a6d709..96ed988c35d 100644 --- a/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/DatastoreMO.java +++ b/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/DatastoreMO.java @@ -260,8 +260,13 @@ public class DatastoreMO extends BaseMO { destFullPath = String.format("[%s] %s", destDsName, destFilePath); DatastoreMO srcDsMo = new DatastoreMO(_context, morDestDs); - if (!srcDsMo.fileExists(srcFullPath)) { - s_logger.error(String.format("Cannot move file to destination datastore due to file %s does not exists", srcFullPath)); + try { + if (!srcDsMo.fileExists(srcFullPath)) { + s_logger.error(String.format("Cannot move file to destination datastore due to file %s does not exists", srcFullPath)); + return false; + } + } catch (Exception e) { + s_logger.error(String.format("Cannot move file to destination datastore due to file %s due to exeception %s", srcFullPath, e.getMessage())); return false; }