Project

General

Profile

Feature #560

mds: alternate directory hashing

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

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

0%

Source:
Tags:
Backport:
Reviewed:
Affected Versions:
Component(FS):
Labels (FS):
Pull request ID:

Description

Currently dentries are hashed among dirfrags using the linux dcache's hash function, which is pretty trivial. The problem is that it very poorly distributes regularly named files (things like file.%d).

Add a field to the dir's layout that selects an alternate hash function. This will be somewhat backward incompatible/non-optimal, because old clients will sent requests to the wrong mds, and then they'll be forwarded. When teh directory is fragmented and has a different hash selected, at least.

See mds_dir_hash branch.

History

#1 Updated by Sage Weil over 13 years ago

  • Assignee set to Sage Weil

#2 Updated by Sage Weil over 13 years ago

  • Estimated time set to 2.00 h
  • Source set to 3

#3 Updated by Sage Weil over 13 years ago

almost there. need to fix/test uclient hashing.

then implement for kclient...

#4 Updated by Sage Weil over 13 years ago

commit:05bd6b078d743d6c235c0fcedda7ee4f64ab2ad5 has it working for the user client.

#5 Updated by Sage Weil over 13 years ago

  • Status changed from New to Resolved

kernel part is done and in unstable branch, currently commit:9f62e3eaafd52875e1f2e4344e11e51ddb726f48

#6 Updated by John Spray over 7 years ago

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

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

Also available in: Atom PDF