LFSCK 4: improve LFSCK performance (LU-6361)

[LU-5682] LFSCK 4: optimize ldlm lock used by LFSCK Created: 30/Sep/14  Updated: 25/Mar/15  Resolved: 25/Mar/15

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: Lustre 2.8.0

Type: Technical task Priority: Critical
Reporter: nasf (Inactive) Assignee: nasf (Inactive)
Resolution: Fixed Votes: 0
Labels: None

Severity: 3
Rank (Obsolete): 15919

 Description   

Currently, when LFSCK repairs an inconsistency, it needs to take related ldlm lock(s). In the first instance, this lock prevents concurrent modifications or purge client side cache. To simplify the implementation, the LFSCK just simply acquires LCK_EX mode ibits lock(s) on related objects. For example, when insert a name entry into the namespace, it will take LCK_EX ibits lock on the parent directory, then it will prevent all others to access such directory until related repairing has been done.

Generally, if there is very little inconsistency in the system, then such lock policy is satisfactory. However, if the inconsistency cases are more common then this lock policy is inefficient. We need to consider more suitable ldlm lock mechanism, like MDT PDO lock to allow more concurrent modifications under the shard directory.



 Comments   
Comment by Gerrit Updater [ 18/Nov/14 ]

Fan Yong (fan.yong@intel.com) uploaded a new patch: http://review.whamcloud.com/12766
Subject: LU-5682 lfsck: optimize ldlm lock used by LFSCK
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 59a432e3bb56b07c3866be1c59f12b02588f602e

Comment by Gerrit Updater [ 25/Mar/15 ]

Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/12766/
Subject: LU-5682 lfsck: optimize ldlm lock used by LFSCK
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 81be387c988787b86565f1e4087fd20809b6a7c3

Comment by nasf (Inactive) [ 25/Mar/15 ]

The patch has been landed to master

Generated at Sat Feb 10 01:53:36 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.