Subject: Re: Versioning filesystem in NetBSD
To: None <current-users@NetBSD.org>
From: None <jeremias@optushome.com.au>
List: current-users
Date: 08/28/2006 11:25:05
Daniel Carosone writes: 

> On Sat, Aug 26, 2006 at 11:57:27AM +1000, Thilo Jeremias wrote:
>> Does anyone know of a versioning filessytem that is supported in netbsd? 
>> 
>> I had a quick look at versionFS which looked very much like the old VMS 
>> thing, but I did not find any sources for it.
>> [...]
>> Is there anything we have (or could use) ?
> 
> We have snapshots of the (entire) filesystem, which could approximate
> this well enough depending on your needs. 
> 
> We also have LFS, which doesn't overwrite old file data until those
> segments are cleaned, and thus could potentially offer an interface
> into old file versions and content that remain.  It doesn't presently
> offer such an interface, though the same underlying property is used
> for the LFS version of snapshots. 
> 
> One problem with any variant of such a facility is defining and
> recognising when a file version changes.  At each open/close? At each
> fsync? At each write?  What happens when versions 'overlap' because
> multiple processes have the file open concurrently? etc.

When I used VMS, the copy on write policy seemed to be exactly what I liked 
(and missed since then). 


CVS subversion etc, are all depending on the user to save the version. 

I know that there are filesystems available (freebsd, linux, others?) that 
do offer that.
I'm not sure about lfs, but from what I can tell it lacks some stability.
My question is more is there something that can be used on netbsd?
(or ported for that matter) 


Assuming lfs is stable, what is lfs doing on a read&update ?
wouldn't it just re-use the allocated blocks ?
 -- if not I wonder what performance hit that is.. 

Does a versioning filesystem make sense to any one? 

If so, I would be interested in helping there 


cheers thilo 

 

 

> 
> There's no clear or right answer for all circumstances here; snapshots
> are one answer for one set of circumstances, but others are possible.
> Application-level answers are common too: version control systems like
> CVS/subversion/monotone/mercurial/etc/etc, any number of file
> replication tools, and even 'editor backup files'. 
> 
> --
> Dan. 
>