cloudstack-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From raj...@apache.org
Subject git commit: updated refs/heads/master to 9d31e59
Date Thu, 27 Nov 2014 11:37:43 GMT
Repository: cloudstack
Updated Branches:
  refs/heads/master 488c17858 -> 9d31e59d5


CLOUDSTACK-7412: Can't create proper template from VM on S3 secondary storage environment

Signed-off-by: Rajani Karuturi <rajanikaruturi@gmail.com>


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/9d31e59d
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/9d31e59d
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/9d31e59d

Branch: refs/heads/master
Commit: 9d31e59d5b54ef64475e6e8ea36c3e2fc2e7f379
Parents: 488c178
Author: Hiroki Ohashi <hiroki.oohashi@aist.go.jp>
Authored: Thu Nov 27 19:13:36 2014 +0900
Committer: Rajani Karuturi <rajanikaruturi@gmail.com>
Committed: Thu Nov 27 17:07:27 2014 +0530

----------------------------------------------------------------------
 .../storage/motion/AncientDataMotionStrategy.java | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/9d31e59d/engine/storage/datamotion/src/org/apache/cloudstack/storage/motion/AncientDataMotionStrategy.java
----------------------------------------------------------------------
diff --git a/engine/storage/datamotion/src/org/apache/cloudstack/storage/motion/AncientDataMotionStrategy.java
b/engine/storage/datamotion/src/org/apache/cloudstack/storage/motion/AncientDataMotionStrategy.java
index 5b01f95..203cfa4 100644
--- a/engine/storage/datamotion/src/org/apache/cloudstack/storage/motion/AncientDataMotionStrategy.java
+++ b/engine/storage/datamotion/src/org/apache/cloudstack/storage/motion/AncientDataMotionStrategy.java
@@ -174,15 +174,29 @@ public class AncientDataMotionStrategy implements DataMotionStrategy
{
             }
 
             if (cacheData != null) {
-                if (srcData.getType() == DataObjectType.VOLUME && destData.getType()
== DataObjectType.VOLUME) {
-                    // volume transfer from primary to secondary or vice versa. Volume transfer
between primary pools are already handled by copyVolumeBetweenPools
+                final Long cacheId = cacheData.getId();
+                final String cacheType = cacheData.getType().toString();
+                final String cacheUuid = cacheData.getUuid().toString();
+
+                if (srcData.getType() == DataObjectType.VOLUME &&
+                    (destData.getType() == DataObjectType.VOLUME ||
+                     destData.getType() == DataObjectType.TEMPLATE)) {
+                    // volume transfer from primary to secondary. Volume transfer between
primary pools are already handled by copyVolumeBetweenPools
+                    // Delete cache in order to certainly transfer a latest image.
+                    s_logger.debug("Delete " + cacheType + " cache(id: " + cacheId +
+                                   ", uuid: " + cacheUuid + ")");
                     cacheMgr.deleteCacheObject(srcForCopy);
                 } else {
                     // for template, we want to leave it on cache for performance reason
                     if ((answer == null || !answer.getResult()) && srcForCopy.getRefCount()
< 2) {
                         // cache object created by this copy, not already there
+                        s_logger.warn("Copy may not be handled correctly by agent(id: " +
ep.getId() + ")." +
+                                      " Delete " + cacheType + " cache(id: " + cacheId +
+                                      ", uuid: " + cacheUuid + ")");
                         cacheMgr.deleteCacheObject(srcForCopy);
                     } else {
+                        s_logger.debug("Decrease reference count of " + cacheType +
+                                       " cache(id: " + cacheId + ", uuid: " + cacheUuid +
")");
                         cacheMgr.releaseCacheObject(srcForCopy);
                     }
                 }


Mime
View raw message