[Gluster-devel] Quota problems with dispersed volumes
Raghavendra Gowdappa
rgowdapp at redhat.com
Tue Oct 28 03:30:49 UTC 2014
----- Original Message -----
> From: "Xavier Hernandez" <xhernandez at datalab.es>
> To: "Gluster Devel" <gluster-devel at gluster.org>, "Krishnan Parthasarathi" <kparthas at redhat.com>, "Raghavendra
> Gowdappa" <rgowdapp at redhat.com>
> Cc: "Dan Lambright" <dlambrig at redhat.com>
> Sent: Monday, October 27, 2014 11:07:40 PM
> Subject: Quota problems with dispersed volumes
>
> Hi,
>
> testing quota on a dispersed volume I've found a problem on how the
> total used space is calculated.
>
> # gluster volume create test disperse server{0..2}:/bricks/disperse
> # gluster volume start test
> # gluster volume quota test enable
> # gluster volume quota test limit-usage / 1GB
> # gluster volume quota test list
> Path H-L S-L Used Available S-L exceeded? H-L exceeded?
> -----------------------------------------------------------------
> / 1.0GB 80% 0Bytes 1.0GB No No
> # mount -t glusterfs server0:/test /gluster/test
> # dd if=/dev/zero of=/gluster/test/file bs=1024k count=512
> # ls -lh /gluster/test
> total 512M
> -rw-r--r-- 1 root root 512M Oct 27 18:29 file
> # gluster volume quota test list
> Path H-L S-L Used Available S-L exceeded? H-L exceeded?
> ----------------------------------------------------------------
> / 1.0GB 80% 256.0MB 768.0MB No No
>
> As you can see quota seems to only count the space used by the file in
> one of the bricks (each file uses 256MB on each brick).
>
> How would be the best way to solve this problem ? I don't know quota
> internals so I'm a bit lost about where to adjust real file sizes...
We use extended attribute with key "trusted.glusterfs.quota.size" to get the size of a directory/file. The value for this key is probed in lookup and getxattr calls. You can implement logic to handle this key appropriately in disperse xlator to give a proper size to higher layers. In your existing implementation you might have been probably passing xattrs from one of the bricks and hence seeing size from only one brick.
>
> Thanks,
>
> Xavi
>
More information about the Gluster-devel
mailing list