[darcs-devel] Pristine cache on a single file

Eric Y. Kow eric.kow at gmail.com
Tue Jul 17 12:56:46 PDT 2007


> About the issue in the subject, I have a couple of considerations to
> share with you:

I'm very happy to see somebody giving some serious thought to the
matter.

> 2) HalFS and other "embedded filesystems" allows modify and delete
> very freely, but the creation of new files has a great issue: usually
> those filesystems need a "fixed size" storage. Even when a filesystem
> can grow, it usually can't "shrink" very easily.

I haven't had a look at HalFS.  Do you know this for a fact, or do you
think it might be worth consulting the folks at Galois about the matter
of shrinkability?

> 4) A very solid backend (sqlite is used by Apple in Mac OS X for a lot
> of storage necessities, even if not for "raw filesystem storage").

Well, I suppose this is one thing I would find very attractive, a sort
of appeal to conservatism; since we are holding people's crown jewels,
we should be extra careful.
> 
> The major hassle of this solution is that requires sqlite + HDBC (or
> something like that) as dependencies, but I think that this is
> something we can work on (sqlite can be "embedded" as a large .c file
> in any application).

Seems like we would run into something like this in any case.

Also...

I'll add for the record that I have not learned how filesystems are
implemented, so should you someday submit a patch for this feature, I
would be inclined to pass up the code review to somebody more
experienced.

Out of curiosity, how does one encode something filesystem-like in
something database-like?  Do you do something stupid and simple like
associating paths with whatevers

  "foo/bar/baz"      => whatever1
  "foo/bar/baz/quux" => whatever2

And write a bunch of wrapper code around it (if you delete 'foo/bar/baz'
go hunt after everything that starts with 'foo/bar/baz/' and delete it
too)? Or do you do something far more clever?  Do feel free to answer
the above question with a simple 'go learn about filesystems and the
answer will be obvious'.  I certainly do not expect you to sit down and
educate me.

Cheers,

-- 
Eric Kow                     http://www.loria.fr/~kow
PGP Key ID: 08AC04F9         Merci de corriger mon français.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 186 bytes
Desc: not available
Url : http://lists.osuosl.org/pipermail/darcs-devel/attachments/20070717/4611b625/attachment.pgp


More information about the darcs-devel mailing list