Change in vdsm[master]: [WIP] Fixing metadata writings using cmd_type_1.
ewarszaw at redhat.com
ewarszaw at redhat.com
Mon Feb 4 14:29:40 UTC 2013
Eduardo has uploaded a new change for review.
Change subject: [WIP] Fixing metadata writings using cmd_type_1.
......................................................................
[WIP] Fixing metadata writings using cmd_type_1.
Change-Id: I88b3ede4bd15a884bcd07cf4099f53d30aa98f84
Signed-off-by: Eduardo <ewarszaw at redhat.com>
---
M vdsm/storage/blockSD.py
1 file changed, 13 insertions(+), 14 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/95/11695/1
diff --git a/vdsm/storage/blockSD.py b/vdsm/storage/blockSD.py
index c688826..359a691 100644
--- a/vdsm/storage/blockSD.py
+++ b/vdsm/storage/blockSD.py
@@ -123,7 +123,6 @@
LVM_ENC_ESCAPE = re.compile("&(\d+)&")
-# Move to lvm
def lvmTagEncode(s):
return INVALID_CHARS.sub(lambda c: "&%s&" % ord(c.group()), s)
@@ -505,7 +504,6 @@
def makeChangeCmd(toRemove, toAdd):
changeCmd = [constants.EXT_LVM, "vgchange"]
- changeCmd.extend(lvm.LVM_NOBACKUP)
changeCmd.extend(("--config", cmdConf % filter))
for tag in toRemove:
changeCmd.extend(("--deltag", tag))
@@ -623,28 +621,23 @@
DMDK_PHYBLKSIZE: phyBlkSize,
}
- initialMetadata.update(mapping)
-
if version in VERS_METADATA_LV:
md = LvBasedSDMetadata(vgName, sd.METADATA)
md.update(initialMetadata)
#Replace unready tag
toRemove = (STORAGE_UNREADY_DOMAIN_TAG,)
toAdd = (STORAGE_DOMAIN_TAG,)
+ initialMetadata.update(mapping)
elif version in VERS_METADATA_TAG:
md = TagBasedSDMetadata(vgName)
#Add all tags here and remove the unready
- toRemove = tuple(VGTagMetadataRW.METADATA_TAG_PREFIX +
- lvmTagEncode(item) for item in initialMetadata)
- toRemove.append(STORAGE_UNREADY_DOMAIN_TAG)
- toAdd = tuple(VGTagMetadataRW.METADATA_TAG_PREFIX +
- lvmTagEncode(item) for item in initialMetadata)
+ toRemove = [STORAGE_UNREADY_DOMAIN_TAG]
+ toAdd = [VGTagMetadataRW.METADATA_TAG_PREFIX +
+ lvmTagEncode("%s=%s" % item)
+ for item in initialMetadata.items()]
+ toAdd.extend([lvmTagEncode("%s,%s" % (k, v))
+ for k, v in mapping.items()])
toAdd.append(STORAGE_DOMAIN_TAG)
-
- try:
- setInitialTags(toRemove, toAdd)
- except se.VolumeGroupReplaceTagError:
- raise se.VolumeGroupUninitialized(vgName)
if version in sd.DOM_SAFELEASE_VERS:
initClusterLock()
@@ -653,6 +646,12 @@
else:
cls.log.warning("Lock method for version %s unknown", version)
+ try:
+ setInitialTags(toRemove, toAdd)
+ except se.VolumeGroupReplaceTagError:
+ raise se.VolumeGroupUninitialized(vgName)
+
+ lvm.invalidateVG(vgName)
return None
def getReadDelay(self):
--
To view, visit http://gerrit.ovirt.org/11695
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I88b3ede4bd15a884bcd07cf4099f53d30aa98f84
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Eduardo <ewarszaw at redhat.com>
Gerrit-Reviewer: Yeela Kaplan <ykaplan at redhat.com>
More information about the vdsm-patches
mailing list