Change in vdsm[master]: Removing validate sd from spm verbs which calls ckvg and ref...

ykaplan at redhat.com ykaplan at redhat.com
Mon Aug 19 06:33:50 UTC 2013


Yeela Kaplan has uploaded a new change for review.

Change subject: Removing validate sd from spm verbs which calls ckvg and refreshes the domain metadata on the spm even though the spm already controls the changes (i.e. a lot of redundant time is wasted)
......................................................................

Removing validate sd from spm verbs which calls ckvg and refreshes
the domain metadata on the spm even though the spm already controls
the changes (i.e. a lot of redundant time is wasted)

Change-Id: Ibf597a9e53dad04ad7a01fc1d5ceb8a180a542f2
Signed-off-by: Yeela Kaplan <ykaplan at redhat.com>
---
M vdsm/storage/hsm.py
1 file changed, 16 insertions(+), 19 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/75/18275/1

diff --git a/vdsm/storage/hsm.py b/vdsm/storage/hsm.py
index c754ee8..2c639ca 100644
--- a/vdsm/storage/hsm.py
+++ b/vdsm/storage/hsm.py
@@ -1315,7 +1315,6 @@
         pool = self.getPool(spUUID)
         if sdUUID and sdUUID != sd.BLANK_UUID:
             pool.validatePoolSD(sdUUID)
-            self.validateSdUUID(sdUUID)
         else:
             sdUUID = pool.masterDomain.sdUUID
 
@@ -1344,7 +1343,6 @@
         pool = self.getPool(spUUID)
         if sdUUID and sdUUID != sd.BLANK_UUID:
             pool.validatePoolSD(sdUUID)
-            self.validateSdUUID(sdUUID)
         else:
             sdUUID = pool.masterDomain.sdUUID
         vars.task.getExclusiveLock(STORAGE, "%s_%s" % (vmUUID, sdUUID))
@@ -1367,7 +1365,6 @@
         pool = self.getPool(spUUID)
         if sdUUID and sdUUID != sd.BLANK_UUID:
             pool.validatePoolSD(sdUUID)
-            self.validateSdUUID(sdUUID)
         else:
             sdUUID = pool.masterDomain.sdUUID
         vars.task.getSharedLock(STORAGE, sdUUID)
@@ -1451,7 +1448,7 @@
         vars.task.setDefaultException(se.VolumeCreationError(argsStr))
         # Validates that the pool is connected. WHY?
         pool = self.getPool(spUUID)
-        sdDom = self.validateSdUUID(sdUUID)
+        dom = sdCache.produce(sdUUID=sdUUID)
         misc.validateUUID(imgUUID, 'imgUUID')
         misc.validateUUID(volUUID, 'volUUID')
         # TODO: For backwards compatibility, we need to support accepting
@@ -1466,7 +1463,7 @@
         if srcVolUUID:
             misc.validateUUID(srcVolUUID, 'srcVolUUID')
         # Validate volume type and format
