[LUDOC-421] document LFSCK filename types in lost+found Created: 06/Dec/18 Updated: 06/Dec/18 |
|
| Status: | Open |
| Project: | Lustre Documentation |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Minor |
| Reporter: | Andreas Dilger | Assignee: | Lustre Manual Triage |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Rank (Obsolete): | 9223372036854775807 |
| Description |
|
LFSCK will link orphan objects into the .lustre/lost+found/MDTxxxx/ subdirectories (one per MDT) with filenames like [0x20000205c:0x15dc1:0x0]-R-0 or similar, but I can't find any user documentation for what the -R- and other file types mean. Looking at the code, I see in lfsck_namespace_insert_orphan(): * \param[in] infix additional information for the orphan name, such as
* the FID for original
* \param[in] type the type for describing why the orphan MDT-object is
* created. The rules are as following:
* type "D": The MDT-object is a directory, it may knows its parent
* but because there is no valid linkEA, the LFSCK cannot
* know where to put it back to the namespace.
* type "O": The MDT-object has no linkEA, and there is no name
* entry that references the MDT-object.
*
* type "S": The orphan MDT-object is a shard of a striped directory
* The orphan name will be like:
* ${FID}-${infix}-${type}-${conflict_version}
and in lfsck_layout_recreate_parent(): * \param[in] infix additional information, such as the FID for original
* MDT-object and the stripe offset in the LOV EA
* \param[in] type the type for describing why the orphan MDT-object is
* created. The rules are as following:
* type "C": Multiple OST-objects claim the same MDT-object and the
* same slot in the layout EA. Then the LFSCK will create
* new MDT-object(s) to hold the conflict OST-object(s).
*
* type "N": The orphan OST-object does not know which one was the
* real parent MDT-object, so the LFSCK uses new FID for
* its parent MDT-object.
*
* type "R": The orphan OST-object knows its parent MDT-object FID,
* but does not know the position (the file name) in the
* layout.
*
* type "D": The MDT-object is a directory, it may knows its parent
* but because there is no valid linkEA, the LFSCK cannot
* know where to put it back to the namespace.
* type "O": The MDT-object has no linkEA, and there is no name
* entry that references the MDT-object.
*
* type "P": The orphan object to be created was a parent directory
* of some MDT-object which linkEA shows that the @orphan
* object is missing.
*
* The orphan name will be like:
* ${FID}-${infix}-${type}-${conflict_version}
These should be added to the lctl-lfsck_start.8 man page, as well as the user manual, so that users have some idea what should be done to repair those files. |