Marker can fail or can account incorrect numbers when it doesn't find a ancestry for a inode. Solution: Current build_ancestry is done only on demand in the write/create FOPs in quota enforcer. It is good to do this in the quota_lookup as well.
REVIEW: http://review.gluster.org/9478 (Quota: Build ancestry in the lookup) posted (#1) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9478 (Quota: Build ancestry in the lookup) posted (#2) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9478 (Quota: Build ancestry in the lookup) posted (#3) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9478 (Quota: Build ancestry in the lookup) posted (#4) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9478 (Quota: Build ancestry in the lookup) posted (#5) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9478 (Quota: Build ancestry in the lookup) posted (#6) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9478 (Quota: Build ancestry in the lookup and stat) posted (#7) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9478 (Quota: Build ancestry in the lookup) posted (#8) for review on master by Vijaikumar Mallikarjuna (vmallika)
COMMIT: http://review.gluster.org/9478 committed in master by Vijay Bellur (vbellur) ------ commit ee7bde14cd8afa7752dbaecd72a4afe16fb7afa9 Author: vmallika <vmallika> Date: Thu Jan 22 17:40:44 2015 +0530 Quota: Build ancestry in the lookup Marker can fail or can account incorrect numbers when it doesn't find a ancestry for a inode. Solution: Current build_ancestry is done only on demand in the write/create FOPs in quota enforcer. It is good to do this in the quota_lookup as well. Change-Id: I8aaf5b3e05a3ca51e7ab1eaa1b636a90f659a872 BUG: 1184885 Signed-off-by: vmallika <vmallika> Reviewed-on: http://review.gluster.org/9478 Tested-by: Gluster Build System <jenkins.com> Reviewed-by: Raghavendra Bhat <raghavendra> Reviewed-by: Vijay Bellur <vbellur>
REVIEW: http://review.gluster.org/9954 (quota: enhancement of build ancestry) posted (#1) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9954 (quota: enhancement of build ancestry) posted (#2) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9954 (quota: enhancement of build ancestry) posted (#3) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9954 (quota: enhancement of build ancestry) posted (#4) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9954 (quota: enhancement of build ancestry) posted (#5) for review on master by Vijaikumar Mallikarjuna (vmallika)
REVIEW: http://review.gluster.org/9954 (quota: enhancement of build ancestry) posted (#6) for review on master by Vijay Bellur (vbellur)
COMMIT: http://review.gluster.org/9954 committed in master by Vijay Bellur (vbellur) ------ commit 3d4203fe3acad47f0a29ebe094b3e427b13f363f Author: vmallika <vmallika> Date: Fri Mar 20 14:25:58 2015 +0530 quota: enhancement of build ancestry There can a small race window where marker accounting will be missed. Consider below example where NFS mount is used and bricks are restarted and a write operation is performed Currently: T1: lookup from protocol server, quota will initiate ancestry build T2: opendir FOP from ancestry build T3: write FOP from client T4: write_cbk T5: marker initiate accounting. There will be a problem here and txn aborts, because build_ancestry is not complete and parent not found for an inode T6: opendir_cbk T7: initiate readdirp, posix builds ancestry in readdirp With this patch, now calling readdirp on anonoymous fd during build ancestry: T1: lookup from protocol server, quota will initiate ancestry build T2: readirp FOP from ancestry build, posix builds ancestry in readdirp T3: write FOP from client T4: write_cbk T5: marker initiate accounting. No problem here as build ancestry was performed at T1 Change-Id: I2c262c86f34f6c574940a6b8772d94f2bade9465 BUG: 1184885 Signed-off-by: vmallika <vmallika> Reviewed-on: http://review.gluster.org/9954 Reviewed-by: Vijay Bellur <vbellur> Tested-by: Vijay Bellur <vbellur>
This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.7.0, please open a new bug report. glusterfs-3.7.0 has been announced on the Gluster mailinglists [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution. [1] http://thread.gmane.org/gmane.comp.file-systems.gluster.devel/10939 [2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user