Patent ID: 8332351

Claim:
A non-transitory computer readable medium comprising software instructions, which when executed by a processor, perform a method, the method comprising: receiving, from a client, a first file system (FS) operation request for a target FS; making a first determination that migration for a source FS is not complete; making a second determination that the first FS operation request specifies a directory and that a directory level attribute for the directory on the target FS specifies that the directory on the target FS is un-migrated; in response to the first and second determination: obtaining, from the source FS, meta-data for content in the directory; creating, using the meta-data for content in the directory, a directory entry for a first file in the directory on the target FS, obtaining file data for the first file from the source FS; populating the directory entry for the first file on the target FS using the file data, wherein the directory entry for the first file is associated with a file level attribute that specifies the first file is migrated; creating, using the meta-data for content in the directory, a directory entry for a second file in the directory on the target FS; linking the directory entry for the second file to the file data and the file level attribute; servicing, after the linking, the first FS operation request using target FS; obtaining, using the meta-data for content in the directory, a first file system identification (FSID)—file identification (FID) pair for a third file; locating, using the first FSID-FID pair, a source file entry in a link directory, wherein the link directory is located in the target FS; obtaining a path to the third file on the source FS from the source file entry; obtaining, using the path, a second FSID-FID pair for the third file; making a third determination that the first FSID-FID pair is not equal to the second FSID-FID pair; in response to the third determination: obtaining file data for the third file from the source FS; populating a directory entry for the third file on the target FS using the file data for the third file; and updating, after the populating the directory entry for the third file, a file level attribute for the third file to indicate that the third file on the target FS is migrated.