Author: hwright
Date: Wed Aug 17 13:01:30 2011
New Revision: 1158682

URL: http://svn.apache.org/viewvc?rev=1158682&view=rev
Log:
Reintegrate the 1.7.x-neon-default branch:

 * 1.7.x-neon-default branch
   Make neon the default http library.
   Justification:
     Serf's relative stability is inferior to that of the rest of
     Subversion, and for such a critical piece of our architecture,
     this is unacceptable.

     Subversion package producers have voiced a vote of no confidence,
     and plan to ship with Neon as the default:
     http://svn.haxx.se/dev/archive-2011-07/0751.shtml
     http://svn.haxx.se/dev/archive-2011-06/0796.shtml

     Bug reports of the crash variety continue to be reported:
     http://svn.haxx.se/dev/archive-2011-07/0735.shtml

     Serf floods the target server with orders of magniture more
     requests, resulting in undesirable server log bloat.

     Further, the promise of performance has not been realized:
     https://ctf.open.collab.net/sf/wiki/do/viewPage/projects.csvn/wiki/HTTPv2

     (As an aside, Serf's potential as a platform for future
     improvement remains unproven and doubtful.  For example, HTTPv2
     removes canonical resource URLs, which works against the caching
     proxy concept that seems to be the strongest argument in favor of
     Serf's approach.  But that's not strictly germane here.)

     rhuijben: Trivial problems like r1153138 and less trivial compatibility
     problems like r1154278 should have been fixed a long time ago if we don't
     want to delay releasing 1.7.0 on this kind of serf problems.

     markphip: I understand why *we* would want Serf as default, so we can
     make it better, but it goes against all of the other conservatism in
     this project to make this the default when we *know* it is less stable,
     potentially lacks some of the features and is generally considerably
     slower than Neon.

     Serf's use of chunked transfer encoding means that it isn't supported
     by some HTTP proxies.
   Votes:
     +1: philip, cmpilato, rhuijben, markphip
     +0: gstein (per my comments in issue 3979, I believe we need a
                 solution to probe the server with HTTP/1.1 support,
                 then fall back to HTTP/1.0 support as needed;
                 possibly some config support and other bits; I
                 believe this is necessary for ra_serf as a default,
                 yet doing this *properly* is not possible for the 1.7
                 release)

Modified:
    subversion/branches/1.7.x/   (props changed)
    subversion/branches/1.7.x/STATUS
    subversion/branches/1.7.x/configure.ac
    subversion/branches/1.7.x/subversion/svn_private_config.hw
    subversion/branches/1.7.x/subversion/tests/cmdline/svntest/main.py

Propchange: subversion/branches/1.7.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Aug 17 13:01:30 2011
@@ -1,5 +1,6 @@
 /subversion/branches/1.5.x-r30215:870312
 /subversion/branches/1.7.x-issue3888:1148937-1149162
+/subversion/branches/1.7.x-neon-default:1148803-1158680
 /subversion/branches/1.7.x-r1152189:1152759-1154249
 /subversion/branches/atomic-revprop:965046-1000689
 /subversion/branches/bdb-reverse-deltas:872050-872529

Modified: subversion/branches/1.7.x/STATUS
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.7.x/STATUS?rev=1158682&r1=1158681&r2=1158682&view=diff
==============================================================================
--- subversion/branches/1.7.x/STATUS (original)
+++ subversion/branches/1.7.x/STATUS Wed Aug 17 13:01:30 2011
@@ -206,52 +206,3 @@ Veto-blocked changes:
 
 Approved changes:
 =================
