Implicit leader election in a distributed storage network
First Claim
1. A computing device comprising:
- an interface configured to interface and communicate with a dispersed or distributed storage network (DSN);
memory that stores operational instructions;
a processing module operably coupled to the interface and to the memory, wherein the processing module, when operable within the computing device based on the operational instructions, is configured to;
receive, from a requesting computing device and via the DSN, a request to store a data object within a plurality of distributed storage (DS) units;
generate a proposal message that includes a source name associated with the data object, a first value for the source name, and a proposal attempt identifier;
transmit the proposal message to the plurality of DS units;
receive, in response to the proposal message, a threshold number of proposal message responses from the plurality of DS units, wherein a proposal message response of the threshold number of proposal message responses is received from a DS unit of the plurality of DS units and corresponds to a second value for the source name that is most recently accepted by the DS unit and further indicates whether the DS unit of the plurality of DS units has received any other proposal message;
when the proposal message response of the threshold number of proposal message responses that is received from the DS unit of the plurality of DS units indicates that no other proposal messages has been received by the DS unit of the plurality of DS units, employ the first value for the source name included within the proposal message as a persistent value for the source name and notify the requesting computing device of the persistent value for the source name; and
when the proposal message response of the threshold number of proposal message responses that is received from the DS unit of the plurality of DS units indicates that at least one other proposal message has been received by the DS unit of the plurality of DS units, employ a third value for the source name based on the threshold number of proposal message responses from the plurality of DS units as the persistent value for the source name and notify the requesting computing device of the persistent value for the source name.
1 Assignment
0 Petitions
Accused Products
Abstract
A method begins by a processing module receiving a request to store a data object in distributed storage (DS) units. The processing module generates and transmits a proposal message that includes a source name, a value for the source name, and a proposal attempt identifier. The processing module then receives a threshold number of proposal message responses from the plurality of DS units, and when the proposal message responses indicate that no other proposal messages have been received by the DS units, uses the value for the source name included within the proposal message as a persistent value for the source name, and the method continues with the processing module notifying the requesting computing device. When the proposal message responses indicate that at least one other proposal message has been received by the DS unit of the plurality of DS units, the method continues with the processing module employing a third value for the source name as the persistent value for the source name.
-
Citations
20 Claims
-
1. A computing device comprising:
-
an interface configured to interface and communicate with a dispersed or distributed storage network (DSN); memory that stores operational instructions; a processing module operably coupled to the interface and to the memory, wherein the processing module, when operable within the computing device based on the operational instructions, is configured to; receive, from a requesting computing device and via the DSN, a request to store a data object within a plurality of distributed storage (DS) units; generate a proposal message that includes a source name associated with the data object, a first value for the source name, and a proposal attempt identifier; transmit the proposal message to the plurality of DS units; receive, in response to the proposal message, a threshold number of proposal message responses from the plurality of DS units, wherein a proposal message response of the threshold number of proposal message responses is received from a DS unit of the plurality of DS units and corresponds to a second value for the source name that is most recently accepted by the DS unit and further indicates whether the DS unit of the plurality of DS units has received any other proposal message; when the proposal message response of the threshold number of proposal message responses that is received from the DS unit of the plurality of DS units indicates that no other proposal messages has been received by the DS unit of the plurality of DS units, employ the first value for the source name included within the proposal message as a persistent value for the source name and notify the requesting computing device of the persistent value for the source name; and when the proposal message response of the threshold number of proposal message responses that is received from the DS unit of the plurality of DS units indicates that at least one other proposal message has been received by the DS unit of the plurality of DS units, employ a third value for the source name based on the threshold number of proposal message responses from the plurality of DS units as the persistent value for the source name and notify the requesting computing device of the persistent value for the source name. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:
-
receiving, from a requesting computing device and via the DSN, a request to store a data object within a plurality of distributed storage (DS) units; generating a proposal message that includes a source name associated with the data object, a first value for the source name, and a proposal attempt identifier; transmitting the proposal message to the plurality of DS units; receiving, in response to the proposal message, a threshold number of proposal message responses from the plurality of DS units, wherein a proposal message response of the threshold number of proposal message responses is received from a DS unit of the plurality of DS units and corresponds to a second value for the source name that is most recently accepted by the DS unit and further indicates whether the DS unit of the plurality of DS units has received any other proposal message; when the proposal message response of the threshold number of proposal message responses that is received from the DS unit of the plurality of DS units indicates that no other proposal messages has been received by the DS unit of the plurality of DS units, employing the first value for the source name included within the proposal message as a persistent value for the source name and notifying the requesting computing device of the persistent value for the source name; and when the proposal message response of the threshold number of proposal message responses that is received from the DS unit of the plurality of DS units indicates that at least one other proposal message has been received by the DS unit of the plurality of DS units, employing a third value for the source name based on the threshold number of proposal message responses from the plurality of DS units as the persistent value for the source name and notifying the requesting computing device of the persistent value for the source name. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:
-
receiving, by a computing device, an access request intended for a threshold number of storage units of a dispersed storage network (DSN), wherein the access request is for a value associated with a source name, and further wherein the computing device has received one or more proposal message responses from at least some of the threshold number of storage units; determining whether the value associated with the source name is a persistent value for the source name, wherein the determining is based on the computing device having received a threshold number of proposal message responses from the threshold number of storage units, and further wherein the determining is also based on whether threshold proposal message responses indicate that a consensus value has been determined for the value associated with the source name; and when the value associated with the source name is the persistent value for the source name, transmitting the value associated with the source name to the requesting computing device. - View Dependent Claims (20)
-
Specification