Mercurial > hg
comparison mercurial/configitems.py @ 38717:aa21a9ad46ea
sparse-revlog: new requirement enabled with format.sparse-revlog
The meaning of the new 'sparse-revlog' requirement is that the revlogs are
allowed to contain wider delta chains with larger holes between the interesting
chunks. These sparse delta chains should be read in several chunks to avoid a
potential explosion of memory usage.
Former version won't know how to read a delta chain in several chunks. They
would keep reading them in a single read, and therefore would be subject to the
potential memory explosion. Hence this new requirement: only versions having
support of sparse-revlog reading should be allowed to read such a revlog.
Implementation of this new algorithm and tools to enable or disable the
requirement will follow in the next changesets.
author | Paul Morelle <paul.morelle@octobus.net> |
---|---|
date | Mon, 04 Jun 2018 22:23:18 +0200 |
parents | bfcd5c7cbf9a |
children | fcb517ff9562 |
comparison
equal
deleted
inserted
replaced
38716:c67093e81a3e | 38717:aa21a9ad46ea |
---|---|
650 default=None, | 650 default=None, |
651 ) | 651 ) |
652 coreconfigitem('format', 'obsstore-version', | 652 coreconfigitem('format', 'obsstore-version', |
653 default=None, | 653 default=None, |
654 ) | 654 ) |
655 coreconfigitem('format', 'sparse-revlog', | |
656 default=False, | |
657 ) | |
655 coreconfigitem('format', 'usefncache', | 658 coreconfigitem('format', 'usefncache', |
656 default=True, | 659 default=True, |
657 ) | 660 ) |
658 coreconfigitem('format', 'usegeneraldelta', | 661 coreconfigitem('format', 'usegeneraldelta', |
659 default=True, | 662 default=True, |