Log Message: |
fsfs: Introduce new 'compression' config option.
This option allows explicitly specifying the compression algorithm for
format 8 repositories. It deprecates the previously used 'compression-level'
option. The syntax of the new option is:
compression = none | lz4 | zlib | zlib-1 ... zlib-9
See the related discussion in:
https://lists.apache.org/thread.html/40650a309d8ff041adbb62e8ffe19cc3990b9098a032db932fabd170@%3Cdev.subversion.apache.org%3E
* subversion/libsvn_fs_fs/fs.h
(CONFIG_OPTION_COMPRESSION): New.
(compression_type_t): New.
(fs_fs_data_t): Add field to store the delta compression type.
* subversion/libsvn_fs_fs/fs_fs.c
(write_config): Revamp the section describing delta compression.
(parse_compression_option): New helper function.
(read_config): Parse the new 'compression' option when working with
newer formats, with a possible fall back to 'compression-level' in
case it's specified explicitly. In order to always have appropriate
and usable compression settings in ffd, move the part of the code that
disables compression when only svndiff0 is supported from ...
* subversion/libsvn_fs_fs/transaction.c
(txdelta_to_svndiff): ...this function. Adjust this function to select
the appropriate svndiff version, depending on the options.
* win-tests.py
(): Rename 'fsfs_compression_level' to 'fsfs_compression'.
(_usage_exit): Adjust usage text.
* build/run_tests.py
(): Update usage comment.
(_init_py_tests): Pass the option as string, not int.
(create_parser): Parse the option as string, not int.
* subversion/tests/cmdline/svntest/main.py
(parse_options): Only allow using the --fsfs-compression option with
--server-minor-version >= 10.
(_create_parser): Parse the option as string, not int.
(run_one): Pass the option as string, not int.
(_post_create_repos): Update the code that adjusts fsfs.conf.
|