Re: AW: svn cleanup and unreferenced pristines

2014-01-13 Thread Vincent Lefevre
On 2014-01-13 08:27:34 +, Markus Schaber wrote:
> > On 2014-01-13 03:51:08 +0100, Branko Čibej wrote:
> > > On 13.01.2014 03:43, Vincent Lefevre wrote:
> > > > I meant deltas like in the repository (but see below).
> > >
> > > When you say "delta" you have to also define "against what". Otherwise
> > > it's just a not very efficient compression algorithm.
> > 
> > Against another pristine. Then there are several ways to do that, just like
> > BDB and FSFS used different methods for the repository.
> > But any of them would be more memory efficient than no deltas at all (like
> > currently).
> 
> But the need to do delta decompression on each "svn status" will cost a lot
> of i/o and CPU.

Not if the base revisions are stored like now (so, it shouldn't be
exactly like FSFS, perhaps more like BDB or some mix, or something
like what distributed SCM's do...).

Some new test on another working copy (before and after clean-up):

xvii:~> du -ks wd/.svn/pristine wd.new/.svn/pristine
4434616 wd/.svn/pristine
468884  wd.new/.svn/pristine

And the corresponding repository size: 1477764

So, here, the total size of pristine copies is more than 9 times
the size taken after a cleanup, and 3 times the total size of the
repository.

> I'd welcome an option in SVN to cache the repository. (TortoiseSVN
> already has some caching for the log, IIRC).

Yes, caching the log would really be useful. I do a lot "svn log".

> But then, the cache should not be per-wc, but in a system (or user)
> global directory, or we will end up with several copies of the same
> repository on the machine.

Yes.

-- 
Vincent Lefèvre  - Web: 
100% accessible validated (X)HTML - Blog: 
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)


AW: svn cleanup and unreferenced pristines

2014-01-13 Thread Markus Schaber
Hi,


> -Ursprüngliche Nachricht-
> Von: Vincent Lefevre [mailto:vincent-...@vinc17.net]
> Gesendet: Montag, 13. Januar 2014 04:17
> An: dev@subversion.apache.org
> Betreff: Re: svn cleanup and unreferenced pristines
> 
> On 2014-01-13 03:51:08 +0100, Branko Čibej wrote:
> > On 13.01.2014 03:43, Vincent Lefevre wrote:
> > > I meant deltas like in the repository (but see below).
> >
> > When you say "delta" you have to also define "against what". Otherwise
> > it's just a not very efficient compression algorithm.
> 
> Against another pristine. Then there are several ways to do that, just like
> BDB and FSFS used different methods for the repository.
> But any of them would be more memory efficient than no deltas at all (like
> currently).

But the need to do delta decompression on each "svn status" will cost a lot
of i/o and CPU.

> > >>> Caching the repository or a part of the repository may be better.
> > >> That's exactly what pristines are.
> > > Not in a memory efficient way! For one of my working copy, a "svn
> > > cleanup" reduced the working copy size by about 2 GB, while the
> > > repository is only 1.5 GB.
> >
> > Indeed. The point of the whole exercise is to invent an efficient way
> > of storing (or omitting, when appropriate) pristines. Saying "delta"
> > or "cache the repository" is just hand-waving and doesn't really
> > contribute to a solution.
> 
> For machines with enough disk space, caching the whole repository could be a
> solution. This is known not to be a bad one, since this is more or less what
> distributed SCM's do. For machines with little disk space, users may want to
> avoid storing any unreferenced pristines anyway.

I'd welcome an option in SVN to cache the repository. (TortoiseSVN already has
some caching for the log, IIRC).

But then, the cache should not be per-wc, but in a system (or user) global 
directory, or we will end up with several copies of the same repository on the 
machine.


Best regards

Markus Schaber
-- 
CODESYS® a trademark of 3S-Smart Software Solutions GmbH

Inspiring Automation Solutions

3S-Smart Software Solutions GmbH
Dipl.-Inf. Markus Schaber | Product Development Core Technology
Memminger Str. 151 | 87439 Kempten | Germany
Tel. +49-831-54031-979 | Fax +49-831-54031-50

E-Mail: m.scha...@codesys.com | Web: http://www.codesys.com | CODESYS store: 
http://store.codesys.com
CODESYS forum: http://forum.codesys.com

Managing Directors: Dipl.Inf. Dieter Hess, Dipl.Inf. Manfred Werner | Trade 
register: Kempten HRB 6186 | Tax ID No.: DE 167014915