Flexible approach to store attribute information (META-DATA) related to files of a file system
AssigneeOracle International Corporation
InventorVivek Agarwal
Life of this patent
Estimating the term…
Abstract
A file system designed according to a convention which permits the addition of new attributes (potentially of new types not defined earlier) for any desired set of files. In one embodiment, addition of an attribute for a file requires rewriting of attributes (of other files) stored following the added new attribute. In an alternative embodiment, the convention permits an attribute to point to another location at which the storing of new attributes is continued.
Claims18
A method of maintaining attribute information for a plurality of files, said method comprising:
- storing on a hardware storage said plurality of files in a file system, said file system providing for a first set of fields and a second set of fields corresponding to each of said plurality of files, said first set of fields identifying locations on said hardware storage to store content corresponding to each file and said second set of fields storing a set of attributes corresponding to each file according to a convention which permits addition of new types of attributes for files of interest, wherein each attribute in said set of attributes is contained in a set of attribute types currently supported by said file system,
- wherein said storing stores a continuation flag for each attribute in a corresponding sub-field on said hardware storage according to said convention, wherein said continuation flag has a first value to indicate that the attributes information for a corresponding file are continued at some other location which is not stored continuous with the attributes of the corresponding file, said continuation flag having a second value otherwise,
- wherein a first file is stored associated with a first set of attributes according to said convention upon creation of said first file, wherein said first file is contained in said plurality of files and said first set of attributes is contained in said plurality of sets of attributes, wherein each of said first set of attributes has the continuation flag set to said second value;
- receiving, after said storing, a first attribute of a new attribute type for said first file, wherein said first attribute is not contained in said first set of attributes and said new attribute type is not contained in said set of attribute types upon creation of said first file;
- and
- adding said first attribute of said new attribute type to said second set of fields corresponding to said first file in said file system on said hardware storage according to said convention,
- whereby said file system on said hardware storage permits addition of new types of attributes not previously supported for files in said file system.
A computer readable medium carrying one or more sequences of instructions causing a server to maintain attribute information for a plurality of files contained in a file system, wherein execution of said one or more sequences of instructions by one or more processors contained in said server causes said server to perform the actions of:
- storing on a hardware storage said plurality of files and a corresponding one of a plurality of sets of attributes corresponding to each of said plurality of files according to a convention which permits addition of new types of attributes for files of interest, wherein each attribute in said plurality of sets of attributes is contained in a set of attribute types currently supported by said file system,
- wherein said storing stores a continuation flag for each attribute in a corresponding sub-field on said hardware storage according to said convention, wherein said continuation flag has a first value to indicate that the attributes information for a corresponding file are continued at some other location which is not stored continuous with the attributes of the corresponding file, said continuation flag having a second value otherwise,
- wherein a first file is stored associated with a first set of attributes according to said convention upon creation of said first file, wherein said first file is contained in said plurality of files and said first set of attributes is contained in said plurality of sets of attributes, wherein each of said first set of attributes has the continuation flag set to said second value;
- receiving, after said storing, a first attribute of a new attribute type for said first file, wherein said first attribute is not contained in said first set of attributes and said new attribute type is not contained in said set of attribute types upon creation of said first file;
- and
- adding, on said hardware storage said first attribute of said new attribute type to said first file according to said convention,
- whereby said file system on said hardware storage permits addition of new types of attributes not previously supported for files in said file system.
A computer system maintaining attribute information for a plurality of files contained in a file system, said computer system comprising:
- a hardware storage storing said plurality of files and a corresponding one of a plurality of sets of attributes corresponding to each of said plurality of files according to a convention which permits addition of new attributes for files of interest, wherein each attribute in said plurality of sets of attributes is contained in a set of attribute types currently supported by said file system,
- wherein said hardware storage also stores a continuation flag for each attribute in a corresponding sub-field according to said convention, wherein said continuation flag has a first value to indicate that the attributes information for a corresponding file are continued at some other location which is not stored continuous with the attributes of the corresponding file, said continuation flag having a second value otherwise,
- wherein a first file is stored associated with a first set of attributes according to said convention upon creation of said first file, wherein said first file is contained in said plurality of files and said first set of attributes is contained in said plurality of sets of attributes, wherein each of said first set of attributes has the continuation flag set to said second value;
- means for receiving, after said storing, a first attribute of a new attribute type for first file, wherein said first attribute is not contained in said first set of attributes and said new attribute type is not contained in said set of attribute types upon creation of said first file;
- and
- means for adding on said hardware storage said first attribute of said new attribute type to said first file according to said convention,
- whereby said file system on said hardware storage permits addition of new types of attributes not previously supported for files in said file system.
Dependencies are inferred from the claim text.