Patent ID: 9197483
Filing Date: 2015-11-24
Classification: G06F,H04L

Abstract:
1. A method for coordinating events in a distributed system, comprising: synchronizing a first local clock at a first gateway with the master clock within a system skew threshold, and synchronizing a second local clock at a second gateway with the master clock within the system skew threshold, wherein the master clock is synchronized to coordinated universal time with a master skew threshold; receiving, at the first gateway, a first request to manipulate a non-volatile data storage, and marking the first request with the time of reception according to the first local clock, with a granularity at least equal to the system skew threshold; receiving, at the second gateway, a second request to manipulate the non-volatile data storage, and marking the second request with the time of reception according to the second local clock, with a granularity at least equal to the system skew threshold; evaluating the first request and the second request to determine if they are unambiguously ordered by determining if the first request and the second request are temporally ordered with a granularity greater than the system skew threshold; determining that the first request and the second request are not unambiguously ordered; and modifying, based on determining that the first and second requests are not unambiguously ordered, the non-volatile data storage as directed by a deterministic tiebreaker.