MDCache中find_ino_peers()函數負責在其餘MDS進程中找到指定inodeno_t對應的file path。該函數建立MMDSFindIno類消息,以後將inodeno_t寫入到MMDSFindIno類消息後,將該類消息發送給指定的MDS進程。node
MDCache中handle_find_ino()函數負責處理MMDSFindIno類消息。首先經過調用get_inode()函數找到本地inodeno_t對應的CInode類對象,以後調用in->make_path()函數將CInode對應的file path信息寫入到MMDSFindInoReply類消息中,最後將MMDSFindInoReply類消息發送回給發送者。數組
MDCache中handle_find_ino_reply()函數負責處理MMDSFindInoReply類消息。首先在find_ino_peers數組中獲得Reply類消息對應的請求項。以後調用get_inode()函數來查找該CInode是否已經存在,若已經存在則直接退出。不然從MMDSFindInoReply類消息中獲得path信息,以後調用path_traverse()函數在MDCache中部署該path,若部署成功則直接退出,不然調用find_ino_peers()函數從新發送MMDSFindIno類消息。函數