Mercurial > public > mercurial-scm > hg-stable
diff mercurial/configitems.py @ 42046:4ee906aa7b60
compression: introduce an official `format.revlog-compression` option
This option supersedes the `experiment.format.compression` option. The value
currently supported are zlib (default) and zstd (if Mercurial was compiled with
zstd support).
The option gained an explicit reference to `revlog` since this is the target
usage here. Different storage methods might require different compression
strategies.
In our tests, using zstd give a significant CPU usage improvement (both
compression and decompressing) while keeping similar repository size.
Zstd as other interresting mode (dictionnary, pre-text, etc?) that are probably
worth exploring. However, just plain switching from zlib to zstd provide a large
benefit.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Wed, 27 Mar 2019 18:26:54 +0100 |
parents | bb271ec2fbfb |
children | 0e41f40b01cc |
line wrap: on
line diff
--- a/mercurial/configitems.py Tue Apr 02 11:03:46 2019 -0700 +++ b/mercurial/configitems.py Wed Mar 27 18:26:54 2019 +0100 @@ -553,9 +553,6 @@ coreconfigitem('experimental', 'extendedheader.similarity', default=False, ) -coreconfigitem('experimental', 'format.compression', - default='zlib', -) coreconfigitem('experimental', 'graphshorten', default=False, ) @@ -684,6 +681,10 @@ coreconfigitem('format', 'sparse-revlog', default=True, ) +coreconfigitem('format', 'revlog-compression', + default='zlib', + alias=[('experimental', 'format.compression')] +) coreconfigitem('format', 'usefncache', default=True, )