Exemple #1
0
 def _readRootoid(self):
     ''' Reads and return oid root from file '''
     # unpickle
     rootoidPath = os.path.join(self._storpath, OidFS.rootoid_filename)
     fobj = open(rootoidPath, "r")
     rootoid = cPickle.load(fobj)
     fobj.close()
     # If PDSCache in use then convert to coid
     if rootoid is not oid.OID.Nulloid:
         rootoid = pdscache.read_oid(rootoid)
     return rootoid
Exemple #2
0
 def gc(self):
     ''' Garbage collects OidFS's internal Ptrie PStor. Saving only
     self._rootoid. '''
     # Run GC on OID's pstor first.
     self._collect_pstor()
     # Save oidfs's _rootoid
     o = self._rootoid
     if isinstance(self._rootoid, pdscache._CachedOid):
         o = pdscache.write_coid(self._rootoid)
     o, = self._oidPstor.keepOids([o])
     o = pdscache.read_oid(o)
     self._rootoid = o
     self._writeRootoid()