[AFS3-std] Quota for max. number of files per volumes

Jeffrey Hutzelman jhutz@cmu.edu
Tue, 14 Jul 2009 11:55:33 -0400


--On Tuesday, July 14, 2009 08:40:55 AM -0700 Alf Wachsmann 
<alfw@slac.stanford.edu> wrote:

> I am curious whether the existing MinQuota field is used at all.

Yes; we used it for many years to track reservations; that is, to insure 
that at least a specified amount of disk space would always be available 
for a given volume.  As far as I can tell, that was its original intended 
purpose.

> Why not reuse a field that is not used?

Because doing so erodes interoperability.

> Re-using this field has the added advantage that the new on-disk format
> is compatible with the old one. I.e. you can mix new and old servers.
> The same applies to volume dumps.

Protocol and implementation are separate; the fields seen on the wire are 
_not_ necessarily the same as what's in any particular implementation's 
on-disk structure.  This is very important -- too often people think that 
because they can get away with reusing a field in memory or on disk that is 
not currently used, it is also OK to reuse corresponding fields in 
protocols.

Defining new RPC interfaces and volume dump tags to carry file quota 
information does not mean that the OpenAFS fileserver cannot reuse an 
unused field in its on-disk structure to store the new data.  Of course, 
such reuse does _not_ mean that you can mix old and new servers -- 
assigning new meaning to an "unused" field in ODS means you better be sure 
that whatever is already in the field is consistent with the new meaning, 
or you're going to have surprises.

-- Jeff