US 12,380,092 B1
Ensuring globally consistent transactions
Wilson Cheng-Yi Hsieh, Syosset, NY (US); Alexander Lloyd, New York, NY (US); Peter Hochschild, New York, NY (US); Michael James Boyer Epstein, Brooklyn, NY (US); and Sean Quinlan, Palo Alto, CA (US)
Assigned to Google LLC, Mountain View, CA (US)
Filed by Google LLC, Mountain View, CA (US)
Filed on Aug. 23, 2023, as Appl. No. 18/236,995.
Application 18/236,995 is a continuation of application No. 17/875,780, filed on Jul. 28, 2022, granted, now 11,789,938.
Application 17/875,780 is a continuation of application No. 16/023,326, filed on Jun. 29, 2018, granted, now 11,442,925, issued on Sep. 13, 2022.
Application 16/023,326 is a continuation of application No. 15/358,428, filed on Nov. 22, 2016, granted, now 10,042,881, issued on Aug. 7, 2018.
Application 15/358,428 is a continuation of application No. 13/905,637, filed on May 30, 2013, granted, now 9,569,253, issued on Feb. 14, 2017.
Claims priority of provisional application 61/655,386, filed on Jun. 4, 2012.
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/23 (2019.01); G06F 9/46 (2006.01); G06F 16/14 (2019.01); G06F 16/2458 (2019.01)
CPC G06F 16/2379 (2019.01) [G06F 9/466 (2013.01); G06F 16/148 (2019.01); G06F 16/2322 (2019.01); G06F 16/2477 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A distributed system having one or more processors and one or more storage devices, the distributed system comprising:
one or more time masters;
a time synchronization daemon in communication with the one or more time masters, the time synchronization daemon configured to synchronize local time by:
periodically querying the one or more time masters;
tracking round-trip delays associated with querying the one or more time masters, each round-trip delay indicating an amount of time between sending a query to one of the time masters and receiving a response to the query from the one of the time masters; and
calculating a current-time interval based on the round-trip delays; and
a library interface in communication with the one or more time masters and the time synchronization daemon, the library interface configured to provide applications with the current-time interval that contains a current true time for causally timestamping transactions occurring across different geographic locations.