Author: hartmannathan
Date: Wed Apr  6 15:43:16 2022
New Revision: 1899621

URL: http://svn.apache.org/viewvc?rev=1899621&view=rev
Log:
* site/staging/1.15.html:
  (#streamy-checkouts): New section.

Modified:
    subversion/site/staging/docs/release-notes/1.15.html

Modified: subversion/site/staging/docs/release-notes/1.15.html
URL: 
http://svn.apache.org/viewvc/subversion/site/staging/docs/release-notes/1.15.html?rev=1899621&r1=1899620&r2=1899621&view=diff
==============================================================================
--- subversion/site/staging/docs/release-notes/1.15.html (original)
+++ subversion/site/staging/docs/release-notes/1.15.html Wed Apr  6 15:43:16 
2022
@@ -330,6 +330,46 @@ downloaded from the repository.</p>
 
 </div> <!-- bare-working-copies -->
 
+<div class="h3" id="streamy-checkouts">
+<h3>Streamy Checkouts
+  <a class="sectionlink" href="#streamy-checkouts"
+     title="Link to this section">&para;</a>
+</h3>
+
+<p>This new feature delivers a noticeable speed-up for <tt>svn checkout</tt>
+and <tt>svn update</tt> while addressing reports of network connection
+timeouts that could occur in the middle of these operations.</p>
+
+<p>Previous versions of the Subversion client would fetch files from the
+server into the working copy's administrative directory, where each file's
+BASE revision is cached, and then separately "install" them to their proper
+location in the working copy. The "install" step involves copying and possibly
+translating the files to account for things like <tt>svn:eol-style</tt> and
+<tt>svn:keywords</tt>. This step was done per-directory and during that time,
+the client would hold the connection to the server open without reading
+anything through it. If this communication silence went on for too long, the
+server would eventually timeout and close the connection from its end, leading
+to annoying errors on the client side.</p>
+
+<p>For example, assuming a 60 second HTTP timeout (the default in httpd 2.4.x)
+and reasonably fast storage on the client side, timeouts could be expected to
+occur while installing any directory about 6 GB in size or larger. (This value
+varied significantly based on numerous interrelated factors.)</p>
+
+<p>This issue is addressed by making the checkout stream data to both the
+administrative directory and the projected working file simultaneously,
+reducing the actual "install" to an atomic rename. As a result, the
+<tt>svn checkout</tt> and <tt>svn update</tt> operations no longer hold the
+connection open without reading from it, eliminating the timeouts.</p>
+
+<p>Clients will enjoy a noticeable speed-up due to improved network
+performance and reduced storage-level I/O.</p>
+
+<p><strong>Note:</strong> Streamy Checkouts are not yet implemented for
+<tt>svn export</tt>.</p>
+
+</div> <!-- streamy-checkouts -->
+
 </div>  <!-- new-features -->
 
 <div class="h2" id="enhancements">


Reply via email to