Description of problem: dist-rep volume with replica 2 mount from nfs the test is run to create data and check the quota list, the calculation is not done properly and exceeds the quota limit. [root@RHSSA1 new_scripts]# ./quota_wrapper.py /root/git/inst/sbin/gluster volume create quota_dist_rep replica 2 10.1.11.157:/export-xfs/quota_dist_rep.1329221273 10.1.11.158:/export-xfs/quota_dist_rep.1329221273 10.1.11.157:/export-xfs/quota_dist_rep.1329221276 10.1.11.158:/export-xfs/quota_dist_rep.1329221276 Volume quota_dist_rep already exists quota_dist_rep Volume quota_dist_rep already started ###### the second tests starts. #### ####taking volume information.##### Volume Name: quota_dist_rep Type: Distributed-Replicate Volume ID: aee6a070-ddab-426f-8ef1-c3de682db453 Status: Started Number of Bricks: 2 x 2 = 4 Transport-type: tcp Bricks: Brick1: 10.1.11.157:/export-xfs/quota_dist_rep.1329216433 Brick2: 10.1.11.158:/export-xfs/quota_dist_rep.1329216433 Brick3: 10.1.11.157:/export-xfs/quota_dist_rep.1329216436 Brick4: 10.1.11.158:/export-xfs/quota_dist_rep.1329216436 Options Reconfigured: features.limit-usage: /:1MB features.quota: on ####Disabling quota ###### /root/git/inst/sbin/gluster Disabling quota has been successful ####Enabling quota ##### . /root/git/inst/sbin/gluster Enabling quota has been successful setting the quota limit for volume root to 2MB #####. /root/git/inst/sbin/gluster limit set on / path limit_set size ---------------------------------------------------------------------------------- / 2MB 0Bytes ####removing data from mount point. the dir/mnt/quota_nfs.1329216447/d0, does not exist. the dir/mnt/quota_nfs.1329216447/d1, does not exist. the dir/mnt/quota_nfs.1329216447/d2, does not exist. ######after the data_remove function#######. path limit_set size ---------------------------------------------------------------------------------- / 2MB 0Bytes creating the data on the mount_point.#### path limit_set size ---------------------------------------------------------------------------------- / 2MB 0Bytes path limit_set size ---------------------------------------------------------------------------------- / 2MB 96.0KB ####setting the limit of the volume root to 1MB.#### /root/git/inst/sbin/gluster limit set on / path limit_set size ---------------------------------------------------------------------------------- / 1MB 96.0KB [root@RHSSA1 new_scripts]# ls -lR /mnt/quota_nfs.1329216447/ /mnt/quota_nfs.1329216447/: total 24 drwxr-xr-x. 2 root root 92 Feb 14 12:06 d0 drwxr-xr-x. 2 root root 92 Feb 14 12:07 d1 drwxr-xr-x. 2 root root 92 Feb 14 12:06 d2 /mnt/quota_nfs.1329216447/d0: total 4128 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.0 -rw-r--r--. 1 root root 512000 Feb 14 12:06 f.1 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.2 -rw-r--r--. 1 root root 512000 Feb 14 12:06 f.3 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.4 -rw-r--r--. 1 root root 512000 Feb 14 12:06 f.5 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.6 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.7 /mnt/quota_nfs.1329216447/d1: total 4128 -rw-r--r--. 1 root root 512000 Feb 14 12:06 f.0 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.1 -rw-r--r--. 1 root root 512000 Feb 14 12:06 f.2 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.3 -rw-r--r--. 1 root root 512000 Feb 14 12:06 f.4 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.5 -rw-r--r--. 1 root root 512000 Feb 14 12:06 f.6 -rw-r--r--. 1 root root 512000 Feb 14 12:06 f.7 /mnt/quota_nfs.1329216447/d2: total 4128 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.0 -rw-r--r--. 1 root root 512000 Feb 14 12:06 f.1 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.2 -rw-r--r--. 1 root root 512000 Feb 14 12:06 f.3 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.4 -rw-r--r--. 1 root root 512000 Feb 14 12:06 f.5 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.6 -rw-r--r--. 1 root root 512000 Feb 14 12:07 f.7 [root@RHSSA1 new_scripts]# [root@RHSSA1 glusterfs]# /root/git/inst/sbin/gluster volume quota quota_dist_rep list path limit_set size ---------------------------------------------------------------------------------- / 1MB 12.1MB Version-Release number of selected component (if applicable): git head on commit caa5db96282186333e294d93571eb49a3ed63f18 Author: shishir gowda <shishirng> Date: Sat Feb 11 18:46:10 2012 +0530 How reproducible: always Steps to Reproduce: 1.set some quota limit, let's say 2MB 2.create three directories, 3.within these create files of around half MB. Actual results: the exceeded quota limit does not error out. the calculation done with list command also fails till "ls -lR" is not executed on the mount point. Expected results: The above failures should have happened. Additional info:
with fuse also the calculation is not happening properly, data available via fuse mount is, 10.1.11.158:/quota_dist_rep on /mnt/quota_fuse.1329222171 type fuse.glusterfs (rw,default_permissions,allow_other,max_read=131072) [root@RHSSA1 new_scripts]# ls -lR /mnt/quota_fuse.1329222171/ /mnt/quota_fuse.1329222171/: total 24 drwxr-xr-x. 2 root root 92 Feb 14 12:34 d0 drwxr-xr-x. 2 root root 92 Feb 14 12:34 d1 drwxr-xr-x. 2 root root 92 Feb 14 12:34 d2 /mnt/quota_fuse.1329222171/d0: total 4128 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.0 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.1 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.2 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.3 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.4 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.5 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.6 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.7 /mnt/quota_fuse.1329222171/d1: total 4128 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.0 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.1 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.2 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.3 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.4 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.5 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.6 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.7 /mnt/quota_fuse.1329222171/d2: total 4128 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.0 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.1 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.2 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.3 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.4 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.5 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.6 -rw-r--r--. 1 root root 511996 Feb 14 12:34 f.7 the list command still fails, [root@RHSSA1 glusterfs]# /root/git/inst/sbin/gluster volume quota quota_dist_rep list path limit_set size ---------------------------------------------------------------------------------- / 1MB 96.0KB
CHANGE: http://review.gluster.com/2802 (features/marker: Use loc.inode to obtain parent if loc.parent isn't set.) merged in master by Vijay Bellur (vijay)
It will be good to know about the ETA for this bug, as in pre-alpha release period we planned to test this feature and could not do so as this bug is happening with basic tests itself. ETA request is made so that QA team can re-plan the test time period for this feature in case we are planning to resolve the issue before beta release of 3.3.0.
CHANGE: http://review.gluster.com/2888 (features/marker: GFID file handle based backend related fixes) merged in master by Vijay Bellur (vijay)
*** Bug 798633 has been marked as a duplicate of this bug. ***