Patent ID: 8806274

Claim:
A computer-implemented method for providing snapshot-assisted synchronous replication between a first storage server and a second storage server, the computer-implemented method comprising: receiving a notification at the second storage server that the first storage server has resumed operations following a failure, the first storage server being in a first current state and the second storage server being in a second current state; identifying a most-recent common snapshot stored on the first storage server and the second storage server, respectively, at a time of receiving the notification; upon identifying the most-recent common snapshot, rolling back the first storage server from the first current state to a previous state according to the most-recent common snapshot; and upon rolling back the first storage server from the first current state to the previous state, re-synchronizing from the second storage server to the first storage server from the most-recent common snapshot, wherein the most common snapshot comprises a first common snapshot stored on the first storage server and a second common snapshot stored on the second storage server, the second common snapshot being replicated from the first common snapshot prior to the time of receiving the notification, and the first common snapshot and the second common snapshot defining the previous state.