Detecting out-of-band (OOB) changes when replicating a source file system using an in-line system
First Claim
Patent Images
1. A method for replicating changes, the method being implemented by one or more processors that are external to a source file system, the method comprising:
- replicating at least a portion of the source file system on a target memory while a plurality of clients utilize the source file system;
generating an object identifier for each file system object that is replicated in the target memory, the object identifiers being based at least in part on metadata provided with each file system object in the source file system;
storing the object identifier, for each file system object that is replicated, in association with a corresponding file handle; and
handling requests from individual clients in the plurality of clients for file system objects of the source file system;
wherein handling requests includes;
receiving a given request that specifies a file handle;
retrieving, from the source file system, a set of metadata associated with the specified file handle;
determining, from the set of metadata, that the file handle identifies a first file system object on the source file system and a second file system object on the target memory by (i) generating an object identifier from the retrieved set of metadata, and (ii) determining that the generated object identifier does not match one of the stored object identifiers; and
updating the target memory so that the specified file handle identifies the first file system object.
1 Assignment
0 Petitions
Accused Products
Abstract
Examples described herein include a computer system, positioned in-line with respect to a plurality of clients that actively use a source file system, to replicate a source file system on a target memory in presence of out-of-band events which alter the source file system.
-
Citations
12 Claims
-
1. A method for replicating changes, the method being implemented by one or more processors that are external to a source file system, the method comprising:
-
replicating at least a portion of the source file system on a target memory while a plurality of clients utilize the source file system; generating an object identifier for each file system object that is replicated in the target memory, the object identifiers being based at least in part on metadata provided with each file system object in the source file system; storing the object identifier, for each file system object that is replicated, in association with a corresponding file handle; and handling requests from individual clients in the plurality of clients for file system objects of the source file system; wherein handling requests includes; receiving a given request that specifies a file handle; retrieving, from the source file system, a set of metadata associated with the specified file handle; determining, from the set of metadata, that the file handle identifies a first file system object on the source file system and a second file system object on the target memory by (i) generating an object identifier from the retrieved set of metadata, and (ii) determining that the generated object identifier does not match one of the stored object identifiers; and updating the target memory so that the specified file handle identifies the first file system object. - View Dependent Claims (2, 3, 4)
-
-
5. A system positioned in-line between a plurality of clients and a source file system, the system comprising:
-
a memory resource to store instructions; one or more processors using the instructions stored in the memory resource to; replicate at least a portion of the source file system on a target memory while the plurality of clients utilize the source file system; generate an object identifier for each file system object that is replicated in the target memory, the object identifiers being based at least in part on metadata provided with each file system object in the source file system; store the object identifier, for each file system object that is replicated, in association with a corresponding file handle; and handle requests from individual clients in the plurality of clients for file system objects of the source file system; wherein handling requests includes; receiving a given request that specifies a file handle; retrieving, from the source file system, a set of metadata associated with the specified file handle; determining, from the set of metadata, that the file handle identifies a first file system object on the source file system and a second file system object on the target memory by (i) generating an object identifier from the retrieved set of metadata, and (ii) determining that the generated object identifier does not match one of the stored object identifiers; and updating the target memory so that the specified file handle identifies the first file system object. - View Dependent Claims (6, 7, 8)
-
-
9. A non-transitory computer-readable medium that stores instructions, executable by one or more processors, to cause the one or more processors to perform operations that comprise:
-
replicating at least a portion of a source file system on a target memory while a plurality of clients utilize the source file system; generating an object identifier for each file system object that is replicated in the target memory, the object identifiers being based at least in part on metadata provided with each file system object in the source file system; storing the object identifier, for each file system object that is replicated, in association with a corresponding file handle; and handling requests from individual clients in the plurality of clients for file system objects of the source file system; wherein handling requests includes; receiving a given request that specifies a file handle; retrieving, from the source file system, a set of metadata associated with the specified file handle; determining, from the set of metadata, that the file handle identifies a first file system object on the source file system and a second file system object on the target memory by (i) generating an object identifier from the retrieved set of metadata, and (ii) determining that the generated object identifier does not match one of the stored object identifiers; and updating the target memory so that the specified file handle identifies the first file system object. - View Dependent Claims (10, 11, 12)
-
Specification