US 11,748,333 B2
Verifying data consistency using verifiers in a content management system for a distributed key-value database
Preslav Le, Belmont, CA (US); Braden Walker, San Francisco, CA (US); Leslie Tu, San Francisco, CA (US); Tanay Lathia, San Francisco, CA (US); Alexander Sosa, San Francisco, CA (US); and Lihao He, San Mateo, CA (US)
Assigned to DROPBOX, INC., San Francisco, CA (US)
Filed by Dropbox, Inc., San Francisco, CA (US)
Filed on Jun. 30, 2021, as Appl. No. 17/364,606.
Prior Publication US 2023/0004550 A1, Jan. 5, 2023
Int. Cl. G06F 16/23 (2019.01); G06F 16/22 (2019.01)
CPC G06F 16/2365 (2019.01) [G06F 16/2272 (2019.01)] 17 Claims
OG exemplary drawing
 
1. A method for checking data consistency in a distributed key-value pair database, the method comprising:
maintaining a plurality of verifiers for verifying data consistency in the database, wherein each verifier comprises a set of instructions for verifying data consistency for a type of request;
processing, by a content item management system, a plurality of requests, wherein processing each request comprises performing, by the content item management system one or more operations;
selecting a request from the processed plurality of requests, wherein the selected request was processed at a first timestamp, received a first response, and specified a set of one or more parameters;
identifying a verifier from the plurality of verifiers to verify data consistency associated with the selected request; and
verifying, by the identified verifier, data consistency associated with the selected request, the verification comprising:
sending a replay request corresponding to the selected request, the replay request including the set of parameters, wherein the replay request is sent at a second timestamp after the first timestamp, the first timestamp and the second timestamp separated by a predefined holdoff period;
receiving a second response associated with the replay request;
determining whether the second response is consistent with the first response; and
based on a determination that the second response is not consistent with the first response, outputting information describing data inconsistency.