Distributed code repository with limited synchronization locking
First Claim
Patent Images
1. A system, comprising:
- a hardware processor configured to;
receive a request to change a portion of code;
determine a change reference associated with the code and an existing reference associated with the code;
indicate to lock a plurality of repositories of a distributed repository with access to the code;
request the plurality of repositories to approve the request to change the portion of code;
receive a corresponding vote from each repository of the plurality of repositories;
determine whether swapping references is approved by a majority of the plurality of repositories based on the corresponding votes;
in response to determining that swapping references is approved by the majority of the plurality of repositories;
modify the code by swapping the existing reference associated with the code with the change reference associated with the code; and
indicate to unlock the plurality of repositories; and
a memory coupled to the hardware processor and configured to provide the hardware processor with instructions.
2 Assignments
0 Petitions
Accused Products
Abstract
A system for a distributed repository includes an input interface and a processor. The input interface is to receive a request to change a portion of code. The processor is to determine a change reference and an existing reference, indicate to lock one or more repositories, determine whether swapping references is approved by a vote, and in the event that swapping references is approved by a vote, swap the references and indicate to unlock the one or more repositories.
-
Citations
17 Claims
-
1. A system, comprising:
-
a hardware processor configured to; receive a request to change a portion of code; determine a change reference associated with the code and an existing reference associated with the code; indicate to lock a plurality of repositories of a distributed repository with access to the code; request the plurality of repositories to approve the request to change the portion of code; receive a corresponding vote from each repository of the plurality of repositories; determine whether swapping references is approved by a majority of the plurality of repositories based on the corresponding votes; in response to determining that swapping references is approved by the majority of the plurality of repositories; modify the code by swapping the existing reference associated with the code with the change reference associated with the code; and indicate to unlock the plurality of repositories; and a memory coupled to the hardware processor and configured to provide the hardware processor with instructions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method, comprising:
-
receiving a request to change a portion of code; determining, using a hardware processor, a change reference associated with the code and an existing reference associated with the code; indicating to lock a plurality of repositories of a distributed repository with access to the code; requesting the plurality of repositories to approve the request to change the portion of code; receiving a corresponding vote from each repository of the plurality of repositories; determining whether swapping references is approved by a majority of the plurality of repositories based on the corresponding votes; and in response to determining that swapping references is approved by the majority of the plurality of repositories; modifying the code by swapping the existing reference associated with the code with the change reference associated with the code; and indicating to unlock the plurality of repositories.
-
-
17. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:
-
receiving a request to change a portion of code; determining, using a processor, a change reference associated with the code and an existing reference associated with the code; indicating to lock a plurality of repositories of a distributed repository with access to the code; requesting the plurality of repositories to approve the request to change the portion of code; receiving a corresponding vote from each repository of the plurality of repositories; determining whether swapping references is approved by a majority of the plurality of repositories based on the corresponding votes; and in response to determining that swapping references is approved by the majority of the plurality of repositories; modifying the code by swapping the existing reference associated with the code with the change reference associated with the code; and indicating to unlock the plurality of repositories.
-
Specification