You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ke...@apache.org on 2013/08/28 01:41:24 UTC
git commit: updated refs/heads/4.2-forward to 8326dfb
Updated Branches:
refs/heads/4.2-forward 687e87faa -> 8326dfb76
CLOUDSTACK-4518: make folder sync resilience with possible runtime situation
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/8326dfb7
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/8326dfb7
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/8326dfb7
Branch: refs/heads/4.2-forward
Commit: 8326dfb76f3072dab63243ef2cd62fa3e7b7c688
Parents: 687e87f
Author: Kelven Yang <ke...@gmail.com>
Authored: Tue Aug 27 16:28:16 2013 -0700
Committer: Kelven Yang <ke...@gmail.com>
Committed: Tue Aug 27 16:28:16 2013 -0700
----------------------------------------------------------------------
.../storage/resource/VmwareStorageLayoutHelper.java | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/8326dfb7/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareStorageLayoutHelper.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareStorageLayoutHelper.java b/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareStorageLayoutHelper.java
index c61f15e..d60abad 100644
--- a/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareStorageLayoutHelper.java
+++ b/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareStorageLayoutHelper.java
@@ -129,17 +129,20 @@ public class VmwareStorageLayoutHelper {
vmdkLinkedCloneModePair[1], dcMo.getMor(), true);
}
- s_logger.info("sync " + vmdkLinkedCloneModeLegacyPair[0] + "->" + vmdkLinkedCloneModePair[0]);
- ds.moveDatastoreFile(vmdkLinkedCloneModeLegacyPair[0], dcMo.getMor(), ds.getMor(),
- vmdkLinkedCloneModePair[0], dcMo.getMor(), true);
+ if(ds.fileExists(vmdkLinkedCloneModeLegacyPair[0])) {
+ s_logger.info("sync " + vmdkLinkedCloneModeLegacyPair[0] + "->" + vmdkLinkedCloneModePair[0]);
+ ds.moveDatastoreFile(vmdkLinkedCloneModeLegacyPair[0], dcMo.getMor(), ds.getMor(),
+ vmdkLinkedCloneModePair[0], dcMo.getMor(), true);
+ }
+ // Note: we will always return a path
return vmdkLinkedCloneModePair[0];
}
public static void syncVolumeToRootFolder(DatacenterMO dcMo, DatastoreMO ds, String vmdkName) throws Exception {
String fileDsFullPath = ds.searchFileInSubFolders(vmdkName + ".vmdk", false);
if(fileDsFullPath == null)
- throw new Exception("Unable to find " + vmdkName + ".vmdk in datastore: " + ds.getName());
+ return;
DatastoreFile srcDsFile = new DatastoreFile(fileDsFullPath);
String companionFilePath = srcDsFile.getCompanionPath(vmdkName + "-flat.vmdk");