Patent ID: 7464125

Claim:
In a distributed file system in which a block of data is stored on a first non-volatile storage and a backup duplicate of the block of data is stored on a second non-volatile storage, a method for reading the block of data from the first non-volatile storage, the method comprising: a) determining whether the block of data is valid; b) in response to determining that the block of data is not valid: i) determining whether the backup duplicate of the block of data is valid, and ii) in response to determining that the backup duplicate of the block is valid, using the backup duplicate of the block of data to rewrite the block of data to the first non-volatile storage medium; and c) in response to determining that the block of data is valid, checking the validity of the backup duplicate of the block of data; wherein the block of data is stored in a first particular part of the first non-volatile storage, and wherein the validity of the backup duplicate in the second non-volatile storage is determined using a mapping, in a partition control block of the first non-volatile storage, of the first particular part of the first non-volatile storage to a second particular part of the second non-volatile storage for storing backup duplicates of blocks of data stored in the first particular part of the first non-volatile storage.