Mercurial > public > mercurial-scm > hg-stable
diff mercurial/revlogutils/nodemap.py @ 44366:76a96e3a2bbb
nodemap: keep track of the docket for loaded data
To perform incremental update of the on disk data, we need to keep tracks of
some aspect of that data.
Differential Revision: https://phab.mercurial-scm.org/D7885
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Wed, 15 Jan 2020 15:49:45 +0100 |
parents | 72c15641c8b4 |
children | 50ad851efd9b |
line wrap: on
line diff
--- a/mercurial/revlogutils/nodemap.py Wed Jan 15 15:49:35 2020 +0100 +++ b/mercurial/revlogutils/nodemap.py Wed Jan 15 15:49:45 2020 +0100 @@ -41,7 +41,7 @@ docket = NodeMapDocket(pdata[offset : offset + uid_size]) filename = _rawdata_filepath(revlog, docket) - return revlog.opener.tryread(filename) + return docket, revlog.opener.tryread(filename) def setup_persistent_nodemap(tr, revlog): @@ -93,6 +93,7 @@ # store vfs with revlog.opener(revlog.nodemap_file, b'w', atomictemp=True) as fp: fp.write(target_docket.serialize()) + revlog._nodemap_docket = target_docket # EXP-TODO: if the transaction abort, we should remove the new data and # reinstall the old one.