Hi,
looking at the code, and running with debug mds = 10 it looks like I have an
inode with negative link count.
-2> 2017-09-14 13:28:39.249399 7f3919616700 10 mds.0.cache.strays
eval_stray [dentry #100/stray7/100007aa2f6 [2,head] auth (dversion lock) pv=0
v=23058565 inode=0x7f394b7e0730 0x7f3945a96270]
-1> 2017-09-14 13:28:39.249445 7f3919616700 10 mds.0.cache.strays inode is
[inode 100007aa2f6 [2,head] ~mds0/stray7/100007aa2f6 auth v23057120 s=4476488
nl=-1 n(v0 b4476488 1=1+0) (iversion lock) 0x7f394b7e
I guess "nl" stands for number of links.
The code in StrayManager.cc checks for:
if (in->inode.nlink == 0) { ... }
else {
eval_remote_stray(dn, NULL);
}
void StrayManager::eval_remote_stray(CDentry *stray_dn, CDentry *remote_dn)
{
...
assert(stray_in->inode.nlink >= 1);
...
}
So if my link count is indeed -1 ceph will die here.
The question is: how can I get rid of this inode?
Micha Krause
_______________________________________________
ceph-users mailing list
[email protected]
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com