US 11,657,035 B2
Methods, devices and systems for real-time checking of data consistency in a distributed heterogenous storage system
Granville Lynn Barnett, Newtownabbey (GB); and Yeturu Aahlad, Foster City, CA (US)
Assigned to WANdisco, Inc., San Ramon, CA (US)
Filed by WANdisco, Inc., San Ramon, CA (US)
Filed on Jul. 20, 2021, as Appl. No. 17/380,054.
Application 17/380,054 is a continuation of application No. 16/141,335, filed on Sep. 25, 2018, granted, now 11,100,086.
Prior Publication US 2022/0043800 A1, Feb. 10, 2022
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/00 (2019.01); G06F 16/23 (2019.01)
CPC G06F 16/2365 (2019.01) 24 Claims
OG exemplary drawing
 
1. A computer-implemented method, comprising:
executing, by a first plurality of replicated state machines, a sequence of ordered agreements to make mutations to a data stored in a first data storage service of a first type;
executing, by a second plurality of replicated state machines, the sequence of ordered agreements to make the mutations to the data stored in a second data storage service of a second type that is different than the first type;
receiving and storing first storage service agnostic metadata of the mutated data stored in the first data storage service and receiving and storing second storage service agnostic metadata of the mutated data stored in the second data storage service;
comparing the received first and second storage service agnostic metadata to determine whether the received first storage service agnostic metadata is equivalent to the received second storage service agnostic metadata; and
when the comparison indicates that the received first storage service agnostic metadata is not equivalent to the received second storage service agnostic metadata, carrying out one of:
replacing at least part of the data stored in the second data storage service that corresponds to the received second storage service agnostic metadata data with at least part of the data stored in the first data storage service that corresponds to the received storage service agnostic metadata, and
rolling back at least part of the data stored in the second data storage service that corresponds to the received second storage service agnostic metadata data and at least part of the data stored in the first data storage service that corresponds to the received storage service agnostic metadata to a previous state.