摘要 |
A method for avoiding directory conflicts across a file system having multiple nodes with one node representing a token manager. For each directory, at least one metanode responsible for directory updates. The method involving obtaining a name-based lock on a filename. Querying the token manager for a lock token. If a new token is obtained, sending a Remote Procedure Call (RPC) to the metanode to obtain matching directory entries, and caching the result of the RPC so that subsequent operations on that filename can be satisfied without additional messages sent to the metanode. Updating a cached directory block in memory by creating a new directory entry in the block or deleting an existing directory entry from the block. Information regarding the updating is sent to the metanode on one of: periodic schedule, a subsequent synchronization event, or when the name-based lock token is revoked. |