Missing info in release notes about http bulk updates config options
Before I forget, I just noticed that there is no mention anywhere in the release notes about the http-bulk-updates or the corresponding server side options. I think it's important to at least mention them, and hopefully give some recommendations, in the section about serf. The yellow box there, highlighting server configuration changes, only talks about MaxKeepAliveRequests currently. Can these things be added to the release notes by someone who knows enough about those options (i.e. not me :-)? (in passing, I also noticed that the default 'servers' config file still contains some neon-specific settings. But perhaps that's intentional, because people can use different svn clients using the same runtime config area? Or go back and forth between versions.) -- Johan
Re: Missing info in release notes about http bulk updates config options
I'm working on a text to describe how these work, including two tables detailing all possible combinations. Lieven On Thu, Jun 13, 2013 at 1:20 AM, Johan Corveleyn wrote: > Before I forget, I just noticed that there is no mention anywhere in > the release notes about the http-bulk-updates or the corresponding > server side options. I think it's important to at least mention them, > and hopefully give some recommendations, in the section about serf. > The yellow box there, highlighting server configuration changes, only > talks about MaxKeepAliveRequests currently. > > Can these things be added to the release notes by someone who knows > enough about those options (i.e. not me :-)? > > (in passing, I also noticed that the default 'servers' config file > still contains some neon-specific settings. But perhaps that's > intentional, because people can use different svn clients using the > same runtime config area? Or go back and forth between versions.) > -- > Johan
Re: Missing info in release notes about http bulk updates config options
Ping! - Julian Johan Corveleyn wrote on 2013-06-12: > Before I forget, I just noticed that there is no mention anywhere in > the release notes about the http-bulk-updates or the corresponding > server side options. I think it's important to at least mention them, > and hopefully give some recommendations, in the section about serf. > The yellow box there, highlighting server configuration changes, only > talks about MaxKeepAliveRequests currently. > > Can these things be added to the release notes by someone who knows > enough about those options (i.e. not me :-)? > > (in passing, I also noticed that the default 'servers' config file > still contains some neon-specific settings. But perhaps that's > intentional, because people can use different svn clients using the > same runtime config area? Or go back and forth between versions.) > > -- > Johan
Re: Missing info in release notes about http bulk updates config options
Relaying the ping to Lieven :-), as he said here that he was working on a text for the release notes: http://svn.haxx.se/dev/archive-2013-06/0290.shtml -- Johan On Wed, Jun 19, 2013 at 3:44 PM, Julian Foad wrote: > Ping! > > - Julian > > > Johan Corveleyn wrote on 2013-06-12: > >> Before I forget, I just noticed that there is no mention anywhere in >> the release notes about the http-bulk-updates or the corresponding >> server side options. I think it's important to at least mention them, >> and hopefully give some recommendations, in the section about serf. >> The yellow box there, highlighting server configuration changes, only >> talks about MaxKeepAliveRequests currently. >> >> Can these things be added to the release notes by someone who knows >> enough about those options (i.e. not me :-)? >> >> (in passing, I also noticed that the default 'servers' config file >> still contains some neon-specific settings. But perhaps that's >> intentional, because people can use different svn clients using the >> same runtime config area? Or go back and forth between versions.) >> >> -- >> Johan
[PATCH] for 1.8 release notes (was Re: Missing info in release notes about http bulk updates config options)
Hi, Attached a patch to the site branch that tries to explain SVNAllowBulkUpdates and http-bulk-updates in the 1.8 release notes. Anyone care to review and fix where needed? I'm not a lot at my pc tonight and tomorrow so feel free to commit directly. regards, Lieven On Wed, Jun 19, 2013 at 3:44 PM, Julian Foad wrote: > Ping! > > - Julian > > > Johan Corveleyn wrote on 2013-06-12: > >> Before I forget, I just noticed that there is no mention anywhere in >> the release notes about the http-bulk-updates or the corresponding >> server side options. I think it's important to at least mention them, >> and hopefully give some recommendations, in the section about serf. >> The yellow box there, highlighting server configuration changes, only >> talks about MaxKeepAliveRequests currently. >> >> Can these things be added to the release notes by someone who knows >> enough about those options (i.e. not me :-)? >> >> (in passing, I also noticed that the default 'servers' config file >> still contains some neon-specific settings. But perhaps that's >> intentional, because people can use different svn clients using the >> same runtime config area? Or go back and forth between versions.) >> >> -- >> Johan Index: publish/docs/release-notes/1.8.html === --- publish/docs/release-notes/1.8.html (revision 1494710) +++ publish/docs/release-notes/1.8.html (working copy) @@ -389,7 +389,7 @@ HTTP client interfaces (and sets of bugs!) serf is client provider for Subversion. -Note that +Note that http://svn.haxx.se/dev/archive-2011-01/0320.shtml"; >server-side configuration changes might be required to avoid performance regressions for serf clients in some setups. @@ -402,22 +402,120 @@ Clients using neon will also work fine with this c -Server logs larger with serf clients - Skelta style updates are now the default + ¶ -This affects any server version, when accessed with a 1.8 -client. +The svn 1.8 client with serf defaults to skelta mode for update +operations (checkout, update, merge and export) instead of the bulk update mode +used by previous versions. Skelta mode was introduced in Subversion 1.6.0 and +improved in 1.8.0. It uses one HTTP request and response per resource that needs +to be fetched from the server, whereas bulk update mode fetches all resources in +one massive reponse. -Because serf clients issue a larger number of HTTP GET requests -than neon clients it is possible that serf clients cause quicker -growth of httpd server logs than neon clients do. As of 1.7.3, -the httpd error logs may also grow more rapidly with serf clients -than with neon clients; see +The main benefit of skelta mode is that it allows a correctly set up Apache +server or intermediate proxy server to cache mod_dav_svn’s responses to +handle later requests from the cache. This results in improved performance of +svn client operations and reduced CPU usage on the server side. It also allows +a more detailed audit of clients accessing resources in a Subversion +repository. + +Skelta mode has some disadvantages: + +Apache server access log files will grow more quickly due to the larger +number of requests and responses. As of 1.7.3, the httpd error logs may also +grow more rapidly with serf clients than with neon clients; see http://svn.apache.org/viewvc?rev=1239697&view=rev"; ->r1239697. +>r1239697. +Network traffic can increase drastically when Kerberos or NTLM +authentication is used, as these add a 2 - 4 KB header per HTTP request and +response. + +This release introduces two options to control if the svn client will use +skelta or bulk update mode. + + + For the server administrator: The SVNAllowBulkUpdates directive for +mod_dav_svn now accepts Prefer. This will advise the svn +client to always use bulk update mode. All svn client versions with a default +configuration (see table) will respect this preference. + +For the user: Set the new option http-bulk-updates in the servers +runtime configuration file to yes to force the use of bulk updates, +no to never use bulk updates. The default option auto makes +svn use skelta mode with a 1.8 server, and bulk updates mode with older +servers. + + + + +Set SVNAllowBulkUpdates to Prefer if your +server configuration does not allow an intermediate caching server - on your +side or on the client's side - to successfully cache server responses. + + +Table explaining the mode used between each combination of svn client and +server version and relevant configuration directives: + + + + +1.8 Serverwith SVNAllowBulkUpdates: +1.7 and older Serverwith SVNAllowBulkUpdates: + + +Subversion Client +Off +On* +Prefer +Off +On* + + +1.8, http-bulk-updates: auto* +Skelta mode +Skelta mode +Bulk mode +Skelta mode +Bulk mode + + +1.8, http-bulk-updates: yes +Skelta mode +Bulk mode +Bulk mode +Skelta mode +Bulk mode +
Re: [PATCH] for 1.8 release notes (was Re: Missing info in release notes about http bulk updates config options)
On Wed, Jun 19, 2013 at 10:10 PM, Lieven Govaerts wrote: > Hi, > > Attached a patch to the site branch that tries to explain > SVNAllowBulkUpdates and http-bulk-updates in the 1.8 release notes. > > Anyone care to review and fix where needed? I'm not a lot at my pc > tonight and tomorrow so feel free to commit directly. Thanks, Lieven. This is great and much needed info. I've taken the liberty to commit it to the site, with some small tweaks: - Corrected the id of the section to match the named anchor. - Tweaked the part "For the user ..." to say that "auto" will use skelta mode with a 1.8 server *unless it has SVNAllowBulkUpdates set to Prefer*. - Tweaked the notice about setting SVNAllowBulkUpdates to say *For 1.8 servers ...*. If needed, further tweaks / fixes can be made while it's already live on the site. One possible addition that comes to mind (but I'll leave it to someone else to write this -- it's already past 3 am here :-)): an additional benefit of skelta mode is the client-side optimization of not requesting pristines that are already in the pristine store (very powerful when using 'switch', or when having multiple branches checked out in a sparse working copy). But when adding that, the "notice" suggesting to use "Prefer" if there is no intermediate caching server, is no longer accurate (unless you see this client-side optimization as just another caching server :-)). -- Johan