Patent ID: 7103884
Filing Date: 2006-09-05
Classification: G06F,Y10S

Abstract:
1. In a replicated data storage system in which a source sends read and write requests to a plurality of replicas, each replica comprising a storage device that stores a plurality of data items, each replica storing the same data items, each write request being associated with a write sequence number consecutively assigned by the source, a method for achieving consistency between a recovering replica that has been determined to be not up-to-date and one of the replicas that is current as a result of a failure in the system that has caused the recovering replica to miss receiving at least one write request that updates at least one data item, the method at the recovering replica comprising: ignoring all new read and write requests directly received from the source during a recovery period in which the recovering replica recovers from a specified current replica; if the source sends a new write request during the recovery period, then replacing a stored value of a data item and its associated write sequence number with an updated value of the data item and its associated write sequence number in response to the new write request that is forwarded to the recovering replica by the current replica, the write sequence number associated with the updated value of the data item being the write sequence number of the write request that last modified that data item; receiving from the current replica at least the data items that were updated by write requests that were missed by the recovering replica, each data item being received with its associated write sequence number, the write sequence number associated with a data item received from the current replica being the write sequence number of the write request that last modified that data item at the current replica; and replacing a value of at least one data item and its associated write sequence number that are stored by the recovering replica with a value of the received current replica's corresponding data item and its associated write sequence number, respectively, only if the write sequence number associated with the data item received from the current replica is higher than the recovering replica' stored write sequence number of the corresponding data item.