Bug 1044344

Summary: Assertion failed:uuid null while running getfattr on a file in a directory which has quota limit set
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: surabhi <sbhaloth>
Component: quotaAssignee: Vijaikumar Mallikarjuna <vmallika>
Status: CLOSED ERRATA QA Contact: Anil Shah <ashah>
Severity: high Docs Contact:
Priority: high    
Version: 2.1CC: annair, nsathyan, rhs-bugs, smohan, storage-qa-internal, vagarwal, vbellur, vmallika
Target Milestone: ---   
Target Release: RHGS 3.1.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: gluster-3.7.0-2.el6rhs Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-07-29 04:33:09 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1178130, 1232572, 1233117    
Bug Blocks: 1202842, 1223636    

Description surabhi 2013-12-18 07:05:53 UTC
Description of problem:
Assertion failure is seen from marker.quota after setting quota on a directory and creating file in that directory and running fgetattr from the brick on that file.Also seen ia_gfid is null on a lookup when file create command was issued.

Version-Release number of selected component (if applicable):
glusterfs-fuse-3.4.0.49rhs-1.el6rhs.x86_64
glusterfs-server-3.4.0.49rhs-1.el6rhs.x86_64
samba-glusterfs-3.6.9-167.3.el6rhs.x86_64
glusterfs-3.4.0.49rhs-1.el6rhs.x86_64
glusterfs-debuginfo-3.4.0.49rhs-1.el6rhs.x86_64
glusterfs-geo-replication-3.4.0.49rhs-1.el6rhs.x86_64
glusterfs-api-devel-3.4.0.49rhs-1.el6rhs.x86_64
glusterfs-rdma-3.4.0.49rhs-1.el6rhs.x86_64
glusterfs-libs-3.4.0.49rhs-1.el6rhs.x86_64
glusterfs-api-3.4.0.49rhs-1.el6rhs.x86_64
glusterfs-devel-3.4.0.49rhs-1.el6rhs.x86_64


How reproducible:
Tried once.

Steps to Reproduce:
1. smb mount a volume, create a directory on mount point.
2. set quota limit to 2 GB for the directory.
3. Run I/O from mount point.Create files.
4. Run fgetattr from brick on the file newly created.

Actual results:
Assertion failure from marker.quota is observed in log messages. 

Expected results:
No assertion failure should be seen.

Additional info:
[2013-12-17 10:41:52.363971] E [marker-quota.c:1172:mq_get_xattr] (-->/usr/lib64/glusterfs/3.4.0.49rhs/xlator/features/locks.so(pl_inodelk+0x1d) [0x7fedf92e9acd] (-->/usr/lib64/glusterfs/3.4.0.49rhs/xlator/features/locks.so(pl_common_inodelk+0x282) [0x7fedf92e93b2] (-->/usr/lib64/glusterfs/3.4.0.49rhs/xlator/performance/io-threads.so(
iot_inodelk_cbk+0xb9) [0x7fedf90c5b59]))) 0-: Assertion failed: !"uuid null"

