[Gluster-devel] Improvements in Quota Translator

Brian Foster bfoster at redhat.com
Wed Apr 10 21:50:08 UTC 2013

On 04/10/2013 03:06 PM, Anand Avati wrote:
> On Apr 10, 2013, at 6:10 AM, Jeff Darcy <jdarcy at redhat.com> wrote:
>>> Since XFS doesn't allow hard links across directory tree quota 
>>> boundaries - we get EXDEV, it would prevent gluster from creation 
>>> ".glusterfs" directory entries. So Gluster quota does both accounting
>>> and enforcing of quota.
>> Well, that's certainly an unfortunate consequence of using links instead
>> of a log to track dirty files.  :(  One more reason to undo that damage,
>> I suppose, but that's a different thread.
> The problem here is with the gfid hard links (for providing stable file handles). Index uses hard links from an internal backing file which is also created within .glusterfs - the actual dirty files are never linked into index. While we do want to make index use a different format, it is completely unrelated (in fact not a problem at all) to the XFS quota issue - which is linking of true files into .glusterfs for providing stable file handles.

I went looking into this behavior because I don't recall running into it
before. I can reproduce EXDEV if I try link from project quota A to
project quota B but it looks like this only enforced when the target
directory has project quota inheritance enabled (to prevent writing a
file somewhere and linking it into a directory under quota, XFS enforces
that the project quota IDs must match).

I can create a file under a project quota and link it out of the project
quota subtree without an error. So you could create a file under a
project quota and link it under .glusterfs, but not vice versa and not
into another directory covered by a project quota.


> Avati
> _______________________________________________
> Gluster-devel mailing list
> Gluster-devel at nongnu.org
> https://lists.nongnu.org/mailman/listinfo/gluster-devel

More information about the Gluster-devel mailing list