----- Original Message ----- > From: "Xavier Hernandez" <xhernandez@xxxxxxxxxx> > To: "Gluster Devel" <gluster-devel@xxxxxxxxxxx>, "Krishnan Parthasarathi" <kparthas@xxxxxxxxxx>, "Raghavendra > Gowdappa" <rgowdapp@xxxxxxxxxx> > Cc: "Dan Lambright" <dlambrig@xxxxxxxxxx> > 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 > _______________________________________________ Gluster-devel mailing list Gluster-devel@xxxxxxxxxxx http://supercolony.gluster.org/mailman/listinfo/gluster-devel