Project

General

Profile

Actions

Bug #69695

open

mds: allows creating/removing dentries in damaged dirfrag

Added by Patrick Donnelly about 1 year ago. Updated 5 months ago.

Status:
Pending Backport
Priority:
Urgent
Category:
fsck/damage handling
Target version:
% Done:

0%

Source:
Support
Backport:
squid,reef
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(FS):
MDS
Labels (FS):
crash
Pull request ID:
Tags (freeform):
backport_processed
Fixed In:
v19.3.0-7380-g449b026f78
Released In:
v20.2.0~1188
Upkeep Timestamp:
2025-11-01T01:00:52+00:00

Description

2025-01-28T18:03:45.673+0000 7f968e845640 10 MDSIOContextBase::complete: 18C_MDS_openc_finish
2025-01-28T18:03:45.673+0000 7f968e845640 10 MDSContext::complete: 18C_MDS_openc_finish
2025-01-28T18:03:45.673+0000 7f968e845640 12 mds.0.cache.dir(0x10000000001) link_primary_inode [dentry #0x1/dir_x/dir_xx/file_x [2,head] auth NULL (dn xlock x=1 by request(client.9823:103 nref=4 cr=0x56391b4e3180)) (dversion lock w=1 last_client=9823) pv=1 v=0 ap=2 ino=(nil) state=1073741824 | request=1 lock=2 authpin=1 0x56391b2cb400] [inode 0x10000000004 [2,head] /dir_x/dir_xx/file_x auth v1 s=0 n(v0 1=1+0) (iauth excl) (ifile excl) (ixattr excl) cr={9823=0-4194304@1} caps={9823=-/pAsxXsxFxwb@0},l=9823 | request=1 caps=1 0x56391b3cd600]
2025-01-28T18:03:45.673+0000 7f968e845640 10 mds.0.openfiles notify_link [inode 0x10000000004 [2,head] /dir_x/dir_xx/file_x auth v1 s=0 n(v0 1=1+0) (iauth excl) (ifile excl) (ixattr excl) cr={9823=0-4194304@1} caps={9823=-/pAsxXsxFxwb@0},l=9823 | request=1 caps=1 0x56391b3cd600]
2025-01-28T18:03:45.673+0000 7f968e845640 10 mds.0.openfiles add_dirfrag [dir 0x10000000001 /dir_x/dir_xx/ [2,head] auth pv=2 v=1 cv=0/0 ap=1+2 state=1073872897|complete|badfrag f() n() hs=0+1,ss=0+0 | child=1 waiter=0 authpin=1 0x56391b3d9a80]
2025-01-28T18:03:45.673+0000 7f968e845640 20 mds.0.cache.ino(0x10000000004) move_to_realm joining realm snaprealm(0x1 seq 1 lc 0 cr 0 cps 1 snaps={} last_modified 2025-01-28T18:02:55.477487+0000 change_attr 0 0x56391b3d0240), leaving realm snaprealm(0x1 seq 1 lc 0 cr 0 cps 1 snaps={} last_modified 2025-01-28T18:02:55.477487+0000 change_attr 0 0x56391b3d0240)
2025-01-28T18:03:45.673+0000 7f968e845640 10 mds.0.cache.ino(0x10000000004) mark_dirty [inode 0x10000000004 [2,head] /dir_x/dir_xx/file_x auth v1 s=0 n(v0 1=1+0) (iauth excl) (ifile excl) (ixattr excl) cr={9823=0-4194304@1} caps={9823=-/pAsxXsxFxwb@0},l=9823 | request=1 caps=1 0x56391b3cd600]
2025-01-28T18:03:45.673+0000 7f968e845640 10 mds.0.cache.den(0x10000000001 file_x) mark_dirty [dentry #0x1/dir_x/dir_xx/file_x [2,head] auth (dn xlock x=1 by request(client.9823:103 nref=4 cr=0x56391b4e3180)) (dversion lock w=1 last_client=9823) pv=1 v=0 ap=2 ino=0x10000000004 state=1073741824 | request=1 lock=2 inodepin=1 authpin=1 0x56391b2cb400]
2025-01-28T18:03:45.676+0000 7f968e845640 -1 /home/pdonnell/ceph/src/mds/CDir.cc: In function 'void CDir::mark_dirty(LogSegment*, version_t)' thread 7f968e845640 time 2025-01-28T18:03:45.674744+0000
/home/pdonnell/ceph/src/mds/CDir.cc: 1438: FAILED ceph_assert(get_version() < pv)

 ceph version 19.3.0-7103-gbb5ca1f42c5b (bb5ca1f42c5b6c847d0eaf17a0f1f85c9d0ba81f) squid (dev)
 1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x116) [0x7f969aec8411]
 2: (ceph::register_assert_context(ceph::common::CephContext*)+0) [0x7f969aec8618]
 3: (CDir::mark_dirty(LogSegment*, unsigned long)+0x62) [0x563915361bc6]
 4: (CDentry::mark_dirty(unsigned long, LogSegment*)+0x6b) [0x56391534fac3]
 5: (CInode::mark_dirty(LogSegment*)+0x6c) [0x5639153cb8c8]
 6: (C_MDS_openc_finish::finish(int)+0x5d) [0x5639151947a1]
 7: (MDSContext::complete(int)+0x7f) [0x563915445499]
 8: (MDSIOContextBase::complete(int)+0x8ce) [0x563915445fcc]
 9: (MDSLogContextBase::complete(int)+0x42) [0x5639154460fa]
 10: (Finisher::finisher_thread_entry()+0x66e) [0x7f969ae4e43a]
 11: (Finisher::FinisherThread::entry()+0xd) [0x7f969ae4f47b]
 12: (Thread::entry_wrapper()+0x2f) [0x7f969ae9573f]
 13: (Thread::_entry_func(void*)+0x9) [0x7f969ae95751]
 14: /lib64/libc.so.6(+0x89d82) [0x7f9699c89d82]
 15: /lib64/libc.so.6(+0x10ee20) [0x7f9699d0ee20]

2025-01-28T18:03:45.679+0000 7f968e845640 -1 *** Caught signal (Aborted) **
 in thread 7f968e845640 thread_name:mds-rank-fin

 ceph version 19.3.0-7103-gbb5ca1f42c5b (bb5ca1f42c5b6c847d0eaf17a0f1f85c9d0ba81f) squid (dev)
 1: /lib64/libc.so.6(+0x3e730) [0x7f9699c3e730]
 2: /lib64/libc.so.6(+0x8bacc) [0x7f9699c8bacc]
 3: raise()
 4: abort()
 5: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x25d) [0x7f969aec8558]
 6: (ceph::register_assert_context(ceph::common::CephContext*)+0) [0x7f969aec8618]
 7: (CDir::mark_dirty(LogSegment*, unsigned long)+0x62) [0x563915361bc6]
 8: (CDentry::mark_dirty(unsigned long, LogSegment*)+0x6b) [0x56391534fac3]
 9: (CInode::mark_dirty(LogSegment*)+0x6c) [0x5639153cb8c8]
 10: (C_MDS_openc_finish::finish(int)+0x5d) [0x5639151947a1]
 11: (MDSContext::complete(int)+0x7f) [0x563915445499]
 12: (MDSIOContextBase::complete(int)+0x8ce) [0x563915445fcc]
 13: (MDSLogContextBase::complete(int)+0x42) [0x5639154460fa]
 14: (Finisher::finisher_thread_entry()+0x66e) [0x7f969ae4e43a]
 15: (Finisher::FinisherThread::entry()+0xd) [0x7f969ae4f47b]
 16: (Thread::entry_wrapper()+0x2f) [0x7f969ae9573f]
 17: (Thread::_entry_func(void*)+0x9) [0x7f969ae95751]
 18: /lib64/libc.so.6(+0x89d82) [0x7f9699c89d82]
 19: /lib64/libc.so.6(+0x10ee20) [0x7f9699d0ee20]
 NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.

