US 12,255,978 B2
Ensuring properly ordered events in a distributed computing environment
David Alves, Austin, TX (US); and Todd Lipcon, San Francisco, CA (US)
Assigned to CLOUDERA, INC., Santa Clara, CA (US)
Filed by Cloudera, Inc., Santa Clara, CA (US)
Filed on Jul. 21, 2023, as Appl. No. 18/357,021.
Application 18/357,021 is a continuation of application No. 17/836,909, filed on Jun. 9, 2022, granted, now 11,758,029.
Application 17/836,909 is a continuation of application No. 17/064,507, filed on Oct. 6, 2020, granted, now 11,388,271, issued on Jul. 12, 2022.
Application 17/064,507 is a continuation of application No. 16/895,947, filed on Jun. 8, 2020, granted, now 11,146,668, issued on Dec. 21, 2021.
Application 16/895,947 is a continuation of application No. 16/198,677, filed on Nov. 21, 2018, granted, now 10,681,190, issued on Jun. 9, 2020.
Application 16/198,677 is a continuation of application No. 14/462,445, filed on Aug. 18, 2014, granted, now 10,171,635, issued on Jan. 1, 2019.
Claims priority of provisional application 61/911,720, filed on Dec. 4, 2013.
Prior Publication US 2024/0015234 A1, Jan. 11, 2024
Int. Cl. H04L 69/28 (2022.01); G06F 1/14 (2006.01); G06F 11/07 (2006.01); G06Q 10/00 (2023.01); G06Q 50/26 (2024.01); H04L 67/10 (2022.01)
CPC H04L 69/28 (2013.01) [G06F 1/14 (2013.01); G06F 11/0721 (2013.01); G06F 11/0772 (2013.01); G06Q 10/00 (2013.01); G06Q 50/26 (2013.01); H04L 67/10 (2013.01)] 17 Claims
OG exemplary drawing
 
1. A method comprising:
in response to a request involving a plurality of events processed by a plurality of different servers in a distributed computing system, obtaining hybrid timestamps for the plurality of events from the plurality of different servers, wherein each hybrid timestamp comprises a locally determined time value and a global logical sequence number;
determining an order of the plurality of events based on comparing the hybrid timestamps for each of the plurality of events, wherein the hybrid timestamps are compared first with respect to the locally determined time value and then with respect to the global logical sequence number if the plurality of events are causally related; and
processing the request according to the order of the plurality of events.