Re: Versioning file system

From: Trond Myklebust
Date: Tue Jun 19 2007 - 20:28:29 EST


On Tue, 2007-06-19 at 16:35 -0700, Bryan Henderson wrote:
> >We don't need a new special character for every
> >> new feature. We've got one, and it's flexible enough to do what you
> want,
> >> as proven by NetApp's extremely successful implementation.
>
> I don't know NetApp's implementation, but I assume it is more than just a
> choice of special character. If you merely start the directory name with
> a dot, you don't fool anyone but 'ls' and shell wildcard expansion. (And
> for some enlightened people like me, you don't even fool ls, because we
> use the --almost-all option to show the dot files by default, having been
> burned too many times by invisible files).
>
> I assume NetApp flags the directory specially so that a POSIX directory
> read doesn't get it. I've seen that done elsewhere.

No. The directory is quite visible with a standard 'ls -a'. Instead,
they simply mark it as a separate volume/filesystem: i.e. the fsid
differs when you call stat(). The whole thing ends up acting rather like
our bind mounts.
It means that you avoid all those nasty user issues where people try to
hard link to/from .snapshot directories, rename files across snapshot
boundaries, etc.

Trond

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/