very simple datastore reimplementation

david at lang.hm david at lang.hm
Tue May 13 21:02:57 EDT 2008


On Wed, 14 May 2008, Martin Langhoff wrote:

> On Wed, May 14, 2008 at 12:45 PM,  <david at lang.hm> wrote:
>>  if we put everything into a library, then all tools that access the
>> datastore need to use that library.
>
> All we need is to state a simple enough convention ("put your files in
> *this* subdirectory"), and handle metadata from the journal.

assuming that none of the tools have any reason to do anything with the 
metadata

>>  if we put that same functionality into FUSE then normal tools do not need
>> to be modified at all to access the files.
>
> If we use FUSE, we also have to get the app to put the files in a
> given subdirectory. And we also have to handle the metadata outside
> (unless we chance the app).
>
> From Olpcfs's document we do win some versioning, but with some
> experience in SCMs I seriously think all we need is versioning on app
> exit, which we can do outside. If we really want to be hanging there
> on each close() we can use inotify() and friends, but you don't want
> to see what apps do to files to _that_ granularity. Really. Ever.

with the FUSE approach you have a lot more potential. since the access to 
the filesystem is decoupled from the actual storage of the data it becomes 
a very natural place to hide details such as offline file access 
(retreiving data from a school server transparently), etc. dealing with 
versioning is just the tip of the iceberg.

David Lang



More information about the Devel mailing list