You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by wr...@apache.org on 2005/08/06 23:45:49 UTC

svn commit: r230595 - /httpd/httpd/branches/2.0.x/STATUS

Author: wrowe
Date: Sat Aug  6 14:45:44 2005
New Revision: 230595

URL: http://svn.apache.org/viewcvs?rev=230595&view=rev
Log:

  Clarify after the revert of the original backport; a number of
  concerns addressed to hopefully sync mod_proxy_http.c to trunk
  for request handling.

Modified:
    httpd/httpd/branches/2.0.x/STATUS

Modified: httpd/httpd/branches/2.0.x/STATUS
URL: http://svn.apache.org/viewcvs/httpd/httpd/branches/2.0.x/STATUS?rev=230595&r1=230594&r2=230595&view=diff
==============================================================================
--- httpd/httpd/branches/2.0.x/STATUS (original)
+++ httpd/httpd/branches/2.0.x/STATUS Sat Aug  6 14:45:44 2005
@@ -104,14 +104,23 @@
 
 RELEASE SHOWSTOPPERS:
 
-    * Various fixes to T-E and C-L processing from trunk
+    * Various fixes to T-E and C-L processing from trunk and
+      backport this fix from 2.1-dev:
+
+          http://people.apache.org/~wrowe/httpd-2.0.54-proxy-request.patch
+
+
+      proxy HTTP: Rework the handling of request bodies to handle
+      chunked input and input filters which modify content length, and
+      avoid spooling arbitrary-sized request bodies in memory.
+      PR: 15859 [Jeff Trawick]
 
       Refactor mod_proxy_http.c's Transfer-Encoding/Content-Length elections
       since they didn't follow RFC 2616, in fact didn't seem to make much
       sense at all.  Patch to migrate request-body-handling from trunk/ based
       on 2.1-dev request body handling behavior (although just a bit more
       conservative on the side of C-L spooling)...
-          http://people.apache.org/~wrowe/httpd-2.0-proxy-request-3.patch
+
       Revert r219061 to properly test this patch, as r219061 masks the
       underlying bug (although it is a -good- patch in and of itself).
 
@@ -122,10 +131,30 @@
            the unrelated stuff removed.
 
            unrelated change: s/apr_strnatcasecmp/strcasecmp/
+             wrowe notes: for correctness, will commit seperately
            unrelated change: s/b/bb/ on variable+parameter names a few times
+             wrowe notes: for legibility, will commit seperately
            unrelated change: whitespaces changes all over the shop
+             wrowe notes: for legibility, will commit seperately
            spurious change:? send_request_body() appears to have been inlined
+             wrowe notes: to better integrate request handling, both performance
+                          and legibility of the resulting code, matching trunk/
+                          This is moot as the original backport is reverted.
            unrelated change: Via header handling
+             wrowe notes: per the current mod_proxy_http.c behavior in trunk,
+                          this request passing issue too should be fixed.
+                          Can commit this seperately
+
+           wrowe offers; this is a backport of cumulative changes, yes it's
+           not unit by unit, as it is ment to *closely* reflect the current
+           state of trunk/, to help developers identify what has been fixed
+           in 2.0, and what is not in sync with trunk/.  If you prefer, some
+           of the simple changes you mention, strcasecmp, bb, whitespace, will
+           be layered one-at-a-time to improve the legibility of history.
+           However, it was clearly impossible for most devs to even review the
+           current state of code, never mind the patch.  This is the net-total
+           change, as opposed to expecting developers to layer a set of four
+           or five patches.
 
          trawick noted on list: we elected C-L not for efficiency, but because
                  it's the most widely supported [paraphrasing]
@@ -140,7 +169,9 @@
          wrowe   adds; After testing, I've determined one brigade isn't enough,
                  so I've extended this to a loop up to MAX_MEM_SPOOL, we will
                  fetch up enough body to fill MAX_MEM_SPOOL and hopefully
-                 hit the C-L code path most of the time.
+                 hit the C-L code path most of the time.  There is a small pad
+                 in case an input filter cannot process enough of the body as
+                 a single 'unit' and refuses to proceed without a larger buffer.
 
          trawick We are counting bytes in stream_reqbody_cl but filters can
                  change the size? [p]
@@ -167,25 +198,11 @@
                  the issues of correctly sending the body and choosing the
                  transport flavor.
 
-    * http://svn.apache.org/viewcvs?rev=171205&view=rev [committed]
-      backport this fix from 2.1-dev:
-      proxy HTTP: Rework the handling of request bodies to handle
-      chunked input and input filters which modify content length, and
-      avoid spooling arbitrary-sized request bodies in memory.
-      PR: 15859
-
-        +1 trawick, jerenkrantz, jim
-        -1 wrowe
-           This patch needs to be reverted or ammended by the patch above;
-           this resulting code is more complex, yet equally faulty in it's
-           C-L/T-E elections for a number of specific cases.  No opinion
-           between the choice of reverting and re-backporting, or simply
-           patching-the-patch.
-
-    * TRACE must not have a request body per RFC2616; see the -trace.patch
-      below for one of two alternatives.  The other alternative; simply
-      hack mod_proxy.c to reject TRACE when a body is seen, again see that
-      -trace.patch for an illustration.
+    * TRACE must not have a request body per RFC2616; see the 
+      http://people.apache.org/~wrowe/httpd-2.0-trace.patch below for one of two 
+      alternatives.  The other alternative; simply hack mod_proxy.c to reject 
+      TRACE when a body is seen, although wrowe believes the whole solution is
+      the better option.
 
 
 PATCHES ACCEPTED TO BACKPORT FROM TRUNK: