Change in vdsm[master]: Live Merge: Return more info from _driveGetActualVolumeChain

alitke at redhat.com alitke at redhat.com
Wed Aug 20 13:21:29 UTC 2014


Adam Litke has posted comments on this change.

Change subject: Live Merge: Return more info from _driveGetActualVolumeChain
......................................................................


Patch Set 4:

(5 comments)

http://gerrit.ovirt.org/#/c/31364/4//COMMIT_MSG
Commit Message:

Line 9: In followup patches, we want to return more information about each path
Line 10: component from _driveGetActualVolumeChain.  We need the actual path as
Line 11: given in the domain XML in order to properly update our metadata after
Line 12: an active layer merge.  We also want to use this function to return high
Line 13: write watermark information for block volumes.  This patch just converts
> Why do we want to do that? Currently we monitor every 2 seconds the write w
For Live Merge, we need the watermark for internal volumes too.  The current code only monitors the write watermark for the leaf volume.
Line 14: the format returned by _driveGetActualVolumeChain from a simple list to
Line 15: a list of named tuples.
Line 16: 
Line 17: Change-Id: I01d142a68903048accc95eb04d9930c326965db0


Line 11: given in the domain XML in order to properly update our metadata after
Line 12: an active layer merge.  We also want to use this function to return high
Line 13: write watermark information for block volumes.  This patch just converts
Line 14: the format returned by _driveGetActualVolumeChain from a simple list to
Line 15: a list of named tuples.
> The problem with this change is that it make the code more ugly, just to ge
See above.
Line 16: 
Line 17: Change-Id: I01d142a68903048accc95eb04d9930c326965db0
Line 18: Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1109920


http://gerrit.ovirt.org/#/c/31364/4/vdsm/virt/vm.py
File vdsm/virt/vm.py:

Line 194: VolumeChainEntry = namedtuple('VolumeChainEntry', ['uuid'])
Line 195: 
Line 196: 
Line 197: def _volumeChainToVolumeIds(chain):
Line 198:     return [x.uuid for x in chain]
> Please use meaningful variables names, like "vol" or "drive".
I was asked by Francesco to make it a helper.  No problem inlining it and/or moving it to the bottom though.
Line 199: 
Line 200: 
Line 201: class VmStatsThread(AdvancedStatsThread):
Line 202:     MBPS_TO_BPS = 10 ** 6 / 8


Line 5538:             return
Line 5539: 
Line 5540:         curVols = [x['volumeID'] for x in drive.volumeChain]
Line 5541:         ret = self._driveGetActualVolumeChain(drive)
Line 5542:         if ret is None:
> It would be nice if we always use the same name for the result of self._dri
ok.
Line 5543:             self.log.debug("Unable to determine volume chain. Skipping volume "
Line 5544:                            "chain synchronization for drive %s", drive.name)
Line 5545:             return
Line 5546: 


Line 5543:             self.log.debug("Unable to determine volume chain. Skipping volume "
Line 5544:                            "chain synchronization for drive %s", drive.name)
Line 5545:             return
Line 5546: 
Line 5547:         volumes = _volumeChainToVolumeIds(ret)
> This is not the best name for this, since we have both volume objects and v
ok.
Line 5548:         self.log.debug("vdsm chain: %s, libvirt chain: %s", curVols, volumes)
Line 5549: 
Line 5550:         # Ask the storage to sync metadata according to the new chain
Line 5551:         self.cif.irs.imageSyncVolumeChain(drive.domainID, drive.imageID,


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I01d142a68903048accc95eb04d9930c326965db0
Gerrit-PatchSet: 4
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Adam Litke <alitke at redhat.com>
Gerrit-Reviewer: Adam Litke <alitke at redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken at redhat.com>
Gerrit-Reviewer: Federico Simoncelli <fsimonce at redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani at redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer at redhat.com>
Gerrit-Reviewer: automation at ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server
Gerrit-HasComments: Yes


More information about the vdsm-patches mailing list