Garbage collection of tombstones for optimistic replication systems
First Claim
1. A computer implemented method for deleting replicated objects and providing for garbage collection of tombstones within a replica set, the method comprising:
- the computing system replicating an object that resides on a member of the replica set to at least one other member of the replica set, the replica set including at least two members;
deleting the object on at least one member of the replica set and indicating on that member of the replica set that the object has been deleted via at least one tombstone indicating the deletion of the object;
deleting at least one of the at least one tombstone; and
thereafter;
locating the object or a modified form of the object, having replaced the object, on a member of the replica set;
locating a different member of the replica set upon which the object has been deleted and upon which the tombstone indicating the deletion of the object has been deleted;
comparing version information of the member of the replica set with version information of the different member of the replica set;
determining when the object on the member of the replica set is subsumed by the different member of the replica set; and
when having determined that the object on the member of the replica set is subsumed by the version information of the different member of the replica set, deleting the object or modified form of the object from the member of the replica set.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system for synchronizing objects among members of a replica set. Objects on members of the replica set are quickly synchronized via a join algorithm that takes advantage of version vectors. When an object is deleted, the object is tombstoned (i.e., marked as “dead”). Tombstones are also replicated between the connected members of the replica set. After a period of time (e.g., a timeout), the tombstones are deleted. A slow sync algorithm executes periodically to ensure that objects that were not deleted via replicated tombstones are eventually deleted. An époque algorithm provides that members that have been offline for a long period of time will update their objects before they participate in a join synchronization.
-
Citations
23 Claims
-
1. A computer implemented method for deleting replicated objects and providing for garbage collection of tombstones within a replica set, the method comprising:
-
the computing system replicating an object that resides on a member of the replica set to at least one other member of the replica set, the replica set including at least two members; deleting the object on at least one member of the replica set and indicating on that member of the replica set that the object has been deleted via at least one tombstone indicating the deletion of the object; deleting at least one of the at least one tombstone; and thereafter; locating the object or a modified form of the object, having replaced the object, on a member of the replica set; locating a different member of the replica set upon which the object has been deleted and upon which the tombstone indicating the deletion of the object has been deleted; comparing version information of the member of the replica set with version information of the different member of the replica set; determining when the object on the member of the replica set is subsumed by the different member of the replica set; and when having determined that the object on the member of the replica set is subsumed by the version information of the different member of the replica set, deleting the object or modified form of the object from the member of the replica set. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
Specification