Re: Review of quota-06

Jim Whitehead wrote:
> Julian,
> 
> 
>>01-C03 quota vs disk space
>><http://lists.w3.org/Archives/Public/w3c-dist-auth/2003JanMar/
>>0439.html>
>><http://lists.w3.org/Archives/Public/w3c-dist-auth/2003JanMar/
>>0460.html>
>><http://lists.w3.org/Archives/Public/w3c-dist-auth/2003OctDec/
>>0184.html>
>><http://lists.w3.org/Archives/Public/w3c-dist-auth/2003OctDec/
>>0193.html>
>>
>>The spec says that servers may expose physical disk limits as quota.
> 
> 
> In my reading of the -06 specification, I'm not able to see any mention of
> this.

I just checked, and the last mention of it seems to be in 
<http://greenbytes.de/tech/webdav/draft-ietf-webdav-quota-06.html#rfc.section.3.p.5>:

``Note that there may be a number of distinct but overlapping limits, 
which may even include physical media limits. When reporting 
DAV:quota-available-bytes, the server is at liberty to choose any of 
those limits but SHOULD do so in a repeatable way. The rule may be 
configured per repository, or may be "choose the smallest number".

If a resource has no quota enforced or unlimited storage ("infinite 
limits"), the server MAY choose not to return this property (404 Not 
Found response in Multi-Status), although this specification RECOMMENDS 
that servers return some appropriate value (e.g. the amount of free disc 
space). A client cannot entirely assume that there is no quota enforced 
on a resource that does not have this property, but might as well act as 
if there is no quota.''

> The only concern I see is that the definition of quota-available-bytes is
> defined in terms of "disk space" available and not "storage space"
> available. Then again, even storage media that aren't disks are typically
> referred to as drives these days (e.g., "thumb drive" for RAM-based storage
> sticks), so maybe it's not an issue.

I think it would be a useful feature if a client could detect whether a 
write failed because of disk full rather than quota exceeded (Unix and 
NFS4 status codes allow the same distinction, see RFC3530, 
"NFS4ERR_DQUOT" and "NFS4ERR_NOSPC").


>>04-C07, section 3, DAV:quota-available-bytes
>>
>><http://greenbytes.de/tech/webdav/draft-ietf-webdav-quota-05.h
>>tml#rfc.section.3>
>>
>>   "Support for this property is REQUIRED on collections, and 
>>OPTIONAL on
>>    other resources.  A server SHOULD implement this property for each
>>    resource that has the DAV:quota-used-bytes property."
>>
>>What's the motivation for the distinction? (same in section 4)
> 
> 
> Seems to me the motivation is to ensure that collections know how much space
> is available in their namspace, thereby providing clients an aggregated
> understanding of available storage space associated with a particular
> namespace.
> 
> It's not clear to me whether you object to this, or are seeking additional
> clarification text.

I'd like to understand why it's only optional on non-collections.

>>04-C11, section 7
>>
>>      "The total size of a collection, DAV:quota-used-bytes, is not
>>       necessarily a sum of the DAV:getcontentlength properties for
>>       resources stored in the collection."
>>
>>Actually, it won't be in most cases I'm aware of. Please 
>>either rephrase it (so this doesn't sound like an edge case) 
>>or drop the point.
>>
>>Update -06: It's now saying
>>
>>"The total size of a collection, DAV:quota-used-bytes, may 
>>not be a sum of the DAV:getcontentlength properties for 
>>resources stored in the collection."
>>
>>...which isn't that different...
> 
> 
> Let me suggest:
> 
> "Since there are many factors that affect the storage used by a set of
> resources, including automatic compression, the size of associated metadata,
> and server-inserted content (such as that created by PHP code) in the
> on-the-wire representation of resources, clients are advised to not depend
> on the value of DAV:quota-used-bytes being the sum of the
> DAV:getcontentlength properties for resources contained by a collection."

:-) That's only *one* issue. The main problem here is that in many qutoa 
systems (such as the Unix one), the DAV:quota-used-bytes property on a 
collection will work completely differently and will have nothing to do 
whatsoever with the *members* of that collection. Check for instance:

<http://greenbytes.de/tech/webdav/draft-ietf-webdav-quota-06.html#rfc.section.4.p.3>:

``Note that there may be a number of distinct but overlapping sets of 
resources for which a DAV:quota-used-bytes is maintained (e.g. "all 
files with a given owner", "all files with a given group owner", etc.). 
The server is at liberty to choose any of those sets but SHOULD do so in 
a repeatable way. The rule may be configured per repository.''

So for a server that implements user-based quota (which IMHO is the most 
common way to implement it), DAV:quota-used-bytes usually will be the 
*same* for a collection and it's members.

 > ...

Best regards and thank for the review,

Julian

-- 
<green/>bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760

Received on Friday, 18 March 2005 06:12:49 UTC