PCC Phase 2 (LU-12714)

[LU-13033] Remove the stale PCC copy when the file was modified in Lustre after data restore Created: 29/Nov/19  Updated: 29/Nov/19

Status: Open
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Technical task Priority: Minor
Reporter: Qian Yingjin Assignee: Qian Yingjin
Resolution: Unresolved Votes: 0
Labels: None

Rank (Obsolete): 9223372036854775807

 Description   

If there is a "kept" file on PCC, but the file was modified in Lustre after data restore, then we need to ensure that the stale PCC copy is removed from cache.

With regular HSM if the Lustre copy is modified, the HSM copy is considered stale. The client usually will notify the MDT (via MDS_DATA_MODIFIED flag) to set the HSM state to dirty (HS_DIRTY) at the time of file close() or truncate.

RW-PCC is a kind of HSM.

If MDT known that this file was once cached on PCC of a client, then the MDT can directly remove the PCC copy when MDT found the file was modified according to the MDS_DATA_MODIFIED flag just like what we does for RAoLU.

This need to the client to set the MDS_DATA_MODIFIED flag for data modification in Lustre copy, but for data modification in the PCC copy, we should ignore it.

Maybe we need to add a new flag in HSM attrs named HS_PCC to indicate that the HSM copy is on PCC.

And also we could add a configuration parameter to the proc/sys interface RAoDM (Remove Archive on Data Modifed) to enable/disable this feature just like RAoLU.

 



 Comments   
Comment by Andreas Dilger [ 29/Nov/19 ]

And also we could add a configuration parameter to the proc/sys interface RAoDM (Remove Archive on Data Modifed) to enable/disable this feature just like RAoLU.

The more options/parameters there are, the more likely that users will get this wrong. If there is not a real need/benefit to have an option, then there shouldn't be one, especially if it can affect the data correctness.

Generated at Sat Feb 10 02:57:47 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.