Project

General

Profile

Actions

Bug #1295

closed

mds: handle rmdir of subtree root

Added by Sage Weil almost 13 years ago. Updated over 7 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Target version:
-
% Done:

0%

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

Description

If we rmdir an empty directory whose dirfrag(s) are exports/subtree roots,

- it gets journaled locally, replay is fine
- the replica is told and subtrees update fine
- the replica does not journal, so replay will break

We can either
- journal witnesses on replicas the way we do rename (and do the rollback etc.)
- force empty dirfrags to export back to the inode auth, and make the rmdir wait for that.

The latter is simpler, but exports aren't always allowed (e.g. when the mds cluster is degraded), so you could have rmdirs that hang when otherwise unrelated mds's are recovering. The former is more robust but more complex to implement.

Actions #1

Updated by Sage Weil almost 13 years ago

  • Status changed from New to Resolved
Actions #2

Updated by Sage Weil almost 13 years ago

  • Translation missing: en.field_story_points set to 8
Actions #3

Updated by John Spray over 7 years ago

  • Project changed from Ceph to CephFS
  • Category deleted (1)
  • Target version deleted (v0.32)

Bulk updating project=ceph category=mds bugs so that I can remove the MDS category from the Ceph project to avoid confusion.

Actions

Also available in: Atom PDF