Related issues 2 (2 open0 closed)

Copied to CephFS - Backport #69849: reef: mds: allows creating/removing dentries in damaged dirfrag QA TestingPatrick DonnellyActions
Copied to CephFS - Backport #69850: squid: mds: allows creating/removing dentries in damaged dirfrag In ProgressPatrick DonnellyActions
Actions #1

Updated by Patrick Donnelly about 1 year ago

  • Status changed from In Progress to Fix Under Review
  • Pull request ID set to 61555
Actions #2

Updated by Patrick Donnelly about 1 year ago

  • Status changed from Fix Under Review to Pending Backport
Actions #3

Updated by Upkeep Bot about 1 year ago

  • Copied to Backport #69849: reef: mds: allows creating/removing dentries in damaged dirfrag added
Actions #4

Updated by Upkeep Bot about 1 year ago

  • Copied to Backport #69850: squid: mds: allows creating/removing dentries in damaged dirfrag added
Actions #5

Updated by Upkeep Bot about 1 year ago

  • Tags (freeform) set to backport_processed
Actions #6

Updated by Upkeep Bot 9 months ago

  • Merge Commit set to 449b026f78e5ad9bbdb18d47b162a8a38d0135f0
  • Fixed In set to v19.3.0-7380-g449b026f78e
  • Upkeep Timestamp set to 2025-07-08T18:12:09+00:00
Actions #7

Updated by Upkeep Bot 8 months ago

  • Fixed In changed from v19.3.0-7380-g449b026f78e to v19.3.0-7380-g449b026f78e5
  • Upkeep Timestamp changed from 2025-07-08T18:12:09+00:00 to 2025-07-14T15:22:22+00:00
Actions #8

Updated by Upkeep Bot 8 months ago

  • Fixed In changed from v19.3.0-7380-g449b026f78e5 to v19.3.0-7380-g449b026f78
  • Upkeep Timestamp changed from 2025-07-14T15:22:22+00:00 to 2025-07-14T20:46:49+00:00
Actions #9

Updated by Upkeep Bot 5 months ago

  • Released In set to v20.2.0~1188
  • Upkeep Timestamp changed from 2025-07-14T20:46:49+00:00 to 2025-11-01T01:00:52+00:00
Actions

Also available in: Atom PDF