×

Network partition tolerance in a high available centralized VCS implementation

  • US 10,467,198 B2
  • Filed: 02/16/2017
  • Issued: 11/05/2019
  • Est. Priority Date: 09/15/2016
  • Status: Active Grant
First Claim
Patent Images

1. A non-transitory computer readable medium including one or more instructions executable by one or more processors for:

  • receiving at a first node of a system containing a plurality of nodes, an action providing requested changes to a file that is common to at least a second node and stored in a database locked from allowing changes to the file by a database lock, wherein the first node and the second node are isolated by a network partition;

    analyzing attributes of the action to determine whether the action received is required to update the file;

    analyzing the requested changes to the file to determine substantive changes to the file and changes to the file that do not change substantive content of the file;

    receiving a variable level of the requested changes specifying one or more substantive changes to the file and one or more changes to the file that do not change substantive content of the file, to be accepted or rejected;

    rejecting and accepting the substantive changes to the tile and the changes to the file that do not change substantive content of the tile according to the variable level;

    synchronizing substantive changes to the file and rejecting changes to the file that are informational;

    in response to determining that the action is required to update the file, determining from a data repository whether a database update action is set as unlocked;

    if the database update action is set as unlocked then querying the data repository associated with the first node to determine revision information pertaining to the file;

    determining from the revision information whether the file is a latest revision associated with required changes to the file;

    if the file is the latest revision, then unlocking the data repository;

    committing the changes to the data repository;

    in response to committing the changes to the data repository, updating the revision of the file in the data repository based on the changes; and

    in response to committing the changes to the data repository and updating the revision of the data repository, releasing the database lock and updating the file with the changes.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×