Change in vdsm[master]: image: do not delete the template on deleteImage
fsimonce at redhat.com
fsimonce at redhat.com
Fri Feb 15 18:50:59 UTC 2013
Federico Simoncelli has uploaded a new change for review.
Change subject: image: do not delete the template on deleteImage
......................................................................
image: do not delete the template on deleteImage
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=910013
Change-Id: I06c7e6402b901fab6277cd768ce82591e8c21e51
Signed-off-by: Federico Simoncelli <fsimonce at redhat.com>
---
M vdsm/storage/hsm.py
M vdsm/storage/image.py
M vdsm/storage/sd.py
3 files changed, 5 insertions(+), 4 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/05/12105/1
diff --git a/vdsm/storage/hsm.py b/vdsm/storage/hsm.py
index ed6e262..793582b 100644
--- a/vdsm/storage/hsm.py
+++ b/vdsm/storage/hsm.py
@@ -1430,7 +1430,7 @@
vars.task.getExclusiveLock(STORAGE, imgUUID)
vars.task.getSharedLock(STORAGE, sdUUID)
allVols = dom.getAllVolumes()
- volsByImg = sd.getVolsOfImage(allVols, imgUUID)
+ volsByImg = sd.getVolsOfImage(allVols, imgUUID, withTemplate=False)
if not volsByImg:
self.log.error("Empty or not found image %s in SD %s. %s",
imgUUID, sdUUID, allVols)
diff --git a/vdsm/storage/image.py b/vdsm/storage/image.py
index 92021ff..9bb5da4 100644
--- a/vdsm/storage/image.py
+++ b/vdsm/storage/image.py
@@ -76,7 +76,7 @@
Replaces Image.delete() in Image.[copy(), move(),multimove()].
"""
allVols = dom.getAllVolumes()
- imgVols = sd.getVolsOfImage(allVols, imgUUID)
+ imgVols = sd.getVolsOfImage(allVols, imgUUID, withTemplate=False)
if not imgVols:
log.warning("No volumes found for image %s. %s", imgUUID, allVols)
return
diff --git a/vdsm/storage/sd.py b/vdsm/storage/sd.py
index 9ce836b..17626e3 100644
--- a/vdsm/storage/sd.py
+++ b/vdsm/storage/sd.py
@@ -145,7 +145,7 @@
mountBasePath = os.path.join(storage_repository, DOMAIN_MNT_POINT)
-def getVolsOfImage(allVols, imgUUID):
+def getVolsOfImage(allVols, imgUUID, withTemplate=True):
""" Filter allVols dict for volumes related to imgUUID.
Returns {volName: (([templateImge], imgUUID, [otherImg]), volPar)
@@ -155,7 +155,8 @@
"""
return dict((volName, vol) for volName, vol in allVols.iteritems()
- if imgUUID in vol.imgs)
+ if (vol.imgs[0] == imgUUID or
+ (withTemplate and imgUUID in vol.imgs)))
def supportsUnicode(version):
--
To view, visit http://gerrit.ovirt.org/12105
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I06c7e6402b901fab6277cd768ce82591e8c21e51
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Federico Simoncelli <fsimonce at redhat.com>
More information about the vdsm-patches
mailing list