[2013-12-17 10:41:52.363971] E [marker-quota.c:1172:mq_get_xattr] (-->/usr/lib64/glusterfs/3.4.0.49rhs/xlator/features/locks.so(pl_inodelk+0x1d) [0x7fedf92e9acd] (-->/usr/lib64/glusterfs/3.4.0.49rhs/xlator/features/locks.so(pl_common_inodelk+0x282) [0x7fedf92e93b2] (-->/usr/lib64/glusterfs/3.4.0.49rhs/xlator/performance/io-threads.so(
iot_inodelk_cbk+0xb9) [0x7fedf90c5b59]))) 0-: Assertion failed: !"uuid null"
[2013-12-17 10:41:52.364058] E [posix.c:199:posix_lookup] 0-new-vol-posix: buf->ia_gfid is null for /rhs/brick1/new-vol/b1/rhsdata02//abc
[2013-12-17 10:41:52.364197] E [marker-quota.c:1819:mq_fetch_child_size_and_contri] (-->/usr/lib64/glusterfs/3.4.0.49rhs/xlator/features/changelog.so(changelog_setxattr
_cbk+0xe3) [0x7fedf9703953] (-->/usr/lib64/glusterfs/3.4.0.49rhs/xlator/features/access-control.so(posix_acl_setxattr_cbk+0xb9) [0x7fedf94f41a9] (-->/usr/lib64/glusterf
s/3.4.0.49rhs/xlator/performance/io-threads.so(iot_setxattr_cbk+0xb9) [0x7fedf90c6519]))) 0-: Assertion failed: !"uuid null"
[2013-12-17 10:41:52.364424] E [posix.c:199:posix_lookup] 0-new-vol-posix: buf->ia_gfid is null for /rhs/brick1/new-vol/b1/rhsdata02//abc
[2013-12-17 10:41:52.364453] W [marker-quota.c:1641:mq_update_inode_contribution] 0-new-vol-marker: failed to get size and contribution of path (/rhsdata02//abc)(No dat
a available)
[2013-12-17 10:41:52.364520] W [marker-quota.c:1405:mq_release_parent_lock] (-->/usr/lib64/glusterfs/3.4.0.49rhs/xlator/performance/io-threads.so(iot_lookup_cbk+0xd9) [
0x7fedf90c8699] (-->/usr/lib64/libglusterfs.so.0(default_lookup_cbk+0xd9) [0x7fedfe523219] (-->/usr/lib64/glusterfs/3.4.0.49rhs/xlator/features/marker.so(mq_update_inod
e_contribution+0x447) [0x7fedf8caaa17]))) 0-new-vol-marker: An operation during quota updation of path (/rhsdata02//abc) failed (No data available)
[2013-12-17 10:41:52.372146] E [posix.c:199:posix_lookup] 0-new-vol-posix: buf->ia_gfid is null for /rhs/brick1/new-vol/b1/rhsdata02/abc
[2013-12-17 10:41:52.372196] E [marker-quota.c:487:mq_get_child_contribution] 0-new-vol-marker: No data available
[2013-12-17 10:41:52.373200] E [posix.c:199:posix_lookup] 0-new-vol-posix: buf->ia_gfid is null for /rhs/brick1/new-vol/b1/rhsdata02/abc
[2013-12-17 10:41:52.373267] E [marker-quota.c:487:mq_get_child_contribution] 0-new-vol-marker: No data available
[2013-12-17 10:41:52.377658] E [posix.c:199:posix_lookup] 0-new-vol-posix: buf->ia_gfid is null for /rhs/brick1/new-vol/b1/rhsdata02/abc
[2013-12-17 10:41:52.377694] E [marker-quota.c:487:mq_get_child_contribution] 0-new-vol-marker: No data available
[2013-12-17 10:41:52.386626] E [posix.c:199:posix_lookup] 0-new-vol-posix: buf->ia_gfid is null for /rhs/brick1/new-vol/b1/rhsdata02/abc
[2013-12-17 10:41:52.386681] E [marker-quota.c:487:mq_get_child_contribution] 0-new-vol-marker: No data available
[2013-12-17 10:41:52.395575] E [posix.c:199:posix_lookup] 0-new-vol-posix: buf->ia_gfid is null for /rhs/brick1/new-vol/b1/rhsdata02/abc
[2013-12-17 10:41:52.395642] E [marker-quota.c:487:mq_get_child_contribution] 0-new-vol-marker: No data available
[2013-12-17 10:41:52.400453] E [posix.c:199:posix_lookup] 0-new-vol-posix: buf->ia_gfid is null for /rhs/brick1/new-vol/b1/rhsdata02/abc
[2013-12-17 10:41:52.400493] E [marker-quota.c:487:mq_get_child_contribution] 0-new-vol-marker: No data available
[2013-12-17 10:41:52.407533] E [posix.c:199:posix_lookup] 0-new-vol-posix: buf->ia_gfid is null for /rhs/brick1/new-vol/b1/rhsdata02/abc
[2013-12-17 10:41:52.407566] E [marker-quota.c:487:mq_get_child_contribution] 0-new-vol-marker: No data available
[2013-12-17 10:41:52.416136] E [posix.c:199:posix_lookup] 0-new-vol-posix: buf->ia_gfid is null for /rhs/brick1/new-vol/b1/rhsdata02/abc

Comment 2 Vijaikumar Mallikarjuna 2015-03-27 11:07:29 UTC
Upstream patch #9478 and #9954 fixes the problem

Comment 4 Anil Shah 2015-07-04 09:56:18 UTC
Bug verified on build glusterfs-3.7.1-7.el6rhs.x86_64.

Comment 6 errata-xmlrpc 2015-07-29 04:33:09 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHSA-2015-1495.html