##// END OF EJS Templates
sparse-read: skip gaps too small to be worth splitting...
Paul Morelle -
r34882:8c9b08a0 default
parent child Browse files
Show More
@@ -444,7 +444,7 b" coreconfigitem('experimental', 'sparse-r"
444 coreconfigitem('experimental', 'sparse-read.density-threshold',
444 coreconfigitem('experimental', 'sparse-read.density-threshold',
445 default=0.25,
445 default=0.25,
446 )
446 )
447 coreconfigitem('experimental', 'sparse-read.min-block-size',
447 coreconfigitem('experimental', 'sparse-read.min-gap-size',
448 default='256K',
448 default='256K',
449 )
449 )
450 coreconfigitem('experimental', 'treemanifest',
450 coreconfigitem('experimental', 'treemanifest',
@@ -611,11 +611,11 b' class localrepository(object):'
611 withsparseread = self.ui.configbool('experimental', 'sparse-read')
611 withsparseread = self.ui.configbool('experimental', 'sparse-read')
612 srdensitythres = float(self.ui.config('experimental',
612 srdensitythres = float(self.ui.config('experimental',
613 'sparse-read.density-threshold'))
613 'sparse-read.density-threshold'))
614 srminblocksize = self.ui.configbytes('experimental',
614 srmingapsize = self.ui.configbytes('experimental',
615 'sparse-read.min-block-size')
615 'sparse-read.min-gap-size')
616 self.svfs.options['with-sparse-read'] = withsparseread
616 self.svfs.options['with-sparse-read'] = withsparseread
617 self.svfs.options['sparse-read-density-threshold'] = srdensitythres
617 self.svfs.options['sparse-read-density-threshold'] = srdensitythres
618 self.svfs.options['sparse-read-min-block-size'] = srminblocksize
618 self.svfs.options['sparse-read-min-gap-size'] = srmingapsize
619
619
620 for r in self.requirements:
620 for r in self.requirements:
621 if r.startswith('exp-compression-'):
621 if r.startswith('exp-compression-'):
@@ -196,7 +196,8 b' def _slicechunk(revlog, revs):'
196
196
197 if prevend is not None:
197 if prevend is not None:
198 gapsize = revstart - prevend
198 gapsize = revstart - prevend
199 if gapsize:
199 # only consider holes that are large enough
200 if gapsize > revlog._srmingapsize:
200 heapq.heappush(gapsheap, (-gapsize, i))
201 heapq.heappush(gapsheap, (-gapsize, i))
201
202
202 prevend = revstart + revlen
203 prevend = revstart + revlen
@@ -371,7 +372,7 b' class revlog(object):'
371 self._maxdeltachainspan = -1
372 self._maxdeltachainspan = -1
372 self._withsparseread = False
373 self._withsparseread = False
373 self._srdensitythreshold = 0.25
374 self._srdensitythreshold = 0.25
374 self._srminblocksize = 262144
375 self._srmingapsize = 262144
375
376
376 mmapindexthreshold = None
377 mmapindexthreshold = None
377 v = REVLOG_DEFAULT_VERSION
378 v = REVLOG_DEFAULT_VERSION
@@ -401,8 +402,8 b' class revlog(object):'
401 self._withsparseread = bool(opts.get('with-sparse-read', False))
402 self._withsparseread = bool(opts.get('with-sparse-read', False))
402 if 'sparse-read-density-threshold' in opts:
403 if 'sparse-read-density-threshold' in opts:
403 self._srdensitythreshold = opts['sparse-read-density-threshold']
404 self._srdensitythreshold = opts['sparse-read-density-threshold']
404 if 'sparse-read-min-block-size' in opts:
405 if 'sparse-read-min-gap-size' in opts:
405 self._srminblocksize = opts['sparse-read-min-block-size']
406 self._srmingapsize = opts['sparse-read-min-gap-size']
406
407
407 if self._chunkcachesize <= 0:
408 if self._chunkcachesize <= 0:
408 raise RevlogError(_('revlog chunk cache size %r is not greater '
409 raise RevlogError(_('revlog chunk cache size %r is not greater '
General Comments 0
You need to be logged in to leave comments. Login now