##// END OF EJS Templates
manifest: make lru size configurable...
Durham Goode -
r24033:ed5e8a95 default
parent child Browse files
Show More
@@ -323,6 +323,9 b' class localrepository(object):'
323 maxchainlen = self.ui.configint('format', 'maxchainlen')
323 maxchainlen = self.ui.configint('format', 'maxchainlen')
324 if maxchainlen is not None:
324 if maxchainlen is not None:
325 self.svfs.options['maxchainlen'] = maxchainlen
325 self.svfs.options['maxchainlen'] = maxchainlen
326 manifestcachesize = self.ui.configint('format', 'manifestcachesize')
327 if manifestcachesize is not None:
328 self.svfs.options['manifestcachesize'] = manifestcachesize
326
329
327 def _writerequirements(self):
330 def _writerequirements(self):
328 reqfile = self.vfs("requires", "w")
331 reqfile = self.vfs("requires", "w")
@@ -220,9 +220,14 b' def _parse(lines):'
220
220
221 class manifest(revlog.revlog):
221 class manifest(revlog.revlog):
222 def __init__(self, opener):
222 def __init__(self, opener):
223 # we expect to deal with not more than four revs at a time,
223 # During normal operations, we expect to deal with not more than four
224 # during a commit --amend
224 # revs at a time (such as during commit --amend). When rebasing large
225 self._mancache = util.lrucachedict(4)
225 # stacks of commits, the number can go up, hence the config knob below.
226 cachesize = 4
227 opts = getattr(opener, 'options', None)
228 if opts is not None:
229 cachesize = opts.get('manifestcachesize', cachesize)
230 self._mancache = util.lrucachedict(cachesize)
226 revlog.revlog.__init__(self, opener, "00manifest.i")
231 revlog.revlog.__init__(self, opener, "00manifest.i")
227
232
228 def readdelta(self, node):
233 def readdelta(self, node):
General Comments 0
You need to be logged in to leave comments. Login now