# HG changeset patch # User Boris Feld # Date 1500154225 -7200 # Node ID 709dde1c5dd583a11f8a57ccd7f424be1822e3a9 # Parent ddacd0e453ae43abcba07cf4446dd5fa5eddd79e cachevfs: migration the tags fnode cache to 'cachevfs' This will help sharing the cache between shares. diff --git a/mercurial/tags.py b/mercurial/tags.py --- a/mercurial/tags.py +++ b/mercurial/tags.py @@ -617,7 +617,7 @@ return tagnode -_fnodescachefile = 'cache/hgtagsfnodes1' +_fnodescachefile = 'hgtagsfnodes1' _fnodesrecsize = 4 + 20 # changeset fragment + filenode _fnodesmissingrec = '\xff' * 24 @@ -651,7 +651,7 @@ try: - data = repo.vfs.read(_fnodescachefile) + data = repo.cachevfs.read(_fnodescachefile) except (OSError, IOError): data = "" self._raw = bytearray(data) @@ -759,13 +759,12 @@ try: lock = repo.wlock(wait=False) except error.LockError: - repo.ui.log('tagscache', - 'not writing .hg/%s because lock cannot be acquired\n' % - (_fnodescachefile)) + repo.ui.log('tagscache', 'not writing .hg/cache/%s because ' + 'lock cannot be acquired\n' % (_fnodescachefile)) return try: - f = repo.vfs.open(_fnodescachefile, 'ab') + f = repo.cachevfs.open(_fnodescachefile, 'ab') try: # if the file has been truncated actualoffset = f.tell() @@ -775,7 +774,7 @@ f.seek(self._dirtyoffset) f.truncate() repo.ui.log('tagscache', - 'writing %d bytes to %s\n' % ( + 'writing %d bytes to cache/%s\n' % ( len(data), _fnodescachefile)) f.write(data) self._dirtyoffset = None @@ -783,7 +782,7 @@ f.close() except (IOError, OSError) as inst: repo.ui.log('tagscache', - "couldn't write %s: %s\n" % ( + "couldn't write cache/%s: %s\n" % ( _fnodescachefile, inst)) finally: lock.release()