[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [Proposal] Remove DAV properties cache in ra_serf

From: C. Michael Pilato <cmpilato_at_collab.net>
Date: Mon, 14 Feb 2011 14:14:14 -0500

On 02/14/2011 01:57 PM, Ivan Zhakov wrote:
> Hi,
>
> Currently ra_serf caches *all* DAV properties retrieved using PROPFIND
> in session pool. This was attempt to reduce number of PROPFIND
> requests. But current implementation has several problems:
> 1. Unlimited memory usage: current implementation stores all
> properties, so svn ls -R command can easily eat 150 mb of memory.
> 2. Very low cache hit due the fact that cache doesn't support caching
> "allprop" requests. For some operations there is no hits at all.
> 3. Current implementation caches properties that may change between
> requests, like URL to youngest revision.
>
> Of course these problems can be fixed, but I'm not sure that we need
> this code. Since in svn 1.7 we have HTTPv2 which doesn't use so many
> PROPFIND requests that we tried to reduce using DAV properties cache.
>
> So I'm propose just to remove DAV properties cache from ra_serf.
> Objections? Comments?
>
> PS: See attached patch in case you'd like test performance.

Ivan,

Thanks so much for looking so closely into ra_serf recently! It hadn't
occurred to me when implementing the HTTPv2 stuff that the prop cache might
become less useful as a result.

But what is the effect for older servers? Would it make sense keep the
cache logic, but conditionally use it only for non-HTTPv2 connections?

-- 
C. Michael Pilato <cmpilato_at_collab.net>
CollabNet   <>   www.collab.net   <>   Distributed Development On Demand

Received on 2011-02-14 20:15:04 CET

This is an archived mail posted to the Subversion Dev mailing list.