Patent ID: 9489434
Filing Date: 2016-11-08
CPC Classification: G06F

Claim Text:
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 respective computing nodes in the system, wherein the two or more replicas make up a replica group, 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 replicas is configured to attempt to assume the role of master replica for the replica group, wherein attempting to assume the role of master replica comprises: for each of the at least some of the other replicas: wherein the one of the replicas is configured to assume the role of master replica for the replica group in response to: wherein said attempting to assume the role of master replica further comprises removing any replicas of the at least some of the other replicas in the replica group that did not support the attempt to assume the role of master replica from the replica group, wherein said removing is based, at least in part, on state information gathered from the at least one replica being removed, and wherein the replicas that remain in the replica group following said assuming make up a modified replica group.