[AFS3-std] Re: [OpenAFS-devel] convergence of RxOSD, Extended
Call Backs, Byte Range Locking, etc.
Matt W. Benjamin
matt@linuxbox.com
Thu, 30 Jul 2009 09:33:29 -0400 (EDT)
Hi Jeff,
----- "Jeffrey Hutzelman" <jhutz@cmu.edu> wrote:
> --On Thursday, July 23, 2009 06:43:35 PM -0400 "Matt W. Benjamin"
> <matt@linuxbox.com> wrote:
>
> I see no problem with you being able to negotiate different semantics
> for
> yourself. However, unless you are somehow privileged, you must not be
> able
> to negotiate different semantics for _me_. We can argue at some point
>
> about exactly what that means, but at a minimum, I think it means
> things
> like...
>
> - You must not be able to force mandatory locking on me, unless you
> are
> privileged in some way (for example, by being allowed to set some
> access
> right or other property of the file).
Similar policy problem, yes.
>
> - You must not be able to decide that, when you write a file, a
> callback
> to me is broken asynchronously, such that another RPC made on that
> file
> by me or by a client with whom I am cooperating begins before I
> have
> been notified that you changed the file.
I get that. See action items.
>
> Further, there must be some common set of semantics where are
> guaranteed to
> be implemented by every fileserver and every client.
Yes. As a number of folks have mentioned, it would be valuable to formalize those semantics as applied to files (the "file semantics of AFS3") better than we have, up to now. I think that's a much smaller problem than "formalize the entire AFS protocol."
>
> Further still, there are some things which are basic properties of the
>
> protocol and are not open to negotiation. I believe the one-to-one
> relation between (FID,DV) and bit strings is one of these, as is the
> one-to-one relation between FIDs and files.
I should mention that Tom a couple of times has mentioned the idea of generalizing FID. In one conversation (summarized with permission), also, Tom and I worked on a concept we called 'range DV', aimed at allowing disjoint ranges of a logically contiguous bytestream to be coordinated by different fileservers. Taken together, those concepts might add up to a FID with a vector of (Range,DV)s, or something similar.
>
> -- Jeff
--
Matt Benjamin
The Linux Box
206 South Fifth Ave. Suite 150
Ann Arbor, MI 48104
http://linuxbox.com
tel. 734-761-4689
fax. 734-769-8938
cel. 734-216-5309