System and method for storage of snapshot metadata in a remote file
First Claim
1. A method for conforming a metadata file associated with a sub-organization of a storage system to a version used by a file system kernel of the storage system, where the version indicates a format of the metadata file, the method comprising the steps of:
- comparing a major version and a minor version of the metadata file to a latest known major version and a latest known minor version associated with the file system kernel;
if either the major version or the minor version of the metadata file are older than the latest known major version and a latest known minor version, updating the metadata file to the latest known major version and the latest known minor version; and
if the major version of the file matches the latest known major version, and the minor version of the metadata file is newer than the latest known minor version, converting one or more fields of the metatdata file that are not recognized by the kernel to a non-informational state, and resetting the minor version of the metadata file to the latest known minor version.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for conforming a metadata file associated with qtree of a storage system to a version used by a file system kernel of the storage system, where the version indicates a format of the metadata file. The metadata file stores state information with respect to each qtree, and may be located outside of the qtree structure. Major and minor versions are compared with latest known major and minor versions associated with the file system kernel. In response to such comparisons, the metadata file may be updated to a newer version, rolled back to an older version, and/or the system may enter a corrective state where further operations are performed.
146 Citations
33 Claims
-
1. A method for conforming a metadata file associated with a sub-organization of a storage system to a version used by a file system kernel of the storage system, where the version indicates a format of the metadata file, the method comprising the steps of:
-
comparing a major version and a minor version of the metadata file to a latest known major version and a latest known minor version associated with the file system kernel;
if either the major version or the minor version of the metadata file are older than the latest known major version and a latest known minor version, updating the metadata file to the latest known major version and the latest known minor version; and
if the major version of the file matches the latest known major version, and the minor version of the metadata file is newer than the latest known minor version, converting one or more fields of the metatdata file that are not recognized by the kernel to a non-informational state, and resetting the minor version of the metadata file to the latest known minor version. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for recording changes to a metadata file associated with a sub-organization of a storage system to conform to a version used by a file system kernel of the storage system, the method comprising the steps of:
- storing one or more changes to the metadata file in a non-volatile memory of a file server adapted to retain the changes upon unintended shutdown; and
if an unintended shutdown occurs, replaying changes logged in the non-volatile memory and updating the metadata file with the changes.
- storing one or more changes to the metadata file in a non-volatile memory of a file server adapted to retain the changes upon unintended shutdown; and
-
13. A system for conforming a metadata file associated with a sub-organization of a storage system to a version used by a file system kernel of the storage system, where the version indicates a format of the metadata file, the system comprising:
-
means for comparing a major version and a minor version of the metadata file to a latest known major version and a latest known minor version associated with the file system kernel;
means for updating the metadata file to the latest known major version and the latest known minor version if either the major version or the minor version of the metadata file are older than the latest known major version and a latest known minor version; and
means for converting one or more fields of the metadata file that are not recognized by the kernel to a non-informational state, and resetting the minor version of the metadata file to the latest known minor version, if the major version of the file matches the latest known major version, and the minor version of the metadata file is newer than the latest known minor version. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A system for recording changes to a metadata file associated with a sub-organization of a storage system to conform to a version used by a file system kernel of the storage system, the system comprising:
-
means for storing one or more changes to the metadata file in a non-volatile memory of a file server adapted to retain the changes upon unintended shutdown; and
means for replaying changes logged in the non-volatile memory and updating the metadata file with the changes if an unintended shutdown occurs.
-
-
25. A computer readable medium containing executable program instructions for conforming a metadata file associated with a sub-organization of a storage system to a version used by a file system kernel of the storage system, the executable program instructions comprising program instructions for:
-
comparing a major version and a minor version of the metadata file to a latest known major version and a latest known minor version associated with the file system kernel;
if either the major version or the minor version of the metadata file are older than latest known major version and a latest known minor version, updating the metadata file to the latest known major version and the latest known minor version; and
if the major version of the file matches the latest known major version, and the minor version of the metadata file is newer than the latest known minor version, converting one or more fields of the metatdata file that are not recognized by the kernel to a non-informational state and resetting the minor version of the file to the latest known minor version.
-
-
26. A computer readable medium containing executable program instructions for recording changes to a metadata file associated with a sub-organization of a storage system, the executable program instructions comprising program instructions for:
-
storing one or more changes to the metadata file in a non-volatile memory of a file server adapted to retain the changes upon unintended shutdown; and
if an unintended shutdown occurs, replaying changes logged in the non-volatile memory and updating the metadata file with the changes.
-
-
27. A method for using a metadata file by a file system kernel, the method comprising the steps of:
-
reading a field of the metadata file to determine a metadata file'"'"'s major version and a metadata file'"'"'s minor version;
modifying the metadata file by a) if either the metadata file'"'"'s major version or the metadata file'"'"'s minor version are older than a file system kernel'"'"'s major version and a file system kernel'"'"'s minor version, updating the metadata file and assigning the metadata file the same major version and minor version as the file system kernel, or b) if the metadata file'"'"'s major version matches the file system kernel'"'"'s major version, and the metadata file'"'"'s minor version is newer than the file system kernel'"'"'s minor version, ignoring one or more fields of the metatdata file that are not recognized by the file system kernel, and changing the metadata file'"'"'s minor version to be the same as the file system kernel'"'"'s minor version. - View Dependent Claims (28, 29)
-
-
31. A system for using a metadata file, the system comprising:
-
means for reading a field of the metadata file to determine a metadata file'"'"'s major version and a metadata file'"'"'s minor version;
means for modifying the metadata file such that a) if either the metadata file'"'"'s major version or the metadata file'"'"'s minor version are older than a file system kernel'"'"'s major version and a file system kernel'"'"'s minor version, the metadata file is updated and assigned the same major version and minor version as the file system kernel, or b) if the metadata file'"'"'s major version matches the file system kernel'"'"'s major version, and the metadata file'"'"'s minor version is newer than the file system kernel'"'"'s minor version, one or more fields of the metadata file that are not recognized by the file system kernel are ignored and the metadata file'"'"'s minor version is changed to be the same as the file system kernel'"'"'s minor version. - View Dependent Claims (32, 33)
-
Specification