Re: [darcs-users] Re: [BK] upgrade will be needed

From: zander
Date: Mon Feb 21 2005 - 14:51:54 EST


On Mon, Feb 21, 2005 at 04:53:06PM +0100, Andrea Arcangeli wrote:
> Hello Miles,
>
> On Mon, Feb 21, 2005 at 02:39:05PM +0900, Miles Bader wrote:
> > Yeah, the basic way arch organizes its repository seems _far_ more sane
> > than the crazy way CVS (or BK) does, for a variety of reasons[*]. No
> > doubt there are certain usage patterns which stress it, but I think it
> > makes a lot more sense to use a layer of caching to take care of those,
> > rather than screwing up the underlying organization.
> >
> > [*] (a) Immutability of repository files (_massively_ good idea)
>
> what is so important about never modifying the repo? Note that only the
> global changeset database and a few ,v files will be modified for each
> changeset, it's not like we're going to touch all the ,v files for each
> checkin. Touching the "modified" ,v files sounds a very minor overhead.
>
> And you can incremental backup the stuff with recursive diffing the
> repo too.
>
> AFIK all other SCM except arch and darcs always modify the repo, I never
> heard complains about it, as long as incremental backups are possible
> and they definitely are possible.

Well, as you seem to have never been bitten by that bug; let me assure you
the problem is very real. Each file (,v file) can live in the repo for
many years and has to servive any spurious writes to be usable. The
curruption of such files (in my experience) only shows itself if you try
to access its history; which may be weeks after the corruption started,
and you can't use a backup for that since you will overwrite new versions
added since.

Think about it this way; nfs servers are known to corrupt things;
reboots can corrupt files, different clients will try to write to
the file at the same time quite often during the lifetime of the file, cvs
clients get killed during writes or network drops the connection during a
session.
Considering that the ,v files have a lifetime of years, with many
modifications during that time, I think its amazing corruption does not
happen more often.

CVS was pretty good at keeping files sane, but I'll go for a solution that
completely sidesteps said problem any day.

--
Thomas Zander

Attachment: pgp00000.pgp
Description: PGP signature