comparison mercurial/revlog.py @ 44310:daad3aace942

nodemap: only use persistent nodemap for non-inlined revlog Revlog are inlined while they are small (to avoid having too many file to deal with). The persistent nodemap will only provides a significant boost for large enough revlog index. So it does not make sens to add an extra file to store nodemap for small revlog. We could consider inclining the nodemap data inside the revlog itself, but the benefit is unclear so let it be an adventure for another time. Differential Revision: https://phab.mercurial-scm.org/D7837
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 15 Jan 2020 15:47:40 +0100
parents 5962fd0d1045
children 6f9e8e142cea
comparison
equal deleted inserted replaced
44309:6c07480d6659 44310:daad3aace942
1963 1963
1964 # the temp file replace the real index when we exit the context 1964 # the temp file replace the real index when we exit the context
1965 # manager 1965 # manager
1966 1966
1967 tr.replace(self.indexfile, trindex * self._io.size) 1967 tr.replace(self.indexfile, trindex * self._io.size)
1968 nodemaputil.setup_persistent_nodemap(tr, self)
1968 self._chunkclear() 1969 self._chunkclear()
1969 1970
1970 def _nodeduplicatecallback(self, transaction, node): 1971 def _nodeduplicatecallback(self, transaction, node):
1971 """called when trying to add a node already stored. 1972 """called when trying to add a node already stored.
1972 """ 1973 """