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

RE: Eliminating the text-base penalty

From: Jon Watte <hplus_at_mindcontrol.org>
Date: 2002-09-29 18:38:07 CEST

> Hmm. On my box, creating a tree with about 36k nodes takes
> approximately 8.5 seconds; crawling it and statting every node
> takes approximately 4 seconds. If it really takes 10 minutes to
> traverse a tree containing 20k files looking to see what's changed,
> then I suspect the problem is with the implementation, not with
> the principle.

That's the numbers I've seen on Windows with CVS. Of course, CVS does
more than just stat each file. However, SVN has a similar model.

> Further, most checkins don't need to check the entire tree for
> changed files, nor even a substantial fraction of the entire tree.
> Usually you're working in a directory somewhere near the leaves,
> with (if you're unlucky) 1000 files under it. No?

But my change involves some database schema, which lives in one place;
some sources and headers, which live elsewhere; some xslt, some images,
some perl scripts and a new regression test. So, no, my change isn't
contained in a single directory. A problem that happened a lot with
CVS was that users would try to submit in "the main directory" and
forget some other files they've edited. "Educating the users" isn't
sufficient because these are clever, well-meaning programmers already,
whose only fault is that they're human.

> is being done wrong in Subversion. And if you often have to
> do a checkin for which Subversion needs to look at 20k files,
> then I think something's wrong in the organization of your
> project. I am open to correction on both issues.

I've found that any project that's big enough will run into these kinds
of issues. It's just a fact of scale.

> My experiment was admittedly a very simple-minded one,

Did you run it on Windows? Were the files large enough to look like
real source files?

> This was on a local filesystem on a FreeBSD box.

FreeBSD: Hardly the worst case scenario :-)


                                / h+

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sun Sep 29 18:40:06 2002

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.