Patent ID: 9116862
Filing Date: 2015-08-25
Classification: G06F,H04L

Abstract:
1. A system, comprising: a plurality of computing nodes, each comprising at least one processor and memory, wherein the plurality of computing nodes is configured to implement a data storage service; wherein the data storage service maintains data on behalf of one or more storage service clients, wherein maintaining the data comprises storing two or more replicas of the data on two or more respective computing nodes of the plurality of computing nodes, wherein the two or more replicas make up a replica group, wherein the replica group maintains an indicator of its membership version, wherein the membership version is updated each time the membership of the replica group changes, wherein at most one of the replicas in the replica group can act as a master replica for the replica group at a time, and wherein replicas in the replica group that are not acting as the master replica act as slave replicas in the replica group; wherein one of the two or more replicas is configured to attempt to assume a role of master replica for the replica group, and wherein attempting to assume the role of master replica comprises performing, by the one of the two or more replicas: