You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Bert Huijben <be...@qqmail.nl> on 2011/09/16 22:29:34 UTC

RE: svn commit: r1171708 - in /subversion/trunk/subversion: include/svn_config.h libsvn_ra_local/ra_plugin.c libsvn_subr/config_file.c svn/main.c


> -----Original Message-----
> From: philip@apache.org [mailto:philip@apache.org]
> Sent: vrijdag 16 september 2011 20:36
> To: commits@subversion.apache.org
> Subject: svn commit: r1171708 - in /subversion/trunk/subversion:
> include/svn_config.h libsvn_ra_local/ra_plugin.c libsvn_subr/config_file.c
> svn/main.c
> 
> Author: philip
> Date: Fri Sep 16 18:36:09 2011
> New Revision: 1171708
> 
> URL: http://svn.apache.org/viewvc?rev=1171708&view=rev
> Log:
> Stop disabling the new FSFS caching for ra_local in the command line
> client and add config:miscellaneous:memory-cache-size to allow the
> user to control the cache size.  Now the default for the command line
> client is to use the default 16MB FSFS memory cache.
> 
> * subversion/include/svn_config.h
>   (SVN_CONFIG_OPTION_MEMORY_CACHE_SIZE): New.
> 
> * subversion/libsvn_ra_local/ra_plugin.c
>   (cache_init): New.
>   (svn_ra_local__open): Set FSFS cache size.
> 
> * subversion/libsvn_subr/config_file.c
>   (svn_config_ensure): Add memory-cache-size.
> 
> * subversion/svn/main.c
>   (main): Don't set FSFS cache to zero.

This new configuration option assumes any client (=libsvn_client/libsvn_ra_local user) wants to have the same caching.

So a short lived 'svn' which exits after a single command has a similar cache as a long living 'subclipse' or ....


 Is this really what we want?

The previous code specifically made this behavior different between clients, while the one time initializing in sv_ra__local__open makes it hard for clients to configure their own caching. (They can't do it before calling into libsvn_client as it will be overwritten by this new code)

	Bert


Re: svn commit: r1171708 - in /subversion/trunk/subversion: include/svn_config.h libsvn_ra_local/ra_plugin.c libsvn_subr/config_file.c svn/main.c

Posted by Philip Martin <ph...@wandisco.com>.
"Bert Huijben" <be...@qqmail.nl> writes:

> This new configuration option assumes any client
> (=libsvn_client/libsvn_ra_local user) wants to have the same caching.
>
> So a short lived 'svn' which exits after a single command has a
> similar cache as a long living 'subclipse' or ....
>
>  Is this really what we want?

Maybe, maybe not.  Only people who want to change the default will have
a problem, and then only if they want clients to be different.  On a
Linux system there is very little overhead to having a large cache for a
short lived 'svn'.  It's only likely to be a problem if memory is short
and overcommit is not enabled.

> The previous code specifically made this behavior different between
> clients, while the one time initializing in sv_ra__local__open makes
> it hard for clients to configure their own caching. (They can't do it
> before calling into libsvn_client as it will be overwritten by this
> new code)

A client can set the value in the config, just as 'svn' does to override
config values with command line values.

-- 
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com