Thanks for your thoughts.  One comment:

Branko Čibej wrote on Sun, Feb 12, 2012 at 21:52:16 +0100:
> The idea is that we'd always maintain the complete index, i.e., in order
> to determine if path@15 exists, one only needs to search the index for
> (path, rev <= 15, !deleted) -- which is trivial in a properly ordered
> index. (Yes, this assumes that we record deletions in the index as well
> as insertions.)
> 
> All of this can be done with an append-only index representation. What
> you can't do with append-only is represent forward history links, but --
> we're not representing them very well right now, are we. :)

Within the append-only constraint one can implement forward links if one
has, say, a separate file per revision.  (So asking "where was foo@15
copied to" involves a linear scan of $REPOS/db/forward-links/15.)

stsp and I even started on such a design on some branch somewhere ---
but that branch has been abandoned as the motivation for it was rename
tracking, which stsp figured he could solve better without the new FS
feature.

Reply via email to