Project

General

Profile

Feature #19578

mds: optimize CDir::_omap_commit() and CDir::_committed() for large directory

Added by Zheng Yan almost 6 years ago. Updated about 5 years ago.

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

0%

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

Description

CDir::_omap_commit() and CDir::_committed() need to traverse whole dirfrag to find dirty dentries. It's not efficiency for large directory


Related issues

Copied to CephFS - Backport #22563: luminous: mds: optimize CDir::_omap_commit() and CDir::_committed() for large directory Resolved

History

#1 Updated by Zheng Yan almost 6 years ago

We can track dirty dentries in a dirty list, CDir::_omap_commit() and CDir::_committed() only needs to check dentries in the dirty list.

#2 Updated by Zheng Yan over 5 years ago

this should help large directory performance

#3 Updated by Zheng Yan about 5 years ago

  • Status changed from New to Fix Under Review

#4 Updated by Patrick Donnelly about 5 years ago

  • Subject changed from optimize CDir::_omap_commit() and CDir::_committed() for large directory to mds: optimize CDir::_omap_commit() and CDir::_committed() for large directory
  • Status changed from Fix Under Review to Pending Backport
  • Assignee set to Zheng Yan
  • Backport set to luminous

#5 Updated by Zheng Yan about 5 years ago

  • Copied to Backport #22563: luminous: mds: optimize CDir::_omap_commit() and CDir::_committed() for large directory added

#6 Updated by Patrick Donnelly about 5 years ago

  • Status changed from Pending Backport to Resolved

Also available in: Atom PDF