I/O errors observed in the application side after a failure to unlink a stale 'linkto' file.

Solution Verified - Updated -

Issue

Applications running in the top of gluster volumes mounted using the native GlusterFUSE client might get I/O errors when a stale linkto file is unlinked.

The errors observed in the client mount log look like these ones:

[2018-09-28 13:20:10.572781] I [MSGID: 109045] [dht-common.c:3343:dht_lookup_cbk] 2-volume-dht: linkfile not having link subvol for /dir1/file1
[2018-09-28 13:20:10.589411] I [MSGID: 109069] [dht-common.c:2103:dht_lookup_unlink_of_false_linkto_cbk] 2-volume-dht: lookup_unlink returned with op_ret -> -1 and op-errno -> 2 for /dir1/file1
[2018-09-28 13:20:10.589488] W [fuse-bridge.c:540:fuse_entry_cbk] 0-glusterfs-fuse: 69476748: LOOKUP() /dir1/file1 => -1 (Input/output error)

The lookup_unlink routine returns error 2, which is ENOENT.

This issue is more frequently observed if the parameter performance.parallel-readdiris enabled, although this problem can be hit also without it.

Environment

Red Hat Gluster Storage 3.x versions below 3.4.2

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content