You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ko...@apache.org on 2018/03/05 10:45:59 UTC
svn commit: r1825865 - /subversion/site/staging/docs/release-notes/1.10.html
Author: kotkov
Date: Mon Mar 5 10:45:59 2018
New Revision: 1825865
URL: http://svn.apache.org/viewvc?rev=1825865&view=rev
Log:
Extend the 1.10 release notes with a subsection about using LZ4 compression
over the wire. For now, only document the negotiation and choice of the
compression algorithm for http://, and leave a TODO about svn://.
* docs/release-notes/1.10.html
(LZ4 compression): Extend the opener with the information that LZ4
compression is supported for both http:// and svn://.
(LZ4 compression over the wire in http:// and svn:// connections):
New subsection.
(New Feature Compatibility Table): Link to the new subsection.
Modified:
subversion/site/staging/docs/release-notes/1.10.html
Modified: subversion/site/staging/docs/release-notes/1.10.html
URL: http://svn.apache.org/viewvc/subversion/site/staging/docs/release-notes/1.10.html?rev=1825865&r1=1825864&r2=1825865&view=diff
==============================================================================
--- subversion/site/staging/docs/release-notes/1.10.html (original)
+++ subversion/site/staging/docs/release-notes/1.10.html Mon Mar 5 10:45:59 2018
@@ -136,7 +136,7 @@ and what impact these changes may have.<
<td>Use SVN 1.8 and above clients only for best results.</td></tr>
<tr>
<td>
- <a href="#lz4">LZ4 compression over the wire in http:// connections</a>
+ <a href="#lz4-over-the-wire">LZ4 compression over the wire in http:// and svn:// connections</a>
</td>
<td>1.10</td>
<td>1.10</td>
@@ -542,7 +542,9 @@ containing large files.
</p>
<p>LZ4 compression is now used by default for the on-disk data in repositories
-with filesystem format 8 (see below).</p>
+with filesystem format 8. Also, Subversion 1.10 adds support for automatic
+negotiation and use of LZ4 compression over the wire for http:// and svn://
+connections when it is supported by both endpoints.</p>
<p><b>Note:</b> this does not apply to the pre-release
<a href="https://lists.apache.org/thread.html/dd78432b301f3f95567930c242c46b308c8a017fd754c0f388245915@%3Cannounce.subversion.apache.org%3E">Subversion 1.10.0-alpha3</a>
@@ -602,6 +604,119 @@ cycle into a new format 8 repository cre
</div> <!-- fsfs-lz4-configuration -->
+<div class="h4" id="lz4-over-the-wire">
+<h4>LZ4 compression over the wire in http:// and svn:// connections
+ <a class="sectionlink" href="#lz4-over-the-wire"
+ title="Link to this section">¶</a>
+</h4>
+
+<p>Deltas transferred between Subversion 1.10 clients and servers may be
+compressed with LZ4. The actual choice of the compression algorithm depends
+on the used protocol, environment and its configuration — see below.</p>
+
+<p>For <b>http://</b> protocol, use of LZ4 compression depends on the values
+of the server-side <tt>SVNCompressionLevel</tt> directive, client-side
+<tt>http-compression</tt> configuration option and on the network
+capabilities. LZ4 compression generally offers much faster compression
+and decompression speeds, but slightly worse compression ratio than zlib.
+By default, it is only preferred for low latency networks where the
+overhead associated with transferring the additional amount of data is
+assumed to be negligible.<p>
+
+<ul>
+ <li>
+ <p>On the <b>server-side</b>, <tt>SVNCompressionLevel 0</tt>
+ can be used to disable compression altogether. The special value of
+ <tt>SVNCompressionLevel 1</tt> forces the use of LZ4 compression for
+ clients that support it. All other values result in preferring zlib
+ compression with the respective compression level. Note that the
+ negotiated algorithm is still subject to the client's configuration.
+ For example, even if the server is configured to prefer zlib compression
+ over LZ4, a client may still negotiate the use of LZ4 compression when
+ its <tt>http-compression</tt> option is set to <tt>auto</tt>.</p>
+ </li>
+ <li>
+ <p>On the <b>client-side</b>, setting <tt>http-compression</tt> to
+ either <tt>yes</tt> or <tt>no</tt> will enable or disable compression
+ that is then negotiated based on the server's configuration.
+ The default value of <tt>auto</tt> will result in preferring LZ4
+ compression for low latency networks and zlib compression otherwise.</p>
+ </li>
+</ul>
+
+<p>Below is the table explaining the used compression algorithm in each
+combination of the client- and server-side configuration options:</p>
+
+<table border="1">
+ <tr>
+ <th></th>
+ <th colspan="3">1.10 Server<br />with SVNCompressionLevel:</th>
+ <th colspan="2">1.9 and older Server<br />with SVNCompressionLevel:</th>
+ </tr>
+ <tr>
+ <th>Subversion Client</th>
+ <th>0</th>
+ <th>1</th>
+ <th>2-9 (default: 5)<sup>*</sup></th>
+ <th>0</th>
+ <th>1-9 (default: 5)<sup>*</sup></th>
+ </tr>
+ <tr>
+ <td>1.10, <tt>http-compression: auto</tt><sup>*</sup>, low latency</td>
+ <td>No compression</td>
+ <td><b>LZ4</b> compression</td>
+ <td><b>LZ4</b> compression</td>
+ <td>No compression</td>
+ <td>zlib compression</td>
+ </tr>
+ <tr>
+ <td>1.10, <tt>http-compression: auto</tt><sup>*</sup>, high latency</td>
+ <td>No compression</td>
+ <td><b>LZ4</b> compression</td>
+ <td>zlib compression</td>
+ <td>No compression</td>
+ <td>zlib compression</td>
+ </tr>
+ <tr>
+ <td>1.10, <tt>http-compression: yes</tt></td>
+ <td>No compression</td>
+ <td><b>LZ4</b> compression</td>
+ <td>zlib compression</td>
+ <td>No compression</td>
+ <td>zlib compression</td>
+ </tr>
+ <tr>
+ <td>1.10, <tt>http-compression: no</tt></td>
+ <td>No compression</td>
+ <td>No compression</td>
+ <td>No compression</td>
+ <td>No compression</td>
+ <td>No compression</td>
+ </tr>
+ <tr>
+ <td>1.9 and older, <tt>http-compression: yes</tt><sup>*</sup></td>
+ <td>No compression</td>
+ <td>zlib compression</td>
+ <td>zlib compression</td>
+ <td>No compression</td>
+ <td>zlib compression</td>
+ </tr>
+ <tr>
+ <td>1.9 and older, <tt>http-compression: no</tt></td>
+ <td>No compression</td>
+ <td>No compression</td>
+ <td>No compression</td>
+ <td>No compression</td>
+ <td>No compression</td>
+ </tr>
+</table>
+
+<p><sup>*</sup> Default configurations</p>
+
+<!-- TODO: describe LZ4 over svn:// -->
+
+</div> <!-- lz4-over-the-wire -->
+
</div> <!-- lz4 -->
<div class="h3" id="shelving">