Abstract:
A system and method enables a storage system to support multiple volume type simultaneously. A volume type field is contained within a file system information block that permits the storage system to determine the type of volume of a particular volume associated therewith. The storage operating system may then interpret various on-disk data structures in accordance with the appropriate volume type.
Abstract:
The reserves of a flexible volume and the aggregate which contains the flexible volume are “stacked”. When the flexible volume is created, a portion of the flexible volume having a capacity equal to or less than an unreserved portion of the flexible volume is guaranteed by the aggregate. When the flexible volume creates or modifies metadata, the flexible volume issues a request to the aggregate. The aggregate then issues a portion of the reserve of the aggregate to the flexible volume for storing the metadata.
Abstract:
A system and method for performing an on-line check of a file system modifies various function calls within a file system layer of a storage operating system so that each time the particular inode is retrieved using the modified function calls, a check is performed on the inode and associated buffer trees before returning the requested inode to the calling process.
Abstract:
A system and method for performing a distributed consistency check of a clustered file system. File system functions for loading an inode and/or buffer tree are modified so that in response to either of these functions being invoked, a consistency check is performed. The consistency check verifies both local consistency on a node of the clustered file and a distributed check across the nodes of the storage system
Abstract:
A technique converts a stream of virtual volume block numbers (vvbns) into a hybrid virtual volume (vvol) file system containing both physical volume block numbers (pvbns) and vvbns. The stream of vvbns is illustratively embodied as a file system data stream of a vvol that is transferred by a source to a destination in accordance with image transfer operations, such as volume copying and synchronous or asynchronous mirroring. Transfer of the vvol involves converting a file system on the source vvol into the file system data stream (i.e., a “pure” vvol stream), where all blocks of the vvol are represented by vvbns. The file system data stream is then transferred to the destination, where the vvbns of the pure vvol stream blocks are converted to pvbns of a hybrid stream.
Abstract:
A data storage system, such as RAID, upgraded dynamically including multiple stages, providing error checking data without taking the system off-line. Checksums are computed from the data and placed in block 63 of the same disk. The combination of parity bits across the parity disk, the remaining uncorrupted data in the data disks, and checksums within each disk includes sufficient information to enable restoration of corrupt data. The system is upgraded by reserving permanent checksum blocks, writing the checksums to a volume block number, and placing the checksums in permanently reserved checksum block locations after first moving data already there to unreserved blocks.
Abstract:
A system and method for performing an on-line check of a file system modifies various function calls within a file system layer of a storage operating system so that each time the particular inode is retrieved using the modified function calls, a check is performed on the inode and associated buffer trees before returning the requested inode to the calling process.
Abstract:
A method and system for improving data access of a reliable file system is provided. In a first aspect of the invention, the file system determines the relative vacancy of a collection of storage blocks, herein called an “allocation area”. This is accomplished by recording an array of binary numbers. Each binary number in the array describes the vacancy of a collection of storage blocks. The file system examines these binary numbers when attempting to record file blocks in relatively contiguous areas on a storage medium, such as a hard disk. When a request to write to disk occurs, the system determines the average vacancy of all the allocation areas and queries the allocation areas for individual vacancy rates such as sequentially. The system preferably writes file blocks to the allocation areas that are above a threshold related to the average storage block vacancy of the file system. If the file in the request to write is larger than the selected allocation area, the next allocation area above the threshold is preferably used to write the remaining blocks of the file.