Details
-
Technical task
-
Resolution: Unresolved
-
Minor
-
None
-
None
-
None
-
9223372036854775807
Description
A common problem facing ubiquitous computing and mobile users is disconnected operation. It is necessary for mobile devices to handle the data in disconnected state.
When LU-13011 (WBC: Integrate PCC with Metadata Writeback Caching), LU-13016 (WBC: Reintegration cached data after the client was evicted) and LU-13021 (WBC: Different cache modes) are solved, it should be mature for Lustre to support disconnected operation similar to the coda file system.
For some special use cases, a directory can be unique accessed by a client. For this directory, it can be entirely WBC cached on the client.
However, it requires that the cached EX WBC lock on the client for this directory should not ever be revoked involuntarily.
To support disconnected operation for Lustre, it would better to use PCC as persistent storage for both data and metadata and use one of the latter two cache modes in LU-13021: "Do not flush periodically" and "Flush with root WBC EX lock held" instead of the default mode: "aged caching".
As both metadata and data can be stored on PCC, nearly all I/O operations under the root WBC directory can be executed locally once the client was disconnected from the servers in the disconnected mode. Flushing in the disconnected mode should be deferred until the connection recoveries.
When a mobile device (a Lustre client) reboots after crash or power off manually, and the connection to the server recovered, the client needs to reintegrate the cached data with Lustre according to LU-13016.