Patent ID: 8260798

Claim:
A computer readable storage 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 file in the directory on the target FS, wherein the directory entry for the file is associated with a file level attribute that specifies the file is un-migrated; creating an on-disk space map for the file; creating an in-memory space map for the file; servicing, after creating the on-disk space map and the in-memory space map, the first FS operation request using the target FS; receiving a second file system (FS) operation request for the target FS from the client; making a third determination that migration for the source FS is not complete; making a fourth determination that the second FS operation request specifies the file and that the file level attribute for the file on the target FS specifies that the file on the target FS is un-migrated; in response to the third and fourth determination: determining a requested range from the second FS operation request, wherein the requested range specifies one of a plurality of portions of the file and wherein the requested range is smaller than a size of the file; obtaining the in-memory space map for the file, wherein the in-memory space map comprises a remote range for the file, wherein the remote range specifies a plurality of portions of the file on the source FS that are not on the target FS; making a fifth determination that there is an overlap between the requested range and the remote range, wherein the overlap corresponds to the one of the plurality of portions of the file; in response to the fifth determination: obtaining file data for the one of the plurality of portions of the file from the source FS; populating the directory entry for the file on the target FS using the file data and servicing, after the populating, the second FS operation request using the target FS.