Old Content ----------- [NOTE] This initial list combines some actual message names or types with the POSIX semantic operations they are being used to implement, as well as a few other underlying mechanisms (cf. "grant"). A subsequent refinement will separate the various items and relate them to one another. Client-MDS RPCs for POSIX namespace operations ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 'Content to be provided' === mount === 'Content to be provided' === unmount === 'Content to be provided' === create === 'Content to be provided' === open === 'Content to be provided' === close === 'Content to be provided' === unlink === 'Content to be provided' === mkdir === image:mkdir1.png[mkdir] === rmdir === 'Content to be provided' === rename === 'Content to be provided' === link === 'Content to be provided' === symlink === 'Content to be provided' === getattr === 'Content to be provided' === setattr === 'Content to be provided' === statfs === 'Content to be provided' === ... === 'Content to be provided' Client-MDS RPCs for internal state management ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 'Content to be provided' === connect === 'Content to be provided' === disconnect === 'Content to be provided' === FLD === 'Content to be provided' === SEQ === 'Content to be provided' === PING === 'Content to be provided' === LDLM === 'Content to be provided' === ... === 'Content to be provided' Client-OSS RPCs for IO Operations ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 'Content to be provided' === read === 'Content to be provided' === write === 'Content to be provided' === truncate === 'Content to be provided' === setattr === 'Content to be provided' === grant === 'Content to be provided' === ... === 'Content to be provided' MDS-OSS RPCs for internal state management ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 'Content to be provided' === object precreation === 'Content to be provided' === orphan recovery === 'Content to be provided' === UID/GID change === 'Content to be provided' === unlink === 'Content to be provided' === ... === 'Content to be provided' MDS-OSS RPCs for quota management ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 'Content to be provided' MDS-OSS OUT RPCs for distributed updates ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 'Content to be provided' === DNE1 remote directories === 'Content to be provided' === DNE2 striped directories === 'Content to be provided' === LFSCK2/3 verification and repair === 'Content to be provided' Message Flows ------------- Each file operation (in Lustre) generates a set of messages in a particular sequence. There is one sequence for any particular concrete operation, but under varying circumstances the same file operation may generate a different sequence. State Machines -------------- For each File operation, the collection of possible sequences of messages is governed by a state machine.