Project

General

Profile

Actions

Feature #545

closed

mds: use bloom filter to supplement dirfrag COMPLETE flag

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

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

0%

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

Description

Currently we need the complete flag (or a cached negative dentry) to conclude a name does not exist in a frag before we can create it. This means that (especially for large dirs) once a single dentry is trimmed, we need to reload the whole dir when we have a miss.

We should supplement the complete flag with a bloom filter (which gives false positives but never false negatives), and add trimmed/released items to the filter. If a bloom filter check gives a false, we know the item was never trimmed, and can safely instantiate it.

Actions #1

Updated by Sage Weil over 13 years ago

  • Assignee set to Greg Farnum
Actions #2

Updated by Greg Farnum over 13 years ago

  • Target version changed from 12 to v0.24
Actions #3

Updated by Sage Weil over 13 years ago

  • Estimated time set to 4:00 h
  • Source set to 2
Actions #4

Updated by Greg Farnum over 13 years ago

Trying to find a bloom filter library. Unfortunately there don't seem to be any available under a GPL-compatible license, so I emailed the guy whose library wins at Google (and looks most mature!) to ask if we can get GPL-compatible licensing.

Actions #5

Updated by Greg Farnum over 13 years ago

  • Status changed from New to 7

Pushed it to branch "mds" (which I apparently created, but thought existed...weird!). Testing it now on a secondary install.

Actions #6

Updated by Sage Weil over 13 years ago

  • Status changed from 7 to Resolved

merged commit:4303820b43721a8b46ef36d0e9ef4e1167857c80

Actions #7

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.

Actions

Also available in: Atom PDF