Change in vdsm[master]: BZ#750528 - pool refresh should not change metadatata.

Saggi Mizrahi smizrahi at redhat.com
Mon Nov 7 05:10:46 UTC 2011


Saggi Mizrahi has posted comments on this change.

Change subject: BZ#750528 - pool refresh should not change metadatata.
......................................................................


Patch Set 3: I would prefer that you didn't submit this

(6 inline comments)

....................................................
File vdsm/storage/sp.py
Line 274:                         StatsThread.onDomainConnectivityStateChange.unregister(self._upgradePoolDomain)
Line 275:                     except KeyError:
Line 276:                         pass
Line 277: 
Line 278:     def getDomainsReady(self):
What does it mean?
Line 279:         """
Line 280:         Get domains ready for use.
Line 281: 
Line 282:         Activate, plant master trees, etc as needed.


Line 287:                 #MSD is already done
Line 288:                 continue
Line 289:             dom = sdCache.produce(sdUUID)
Line 290:             domMD = dom.getMetadata()
Line 291:             if domMD[sd.DMDK_CLASS] == sd.BACKUP_DOMAIN:
Use accessor
Line 292:                 # Recreate master tree if needed.
Line 293:                 dom.makeMasterTree()
Line 294:             #Stale master domain?
Line 295:             elif domMD[sd.DMDK_CLASS] == sd.DATA_DOMAIN \


Line 292:                 # Recreate master tree if needed.
Line 293:                 dom.makeMasterTree()
Line 294:             #Stale master domain?
Line 295:             elif domMD[sd.DMDK_CLASS] == sd.DATA_DOMAIN \
Line 296:                 and domMD[sd.DMDK_ROLE] == sd.MASTER_DOMAIN:
Use accessor
Line 297:                         self._setRegularSD(dom)
Line 298: 
Line 299:     @unsecured
Line 300:     def startSpm(self, prevID, prevLVER, scsiFencing, maxHostID, expectedDomVersion=None):


Line 1004:         dom.acquireClusterLock(self.id)
Line 1005:         try:
Line 1006:             domMD = dom.getMetadata()
Line 1007:             #If you remove this condition, remove it from public_createStoragePool too.
Line 1008:             if domMD[sd.DMDK_CLASS] == sd.DATA_DOMAIN and domMD[sd.DMDK_VERSION] != self.masterDomain.getVersion():
Use acessor
Line 1009:                 raise se.MixedSDVersionError(dom.sdUUID, domMD[sd.DMDK_VERSION], self.masterDomain.sdUUID, self.masterDomain.getVersion())
Line 1010: 
Line 1011:             dom.attach(self.spUUID)
Line 1012:             if domMD[sd.DMDK_CLASS] == sd.DATA_DOMAIN and domMD[sd.DMDK_ROLE] == sd.MASTER_DOMAIN:


Line 1087:         if PMDK_MASTER_VER not in domPoolMD.iterkeys():
Line 1088:             self.log.error("Domain %s is marked master but lacks %s",
Line 1089:             domain.sdUUID, PMDK_MASTER_VER)
Line 1090:         elif domPoolMD[PMDK_MASTER_VER] >= self.getMasterVersion():
Line 1091:             self.log.error("VDSM PANIC! Domain %s has pool ver %s \
User warning
Line 1092:             ge than this pool %s version", domain.sdUUID, self.getMasterVersion())
Line 1093:         #Deprecated master: change role to regular
Line 1094:         else:
Line 1095:             with domPoolMD.transaction():


Line 1113:         if domainStatuses[sdUUID] == sd.DOM_ACTIVE_STATUS:
Line 1114:             return True
Line 1115: 
Line 1116:         domMD = dom.getMetadata()
Line 1117:         if domMD[sd.DMDK_CLASS] == sd.DATA_DOMAIN:
User accessor
Line 1118:             #Fix (eventual) stale master ROLE keys in SD MD.
Line 1119:             if domMD[sd.DMDK_ROLE] == sd.MASTER_DOMAIN:
Line 1120:                 self._setRegularSD(dom)
Line 1121:             dom.upgrade(self.getVersion())


--
To view, visit http://gerrit.usersys/1082
To unsubscribe, visit http://gerrit.usersys/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I12e3e700ff67a527c367533bf9f5654e8760a118
Gerrit-PatchSet: 3
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Eduardo Warszawski <ewarszaw at redhat.com>
Gerrit-Reviewer: Ayal Baron
Gerrit-Reviewer: Dan Kenigsberg <danken at redhat.com>
Gerrit-Reviewer: Eduardo Warszawski <ewarszaw at redhat.com>
Gerrit-Reviewer: Igor Lvovsky <ilvovsky at redhat.com>
Gerrit-Reviewer: Saggi Mizrahi <smizrahi at redhat.com>


More information about the vdsm-patches mailing list