Re: svn to git, N-squared?
- From
- Eric Wong <normalperson@yhbt.net>
- Date
- Jun 12, 2006, 04:29 UTC
- Message-ID
- <20060612042934.GA12083@hand.yhbt.net>
- In-Reply-To
- <9e4733910606111902l709c71ccyf45070d55112739e@mail.gmail.com>
Jon Smirl <jonsmirl@gmail.com> wrote:
Show 6 quoted lines
> I have Mozilla CVS in a SVN repository. I've been using git-svnimport > to import it. This time I am letting it run to completion; but the > import has been running for four days now and it is only up to 2004. > The import task is stable at 570MB and it is using about 50% of my > CPU. It is constantly spawning off git write-tree, read-tree, > hash-object, update-index. It is not doing excessive disk activity.
SVN itself seems to get much slower as you get towards newer revisions in a repository (FSFS) with lots of history. I've been experimenting a bit with a local copy of the gcc repo from November and git-svn SUCKED at importing it (it took over a week and I cancelled it out of frustration). I started repacking too, but, and it didn't help, Much of the performance defieciency was the svn sub process. being extremely slow at updating.
I also tried git-svnimport, of course, but I only had 512M on that machine and the machine became unusable due to heavy swapping.
Show 9 quoted lines
> The import seems to be getting n-squared slower. It is still making > forward progress but the progress seems to be getting slower and > slower. > > It looks like it is doing write-tree, read-tree, hash-object, > update-index once or more per change set. If these commands are > n-proportional and they are getting run n times, then this is a > n-squared process. Projecting this out, the import may take 10 days or > more to completely finish.
I'm working on some improvements to git-svn to make it a bit more spiffy.
-- Eric Wong