-
- * 1.7.x-neon-default branch
-   Make neon the default http library.
-   Justification:
-     Serf's relative stability is inferior to that of the rest of
-     Subversion, and for such a critical piece of our architecture,
-     this is unacceptable.
-
-     Subversion package producers have voiced a vote of no confidence,
-     and plan to ship with Neon as the default:
-     http://svn.haxx.se/dev/archive-2011-07/0751.shtml
-     http://svn.haxx.se/dev/archive-2011-06/0796.shtml
-
-     Bug reports of the crash variety continue to be reported:
-     http://svn.haxx.se/dev/archive-2011-07/0735.shtml
-
-     Serf floods the target server with orders of magniture more
-     requests, resulting in undesirable server log bloat.
-
-     Further, the promise of performance has not been realized:
-     https://ctf.open.collab.net/sf/wiki/do/viewPage/projects.csvn/wiki/HTTPv2
-
-     (As an aside, Serf's potential as a platform for future
-     improvement remains unproven and doubtful.  For example, HTTPv2
-     removes canonical resource URLs, which works against the caching
-     proxy concept that seems to be the strongest argument in favor of
-     Serf's approach.  But that's not strictly germane here.)
-
-     rhuijben: Trivial problems like r1153138 and less trivial compatibility
-     problems like r1154278 should have been fixed a long time ago if we don't
-     want to delay releasing 1.7.0 on this kind of serf problems.
-
-     markphip: I understand why *we* would want Serf as default, so we can
-     make it better, but it goes against all of the other conservatism in
-     this project to make this the default when we *know* it is less stable,
-     potentially lacks some of the features and is generally considerably
-     slower than Neon.
-
-     Serf's use of chunked transfer encoding means that it isn't supported
-     by some HTTP proxies.
-   Votes:
-     +1: philip, cmpilato, rhuijben, markphip
-     +0: gstein (per my comments in issue 3979, I believe we need a
-                 solution to probe the server with HTTP/1.1 support,
-                 then fall back to HTTP/1.0 support as needed;
-                 possibly some config support and other bits; I
-                 believe this is necessary for ra_serf as a default,
-                 yet doing this *properly* is not possible for the 1.7
-                 release)

Modified: subversion/branches/1.7.x/configure.ac
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.7.x/configure.ac?rev=1158682&r1=1158681&r2=1158682&view=diff
==============================================================================
--- subversion/branches/1.7.x/configure.ac (original)
+++ subversion/branches/1.7.x/configure.ac Wed Aug 17 13:01:30 2011
@@ -1314,7 +1314,7 @@ DEFAULT_FS_TYPE="fsfs"
 AC_DEFINE_UNQUOTED(DEFAULT_FS_TYPE, "$DEFAULT_FS_TYPE",
                    [The fs type to use by default])
 
-DEFAULT_HTTP_LIBRARY="serf"
+DEFAULT_HTTP_LIBRARY="neon"
 AC_DEFINE_UNQUOTED(DEFAULT_HTTP_LIBRARY, "$DEFAULT_HTTP_LIBRARY",
                    [The http library to use by default])
 

Modified: subversion/branches/1.7.x/subversion/svn_private_config.hw
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.7.x/subversion/svn_private_config.hw?rev=1158682&r1=1158681&r2=1158682&view=diff
==============================================================================
--- subversion/branches/1.7.x/subversion/svn_private_config.hw (original)
+++ subversion/branches/1.7.x/subversion/svn_private_config.hw Wed Aug 17 
13:01:30 2011
@@ -59,7 +59,7 @@
 #define DEFAULT_FS_TYPE "fsfs"
 
 /* The default HTTP library to use */
-#define DEFAULT_HTTP_LIBRARY "serf"
+#define DEFAULT_HTTP_LIBRARY "neon"
 
 /* Define to the Python/C API format character suitable for apr_int64_t */
 #if defined(_WIN64)

Modified: subversion/branches/1.7.x/subversion/tests/cmdline/svntest/main.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.7.x/subversion/tests/cmdline/svntest/main.py?rev=1158682&r1=1158681&r2=1158682&view=diff
==============================================================================
--- subversion/branches/1.7.x/subversion/tests/cmdline/svntest/main.py 
(original)
+++ subversion/branches/1.7.x/subversion/tests/cmdline/svntest/main.py Wed Aug 
17 13:01:30 2011
@@ -1462,7 +1462,7 @@ def create_default_options():
 def _create_parser():
   """Return a parser for our test suite."""
   # set up the parser
-  _default_http_library = 'serf'
+  _default_http_library = 'neon'
   usage = 'usage: %prog [options] [<test> ...]'
   parser = optparse.OptionParser(usage=usage)
   parser.add_option('-l', '--list', action='store_true', dest='list_tests',


Reply via email to