I've read just the diff, not the patched source. Overall, +1, and
a couple of minor nits below:
stefan2_at_apache.org wrote on Tue, Feb 08, 2011 at 22:41:32 -0000:
> Author: stefan2
> Date: Tue Feb 8 22:41:31 2011
> New Revision: 1068651
>
> URL: http://svn.apache.org/viewvc?rev=1068651&view=rev
> Log:
> Introduce svn_txdelta_to_svndiff3() that introduces an additional ZIP
> compression level parameter. Do all the plumbing to set that value on
> the svnserve command line. For compression level 0, deactivate compression
> entirely (instead of using a zlib's "store" mode).
>
> Merged revisions from /branches/performance:
> 981287, 981827, 982057 (partial), 1029339 (svn_ra_svn.h only)
>
> Modified:
> subversion/branches/integrate-compression-level/ (props changed)
> subversion/branches/integrate-compression-level/subversion/include/svn_delta.h
> subversion/branches/integrate-compression-level/subversion/include/svn_ra_svn.h
> subversion/branches/integrate-compression-level/subversion/libsvn_delta/svndiff.c
> subversion/branches/integrate-compression-level/subversion/libsvn_ra_svn/editorp.c
> subversion/branches/integrate-compression-level/subversion/libsvn_ra_svn/marshal.c
> subversion/branches/integrate-compression-level/subversion/libsvn_ra_svn/ra_svn.h
> subversion/branches/integrate-compression-level/subversion/svnserve/main.c
> subversion/branches/integrate-compression-level/subversion/svnserve/serve.c
> subversion/branches/integrate-compression-level/subversion/svnserve/server.h
> subversion/branches/integrate-compression-level/subversion/tests/libsvn_delta/random-test.c
> subversion/branches/integrate-compression-level/subversion/tests/libsvn_delta/svndiff-test.c
>
mod_dav_svn support?
> @@ -445,6 +451,7 @@ int main(int argc, const char *argv[])
> + params.compression_level = SVNDIFF1_COMPRESS_LEVEL;
SVN_SVNDIFF1_COMPRESS_LEVEL ?
> @@ -560,6 +567,14 @@ int main(int argc, const char *argv[])
> + case 'c':
> + params.compression_level = atoi(arg);
> + if (params.compression_level < 0)
> + params.compression_level = 0;
> + if (params.compression_level > 9)
> + params.compression_level = 9;
Magic number.
> @@ -112,6 +112,12 @@ typedef struct serve_params_t {
> /* Size of the in-memory cache (used by FSFS only). */
> apr_uint64_t memory_cache_size;
>
> + /* Data compression level to reduce for network traffic. If this
> + is 0, no compression should be applied and the protocol may
> + fall back to txdelta "version 0" bypassing zlib entirely.
s/txdelta/svndiff/
Received on 2011-02-11 17:08:28 CET