Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 26 Apr 2001 13:17:39 -0700
From:      Bakul Shah <bakul@bitblocks.com>
To:        Terry Lambert <tlambert@primenet.com>
Cc:        bright@wintelcom.net (Alfred Perlstein), mckusick@FreeBSD.ORG, fs@FreeBSD.ORG
Subject:   Re: versioned files via snapshot evilness. 
Message-ID:  <200104262017.QAA11266@tonnant.cnchost.com>
In-Reply-To: Your message of "Thu, 26 Apr 2001 17:49:33 -0000." <200104261749.KAA24236@usr05.primenet.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
> > I'm wondering if it might be possible to abuse the ffs snapshot
> > stuff to do file versioning ala VMS.

> Not really, IMO.

> Versioning ala VMS requires kernel globbing, or amazingly
> intrusive library modifications, coupled with a guarantee
> by programmers that they will only use the preferred APIs
> in their applications.

Well... you can do this by treating each file as a directory,
where each version creates a new file.  Each branch in turn
creates a subdir.  You can do `ls -R <file>' to list all
versions of a file.  A release would be a snapshot of all the
files.  Something like:

$ touch foo
$ mount -t cvs foo foo
$ date > foo
$ ls -R foo
1
$ date > foo
$ ls -R foo
1
2
$ date > foo/1
ls -R foo
1/1
2

Requires a considerable generalization of the directory
concept and a very lightweight mount capability.  IMHO dir
generalization can be a very rich source of new and
interesting design choices.  For instance, one should be able
to view *any* collection of data as a directory and be able
to manipulate this collection in a consistent manner.

Of course, this would do considerably more violence to the
kernel than just adding kernel globbing and I am sure POSIX
would have a hissy-fit but remember, the buzzword these days
is `disruptive technology':-)

I have a vague recollection that the Thoth OS (David
Cheriton's PhD thesis, UofWaterloo) had unified dir and files
but no generalized directories beyond that.

-- bakul

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-fs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200104262017.QAA11266>