Patent attributes
A self-healing data synchronization process includes an initial stage in which a collection of data change events is received, a set of data record(s) corresponding to the data change event(s) is identified, and a syncing of the set of data record(s) is initiated. Data that indicates which data record(s) successfully synced and which failed is stored. During a subsequent stage of the self-healing process, data change events that occurred during a preceding time horizon are identified, a corresponding first set of data record(s) are identified, a difference between the first set and a second set of data record(s) that successfully synced during the time horizon is determined as a third set of data record(s), and any data record that was attempted to be synced during the time horizon but failed is excluded from the third set. A sync of any data record remaining in the third set is then initiated.