Project

General

Profile

Actions

Bug #23234

closed

mds: damage detected while opening remote dentry

Added by Yong Wang about 6 years ago. Updated about 6 years ago.

Status:
Won't Fix
Priority:
Normal
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
Community (user)
Tags:
multimds
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(FS):
Labels (FS):
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

ceph 10.2.10
centos 7.3
kernel client
3nodes 3mds active-standy-standy (cold model)

mds deteced meta damaged when open remote dentry

from mds log I found :

src/mds/MDCache.cc
MDCache::_open_remote_dentry_finish output (r<0)

but no more information.

I have added below information for expect to find more info. ============
dout(0) << "open_remote_dentry_finish bad remote dentry " << *dn << dendl;
dout(0) << "open_remote_dentry_finish bad remote dentry " << *dn
<< " " <<ino
<< " " <<want_xlocked
<< " " <<r
<< dendl;

BackTrace bt(1);
ostringstream oss;
bt.print(oss);
dout_emergency(oss.str());

============

ceph tell mds.0 damage ls show below:

type:backtrace

please refer to attach file.


Files

damage_ls (110 KB) damage_ls Yong Wang, 03/06/2018 02:39 AM
damage_ls.png (110 KB) damage_ls.png Yong Wang, 03/06/2018 02:52 AM
Actions #1

Updated by Yong Wang about 6 years ago

We can recover ceph status on the below way:

1. mv thoses backtrace failed file name to another name
2. change thoses files to default name.
3. damange rm
4. ls -R will be ok

Actions #2

Updated by Yong Wang about 6 years ago

amend the attach file, due to lost the character .png

Actions #3

Updated by Patrick Donnelly about 6 years ago

  • Assignee set to Patrick Donnelly
Actions #4

Updated by Zheng Yan about 6 years ago

the issue is caused by corrupted _parent xattr. have you ever done done mds journal reset or have you ever found scrub errors?

Actions #5

Updated by Patrick Donnelly about 6 years ago

  • Subject changed from mds deteced meta damaged when open remote dentry to mds: damage detected while opening remote dentry
  • Status changed from New to Need More Info
  • Assignee changed from Patrick Donnelly to Zheng Yan
  • Source changed from other to Community (user)
Actions #6

Updated by Yong Wang about 6 years ago

not find scrub error waring.
not reset journal for a long time.

it happend just like below: ========================

/folder1/file1
mkdir /folder2
ln -s /folder1/file1 /folder2

when open (something else) folder2's file file1, it is a hard link file.
call open_remote_dentry, failed (r < 0).

I can't find anything else.

========================

Actions #7

Updated by Yong Wang about 6 years ago

do you think the src file _parent xattr corruptted?

due to if hard link file _parent xattr corrupt, shouldn't step into open_remote_dentry.

Actions #8

Updated by Patrick Donnelly about 6 years ago

  • Category deleted (90)
  • Status changed from Need More Info to Won't Fix
  • Target version deleted (v10.2.11)
  • Tags set to multimds
  • Release deleted (jewel)
  • ceph-qa-suite deleted (fs)
  • Component(FS) deleted (MDS)

Sorry, we won't look at bugs for multiple actives pre-Luminous.

Actions

Also available in: Atom PDF