Fwd: Re: Repository format comparison

Jesse Keating jkeating at redhat.com
Wed Nov 15 21:35:40 UTC 2006



----------  Forwarded Message  ----------

Subject: Re: Repository format comparison
Date: Wednesday 15 November 2006 16:01
From: Matt Mackall <mpm at selenic.com>
To: Giuseppe Bilotta <bilotta78 at hotpop.com>
Cc: mercurial at selenic.com

On Wed, Nov 15, 2006 at 08:59:06PM +0100, Giuseppe Bilotta wrote:
> Hello, on another mailing list I just found a link to this blog
> article
>
> http://keithp.com/blog/Repository_Formats_Matter.html
>
> (from a month ago) which also has a brief mentioning of Mercurial:
>
> """
> Mercurial uses a truncated forward delta scheme where file revisions
> are appended to the repository file, as a string of deltas with
> occasional complete copies of the file (to provide a time bound on
> operations). This suffers from two possible problems???the first is
> fairly obvious where corrupted writes of new revisions can affect old
> revisions of the file.

Mercurial files are append-only. New revisions (corrupted or not), do
not affect old revisions. If a hardware or operating system bug causes
a write to scribble over the wrong part of a file, all bets are off of
course. But such bugs could just as easily scribble over any other
part of the disk, so I think this is no more of an issue than it is
for any other possible system.

> The second is more subtle -- system failure during commit will leave
> the file contents half written. Mercurial has recovery techniques to
> detect this, but they involve truncating existing files, a piece of
> the Linux kernel which has constantly suffered from race conditions
> and other adventures.

Constantly is rather overstating it. There have been a few interesting
truncate races found and sorting out one of them was a process that
took several months a few years back. But none are the sort that
affect the average application and none are the sort that would
manifest with the very straightforward usage of truncate in Mercurial.

--
Mathematics is the supreme nostalgia of our time.
_______________________________________________
Mercurial mailing list
Mercurial at selenic.com
http://selenic.com/mailman/listinfo/mercurial

-------------------------------------------------------

-- 
Jesse Keating
Release Engineer: Fedora
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/fedora-maintainers/attachments/20061115/c40a2e21/attachment.sig>


More information about the Fedora-maintainers mailing list