Subject: Re: Versioning filesystem in NetBSD
To: <>
From: Thilo Jeremias <jeremias@optushome.com.au>
List: current-users
Date: 08/28/2006 23:25:38
Johnny Billquist wrote:
> Alan Barrett wrote:
>> On Mon, 28 Aug 2006, jeremias@optushome.com.au wrote:
>>
>>>>> Does anyone know of a versioning filessytem that is supported in 
>>>>> netbsd? 
>>
>> You didn't explain what you meant by "a versioning filesystem", but
>> after a few messages in the thread, I think I have a rough idea.
>
> Well, he did say that he looked for something VMS-like...
>
>>> 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. 
>>
>> You could probably build something using portalfs as a front end, and
>> webdav or subversion as a back end; you could even make semicolons
>> behave in a VMSish way.  Also, if you find anything using the Linux
>> "FUSE" user-space file system framework, it might make sense to adapt it
>> to portalfs.
>
> Don't know enough about portalfs and other stuff in Unix to tell if 
> any could be adopted to something similar to VMS.
> VMS isn't exactly copy on write either. There is a lot more (and less) 
> to it.
Admited, the last time I used that was '89 so I don't really remember.
(But I'm curious, and as far as I remember an env-var specified how many 
versions to keep, and in the editor, a save created a new version.
-- easy to undo bad changes even after several modifications.

( you know the way I try scripting really screams for being able to go 7 
version back eventually, and always do a comit is simply not feasible.
 -- let alone no one would want to review each and every version.... )

And having this feature for other tools (independant of the make would 
be good.

oh btw vi & vim still don't do version in files....

Q: portalfs & webdav ( aside from the comment above ) that sounds like a 
huge performance overhead )

I don't know how portalfs exactly works, but in my immagination, one 
would (as a first cut) intercept open/write calls
and patch readdir to not show the (;\d+) suffix.
explicit opens would probably open the real file ....

Doesn't really sound too difficult...

So I assume there is no filesystem that automatically keeps a number of 
past file-versions available for the user in netbsd ?
Any hints how much FUSE differs from portalFS?
(links ??)

To the stability note on lfs, I had some peer-2-peer things running, 
that kept lots of multi-megabyte files open for weeks,
every now and then the cleaner daemon killed itself of threw messages 
into the log and eventually ( twice) killed the whole system.
I just stopped using that 2 years ago, It might have changed since then 
(I'm sure it has... :-) )

thilo




>
>     Johnny