US 11,853,263 B2
Geographically-distributed file system using coordinated namespace replication over a wide area network
Konstantin V Shvachko, Fremont, CA (US); Yeturu Aahlad, Foster City, CA (US); Jagane Sundar, Saratoga, CA (US); and Plamen Jeliazkov Jeliazkov, San Jose, CA (US)
Assigned to CIRATA, INC., San Ramon, CA (US)
Filed by WANdisco, Inc., San Ramon, CA (US)
Filed on Aug. 27, 2020, as Appl. No. 17/004,421.
Application 17/004,421 is a continuation of application No. 15/276,455, filed on Sep. 26, 2016, granted, now 10,795,863.
Application 15/276,455 is a continuation of application No. 14/231,311, filed on Mar. 31, 2014, granted, now 9,495,381, issued on Nov. 15, 2016.
Prior Publication US 2021/0042266 A1, Feb. 11, 2021
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/17 (2019.01); G06F 16/178 (2019.01); G06F 16/182 (2019.01); H04L 67/1095 (2022.01)
CPC G06F 16/178 (2019.01) [G06F 16/182 (2019.01); G06F 16/1844 (2019.01); H04L 67/1095 (2013.01)] 27 Claims
OG exemplary drawing
 
1. A computer-implemented method of maintaining a state of a single namespace of a distributed file system in a computer network, the method comprising:
storing the state of the single namespace of the distributed file system as separate instances in respective local persistent storage coupled to each of a plurality of simultaneously-active peer server node computing devices coupled to the computer network;
receiving, in at least some of the plurality of server node computing devices, at least one request to change the state of the single namespace from at least one of a plurality of data node computing devices coupled to the computer network;
responsive to the received at least one request, generating, by a plurality of distributed coordination engine agents that are in communication with each other, an ordered set of namespace modifications specifying an order in which the plurality simultaneously-active peer server node computing devices are to update the state of the separate instances of the single namespace stored in the respective local persistent storages coupled thereto; and
sending the ordered set of namespace modifications to each of the plurality simultaneously-active peer server node computing devices for execution such that the state of the single namespace stored in the respective local persistent storages evolves identically.