On Thu, Mar 10, 2011 at 05:36, Greg Stein <gst...@gmail.com> wrote: > On Wed, Mar 9, 2011 at 15:17, Ivan Zhakov <i...@visualsvn.com> wrote: >> On Tue, Mar 8, 2011 at 22:07, Greg Stein <gst...@gmail.com> wrote: >>> On Tue, Mar 8, 2011 at 12:34, Ivan Zhakov <i...@visualsvn.com> wrote: >>>>... >>>> It seems I found reason why ra_serf is slower than ra_neon. ra_serf >>>> sends CHECKOUT request for _each_ folder and file that being imported, >>>> while ra_neon perform it only for root directory. Maybe DAV experts >>>> can answer which behavior is correct: should WebDAV client CHECKOUT >>>> each resource being modified or it's fine to CHECKOUT only the root of >>>> commit operation? >>> >>> There is no other WebDAV server to talk to, besides our own. That is >>> one of the primary rationales behind the HTTPv2 effort: recognizing >>> reality, rather than living in an theoretical world. >>> >>> Thus, if Neon's approach works with our server, then ra_serf can go >>> ahead and use that approach, too. >>> >> Hi Greg, >> >> My investigations was wrong: actually ra_neon doesn't send CHECKOUT >> request only for sub-directories and file of directories being added >> in the same commit. We still have to CHECKOUT directories when using >> HTTPv1 to provide baseline. >> >> Anyway I've implemented ra_neon's approach in r1079967. > > Very cool! And from John's tests, it looks like that worked. > > The change looks pretty simple. Maybe it could be backported to 1.6? > I don't think that this change should be backported due our policy. It's just small optimization. And I think that most performance improvement comes from fix in serf, not mine change in ra_serf.
-- Ivan Zhakov