]> git.saurik.com Git - apt.git/commitdiff
* methods/http.cc:
authorDavid Kalnischkies <kalnischkies@gmail.com>
Mon, 14 May 2012 22:12:21 +0000 (00:12 +0200)
committerDavid Kalnischkies <kalnischkies@gmail.com>
Mon, 14 May 2012 22:12:21 +0000 (00:12 +0200)
  - after many years of pointless discussions disable http/1.1 pipelining
    by default as many webservers and proxies seem to be unable to conform
    to specification must's (rfc2616 section 8.1.2.2) (LP: #996151)

debian/changelog
doc/apt.conf.5.xml
methods/http.cc

index 88057d531b34888bb4c085da443d8ac7c62dd18f..dd8ca72cd8d96128201338bc547f0d52f10a1caa 100644 (file)
@@ -1,6 +1,10 @@
 apt (0.9.4) UNRELEASED; urgency=low
 
   [ David Kalnischkies ]
+  * methods/http.cc:
+    - after many years of pointless discussions disable http/1.1 pipelining
+      by default as many webservers and proxies seem to be unable to conform
+      to specification must's (rfc2616 section 8.1.2.2) (LP: #996151)
   * apt-pkg/pkgcachegen.cc:
     - make IsDuplicatedDescription static so that it is really private
       as we don't need a symbol for it as it is not in a header
index c2220b1bf166ed30759c56c068e4d0e5717a55f4..2f95c1e52a97198463e67aa2dda32cf6fc004302 100644 (file)
@@ -340,13 +340,12 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
      <para>The option <literal>timeout</literal> sets the timeout timer used by the method, 
      this applies to all things including connection timeout and data timeout.</para>
 
-     <para>One setting is provided to control the pipeline depth in cases where the
-     remote server is not RFC conforming or buggy (such as Squid 2.0.2).
-     <literal>Acquire::http::Pipeline-Depth</literal> can be a value from 0 to 5 
-     indicating how many outstanding requests APT should send. A value of
-     zero MUST be specified if the remote host does not properly linger
-     on TCP connections - otherwise data corruption will occur. Hosts which
-     require this are in violation of RFC 2068.</para>
+     <para>The setting <literal>Acquire::http::Pipeline-Depth</literal> can be used to
+     enabled HTTP pipeling (RFC 2616 section 8.1.2.2) which can be beneficial e.g. on
+     high-latency connections. It specifies how many requests are send in a pipeline.
+     Previous APT versions had a default of 10 for this setting, but the default value
+     is now 0 (= disabled) to avoid problems with the ever-growing amount of webservers
+     and proxies which choose to not conform to the HTTP/1.1 specification.</para>
 
      <para>The used bandwidth can be limited with <literal>Acquire::http::Dl-Limit</literal>
      which accepts integer values in kilobyte. The default value is 0 which deactivates
index bb02176e9d5522515315ce5cc4aaf7e0cff84551..c8e6f1b7b51903e35aa818f990b05d4d3377bee0 100644 (file)
@@ -61,7 +61,7 @@ using namespace std;
 string HttpMethod::FailFile;
 int HttpMethod::FailFd = -1;
 time_t HttpMethod::FailTime = 0;
-unsigned long PipelineDepth = 10;
+unsigned long PipelineDepth = 0;
 unsigned long TimeOut = 120;
 bool AllowRedirect = false;
 bool Debug = false;