-        sdDom.validateCreateVolumeParams(volFormat, preallocate, srcVolUUID)
+        dom.validateCreateVolumeParams(volFormat, preallocate, srcVolUUID)
 
         vars.task.getSharedLock(STORAGE, sdUUID)
         self._spmSchedule(spUUID, "createVolume", pool.createVolume, sdUUID,
@@ -1485,14 +1482,14 @@
         vars.task.setDefaultException(se.CannotDeleteVolume(argsStr))
         # Validates that the pool is connected. WHY?
         pool = self.getPool(spUUID)
-        sdDom = self.validateSdUUID(sdUUID)
+        dom = sdCache.produce(sdUUID=sdUUID)
         misc.validateUUID(imgUUID, 'imgUUID')
 
         vars.task.getSharedLock(STORAGE, sdUUID)
         # Do not validate if forced.
         if not misc.parseBool(force):
             for volUUID in volumes:
-                sdDom.produceVolume(imgUUID, volUUID).validateDelete()
+                dom.produceVolume(imgUUID, volUUID).validateDelete()
 
         self._spmSchedule(spUUID, "deleteVolume", pool.deleteVolume, sdUUID,
                           imgUUID, volumes, misc.parseBool(postZero),
@@ -1508,7 +1505,7 @@
         """
         # vars.task.setDefaultException(se.ChangeMeError("%s" % args))
         self.getPool(spUUID)  # Validates that the pool is connected. WHY?
-        dom = self.validateSdUUID(sdUUID)
+        dom = sdCache.produce(sdUUID=sdUUID)
 
         vars.task.getExclusiveLock(STORAGE, imgUUID)
         vars.task.getSharedLock(STORAGE, sdUUID)
@@ -1608,8 +1605,8 @@
             raise se.InvalidParameterException(
                 "srcDom", "must be different from dstDom: %s" % argsStr)
 
-        srcDom = self.validateSdUUID(srcDomUUID)
-        dstDom = self.validateSdUUID(dstDomUUID)
+        srcDom = sdCache.produce(sdUUID=srcDomUUID)
+        dstDom = sdCache.produce(sdUUID=dstDomUUID)
         # Validates that the pool is connected. WHY?
         pool = self.getPool(spUUID)
         try:
@@ -1643,8 +1640,8 @@
         Clone an image structure (volume chain) to a destination domain within
         the same pool.
         """
-        self.validateSdUUID(sdUUID)
-        self.validateSdUUID(dstSdUUID)
+        sdCache.produce(sdUUID=sdUUID)
+        sdCache.produce(sdUUID=dstSdUUID)
 
         for dom in sorted((sdUUID, dstSdUUID)):
             vars.task.getSharedLock(STORAGE, dom)
@@ -1659,8 +1656,8 @@
         Copy the internal data between image structures (volume chain) within
         the same pool.
         """
-        self.validateSdUUID(sdUUID)
-        self.validateSdUUID(dstSdUUID)
+        sdCache.produce(sdUUID=sdUUID)
+        sdCache.produce(sdUUID=dstSdUUID)
 
         for dom in sorted((sdUUID, dstSdUUID)):
             vars.task.getSharedLock(STORAGE, dom)
@@ -1712,8 +1709,8 @@
         # Validates that the pool is connected. WHY?
         pool = self.getPool(spUUID)
 
-        srcDom = self.validateSdUUID(srcDomUUID)
-        dstDom = self.validateSdUUID(dstDomUUID)
+        srcDom = sdCache.produce(sdUUID=srcDomUUID)
+        dstDom = sdCache.produce(sdUUID=dstDomUUID)
         images = {}
         for (imgUUID, pZero) in imgDict.iteritems():
             images[imgUUID.strip()] = misc.parseBool(pZero)
@@ -1762,7 +1759,7 @@
             if srcImgUUID == dstImgUUID:
                 raise se.InvalidParameterException("dstImgUUID", dstImgUUID)
         pool = self.getPool(spUUID)
-        self.validateSdUUID(sdUUID)
+        sdCache.produce(sdUUID=sdUUID)
 
         # Avoid VM copy if one of its volume (including template if exists)
         # ILLEGAL/FAKE
@@ -1778,7 +1775,7 @@
         # If dstSdUUID defined, means we copy image to it
         domains = [sdUUID]
         if dstSdUUID not in [sdUUID, sd.BLANK_UUID]:
-            self.validateSdUUID(dstSdUUID)
+            sdCache.produce(sdUUID=dstSdUUID)
             domains.append(dstSdUUID)
             domains.sort()
 
@@ -1803,7 +1800,7 @@
                     postZero))
         vars.task.setDefaultException(se.MergeSnapshotsError("%s" % argsStr))
         pool = self.getPool(spUUID)
-        self.validateSdUUID(sdUUID)
+        sdCache.produce(sdUUID=sdUUID)
         vars.task.getSharedLock(STORAGE, sdUUID)
         self._spmSchedule(
             spUUID, "mergeSnapshots", pool.mergeSnapshots, sdUUID, vmUUID,


-- 
To view, visit http://gerrit.ovirt.org/18275
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ibf597a9e53dad04ad7a01fc1d5ceb8a180a542f2
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Yeela Kaplan <ykaplan at redhat.com>
Gerrit-Reviewer: Ayal Baron <abaron at redhat.com>


More information about the vdsm-patches mailing list