Hi,
Sorry for mailing again but as mentioned in my previous mail,
I have added an arbiter node to my replica 2 volume and it seem
to have gone fine except for the fact that there is one single
file which needs healing and does not get healed as you can see
here from the output of a "heal info":
Brick node1.domain.tld:/data/myvolume/brick
Status: Connected
Number of entries: 0
Brick node2.domain.tld:/data/myvolume/brick
<gfid:29e0d13e-1217-41cc-9bda-1fbbf781c397>
Status: Connected
Number of entries: 1
Brick arbiternode.domain.tld:/srv/glusterfs/myvolume/brick
Status: Connected
Number of entries: 0
On my node2 the respective .glusterfs/indices/xattrop
directory contains two files as you can see below:
ls -lai /data/myvolume/brick/.glusterfs/indices/xattrop
total 76180
10 drw------- 2 root root 4 Jul 29 12:15 .
9 drw------- 5 root root 5 Apr 28 22:15 ..
2798404 ---------- 2 root root 0 Apr 28 22:51
29e0d13e-1217-41cc-9bda-1fbbf781c397
2798404 ---------- 2 root root 0 Apr 28 22:51
xattrop-6fa49ad5-71dd-4ec2-9246-7b302ab92d38
I tried to find the real file on my brick where this xattrop
file points to using its inode number (command: find
/data/myvolume/brick/data -inum 8394642) but it does not find
any associated file.
So my question here is, is it possible that this is a stale
file which just forgot to get deleted from the indices/xattrop
file by gluster for some unknown reason? If yes is it safe for
me to delete these two files? or what would be the correct
process in that case?
The 'xattrop-6fa...' is the base entry. gfids of files that need
heal are hard linked to this entry, so nothing needs to be done for
it. But you need to find out why '29e0d13...' is not healing. Launch
the heal and observe the glustershd logs for errors. I suppose the
inode number for
.glusterfs/29/e0/29e0d13e-1217-41cc-9bda-1fbbf781c397 is what is
8394642. Is .glusterfs/29/e0/29e0d13e-1217-41cc-9bda-1fbbf781c397 a
regular file or symlink? Does it exist in the other 2 bricks? What
is the link count (as seen from stat <file>)?