[Gluster-users] Blocked inodes locking on some files
Florian Philippon
florian.philippon at gmail.com
Mon Jun 20 08:43:25 UTC 2016
Hello guys,
I would like to get some advices on a some problems we have on our 3
hosts gluster setup.
Here the setup used:
1. GlusterFS 3.8.0-1 (we did an upgrade from 3.7.11 last week)
2. Type: Disperse
3. Number of Bricks: 1 x (2 + 1) = 3
4. Transport-type: tcp
5. Options Reconfigured: transport.address-family: inet
Please note that we also have the ACL option enabled on the volume mount.
Use case:
An user submit jobs/tasks to a Spark cluster which have the glusterfs
volume mounted on each host.
13 tasks were successfully completed in ~30 min for each (convert some
logs to a json format and write the ouput to the gluster fs) but one was
blocked for more than 12 hours when we checked
was going wrong.
We found some log entries related to an inode locking in the brick log
one one host:
[2016-06-19 03:15:08.563397] E [inodelk.c:304:__inode_unlock_lock]
0-exp-locks: Matching lock not found for unlock 0-9223372036854775807,
by 10613ebc6c6a0000 on 0x6cee5c0f4730
[2016-06-19 03:15:08.563684] E [MSGID: 115053]
[server-rpc-fops.c:273:server_inodelk_cbk] 0-exp-server: 5375861:
INODELK /spark/user/20160328/_temporary/0/_temporary (015bde3a-09d
6-41a2-8e9f-7e7c5295d596) ==> (Invalid argument) [Invalid argument]
Errors in the data log:
[2016-06-19 03:13:29.198676] I [MSGID: 109036]
[dht-common.c:8824:dht_log_new_layout_for_dir_selfheal] 0-exp-dht:
Setting layout of /spark/user/20160328/_temporary/0/_temporary/at
tempt_201606190511_0004_m_000004_26 with [Subvol_name: exp-disperse-0,
Err: -1 , Start: 0 , Stop: 4294967295 , Hash: 1 ],
[2016-06-19 03:14:59.349357] I [MSGID: 109066]
[dht-rename.c:1562:dht_rename] 0-exp-dht: renaming
/spark/user/20160328/_temporary/0/_temporary/attempt_201606190511_0004_m_000001_2
3 (hash=exp-disperse-0/cache=exp-disperse-0) =>
/spark/user/20160328/_temporary/0/task_201606190511_0004_m_000001
(hash=exp-disperse-0/cache=<nul>)
And these entries are also spamming the data log when an action is done
the fs:
[2016-06-19 13:58:22.817308] I [dict.c:462:dict_get]
(-->/usr/lib64/glusterfs/3.8.0/xlator/debug/io-stats.so(+0x13628)
[0x6f0655cd1628] -->/usr/lib64/glusterfs/3.8.0/xlator/system/posix-acl.s
o(+0x9ccb) [0x6f0655ab5ccb] -->/lib64/libglusterfs.so.0(dict_get+0xec)
[0x6f066528df7c] ) 0-dict: !this || key=system.posix_acl_access [Invalid
argument]
[2016-06-19 13:58:22.817364] I [dict.c:462:dict_get]
(-->/usr/lib64/glusterfs/3.8.0/xlator/debug/io-stats.so(+0x13628)
[0x6f0655cd1628] -->/usr/lib64/glusterfs/3.8.0/xlator/system/posix-acl.s
o(+0x9d21) [0x6f0655ab5d21] -->/lib64/libglusterfs.so.0(dict_get+0xec)
[0x6f066528df7c] ) 0-dict: !this || key=system.posix_acl_default
[Invalid argument]
We did a stadump and we got confirmation that some processes were in a
blocking state.
We did a clear lock on the blocked inode and the spark job has finally
finished (with errors).
What could be the root cause of these lockings?
Thanks for your help!
Florian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gluster.org/pipermail/gluster-users/attachments/20160620/94fda21d/attachment.html>
More information about the Gluster-users
mailing list