METHODS AND SYSTEMS FOR HALTING SYNCHRONIZATION LOOPS IN A DISTRIBUTED SYSTEM
First Claim
1. A method of providing consistent resolution for synchronization conflicts in order to reduce infinite synchronization loops within a distributed system, the method comprising:
- receiving remote device data that includes a remote property needing to be synchronized with a local property, the remote device data having been input at a first remote device;
accessing local machine data that includes the local property needing to be synchronized with the remote property;
after receiving the remote device data and accessing the local machine data, determining that a conflict exists between the remote property and the local property; and
in response to determining that the conflict exists;
applying a conflict resolution algorithm to generate a remote value from the remote property and generate a local value from the local property; and
selecting the local property or the remote property based on use of the remote and local values with data selection criteria, wherein the data selection criteria is used to compare the remote value and the local value, and select one of the remote value or the local value based on data selection criteria that does not include time/date information.
2 Assignments
0 Petitions
Accused Products
Abstract
The present provides for consistent resolution of data conflicts when synchronizing data between two or more devices in order to reduce the likelihood of an infinite synchronization loop within a distributed computing system. More particularly, example embodiments provide for a conflict resolution algorithm capable of generating unique values for properties that are in conflict. Data selection criteria can then be used to determine which of the properties should be used to resolve the conflict. Such data selection criterion increases the likelihood of providing consistent resolution of similar data conflicts between other devices in the distributed system.
26 Citations
20 Claims
-
1. A method of providing consistent resolution for synchronization conflicts in order to reduce infinite synchronization loops within a distributed system, the method comprising:
-
receiving remote device data that includes a remote property needing to be synchronized with a local property, the remote device data having been input at a first remote device; accessing local machine data that includes the local property needing to be synchronized with the remote property; after receiving the remote device data and accessing the local machine data, determining that a conflict exists between the remote property and the local property; and in response to determining that the conflict exists; applying a conflict resolution algorithm to generate a remote value from the remote property and generate a local value from the local property; and selecting the local property or the remote property based on use of the remote and local values with data selection criteria, wherein the data selection criteria is used to compare the remote value and the local value, and select one of the remote value or the local value based on data selection criteria that does not include time/date information. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer readable storage medium having stored thereon computer executable instructions that, when executed by one or more processors, cause a computing system to perform a method of providing consistent resolution for synchronization conflicts in order to reduce infinite synchronization loops within a distributed system, the method comprising:
-
receiving remote device data that includes a remote property needing to be synchronized with a local property, the remote device data having been input at a first remote device; accessing local machine data that includes the local property needing to be synchronized with the remote property; after receiving the remote device data and accessing the local machine data, determining that a conflict exists between the remote property and the local property; and in response to determining that the conflict exists; applying a conflict resolution algorithm to generate a remote value from the remote property and generate a local value from the local property; and selecting the local property or the remote property based on use of the remote and local values with data selection criteria, wherein the data selection criteria is used to compare the remote value and the local value, and select one of the remote value or the local value based on data selection criteria that does not include time/date information. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computing system providing consistent resolution for synchronization conflicts in order to reduce infinite synchronization loops within a distributed system, the computing system comprising:
-
one or more processors; one or more computer readable media communicatively coupled to the one or more processors, wherein the one or more computer readable media includes computer-executable instructions that, when executed cause the computing system to; receive remote device data that includes a remote property needing to be synchronized with a local property, the remote device data having been input at a first remote device; access local machine data that includes the local property needing to be synchronized with the remote property; after receiving the remote device data and accessing the local machine data, determine that a conflict exists between the remote property and the local property; and in response to determining that the conflict exists; apply a conflict resolution algorithm to generate a remote value from the remote property and generate a local value from the local property; and select the local property or the remote property based on use of the remote and local values with data selection criteria, wherein the data selection criteria is used to compare the remote value and the local value, and select one of the remote value or the local value based on data selection criteria that does not include time/date information, and wherein one or more of the remote device or the local device is incapable of storing time/date information for the remote property or local property, respectively.
-
Specification