Patent ID: 9116972
Filing Date: 2015-08-25
Classification: G06F

Abstract:
1. A method of synchronising at least first and second instances of an information set comprising a plurality of entries, wherein said at least first and second instances are located on different nodes of a system, the method comprising: attaching a single node value and current logical clock value pair to, in a case in which there is no previously-attached single node value and logical clock value pair, and in a case in which there is a single node value and current logical clock value pair that was previously attached, replacing the previous single node value and logical clock value pair with a new single node value and current logical clock value pair for, each particular entry of the plurality of entries in the information set of a given instance when said each particular entry in the given instance is changed; generating respective digests, distinct from the node value and current logical clock value pairs corresponding to particular entries and distinct from the entries, for each of the at least first and second instances of the information set, wherein said digests comprise logical clock information of a last synchronisation event of one of the at least first and second instances of the information set with each of the other at least first and second instances of the information set; and synchronising the at least first and second instances of the information set by comparing the digests and reconciling the at least first and second instances on an entry-by-entry basis, wherein the synchronising is performed in a bi-directional manner between two of the at least two instances of the information set, wherein at least one entry of one instance of the information set being synchronised is updated based on a corresponding entry of the other instance of the information set being synchronised, and wherein at least one entry of the other instance of the information set being synchronised is updated based on a corresponding entry of the one instance of the information set being synchronized; wherein an entry for a respective node in the digest comprises a node value and logical clock value pair for the node of the system; and wherein an entry for a respective node in the digest additionally includes a conflict priority value for the node of the system.