Patent attributes
Methods and apparatuses are provided for recovering one or more replicated datasets. In accordance to some embodiments of the invention, this is accomplished by determining whether a log contains one or more entries indicating a corruption in a replicated data item; and recovering the replicated data item if the log contains any such entries. The log, however, is maintained at a higher layer in a software hierarchy than the layer at which the replicated data item is recovered. As a result, there is no need to maintain a separate replication log at the layer where the replicated data item is recovered. In accordance to some embodiments of the invention, this is accomplished by recording an entry indicating that an operation was performed on a replicated record in a log at a higher layer in a software hierarchy, determining whether a failure occurred during the operation, and reconciling the replicated record at a lower layer in the software hierarchy if it is determined that a failure occurred during the operation. As a result, the present invention eliminates the need for additional disk writes required by conventional techniques that use a replication log to at the same layer where the data recovery is performed.