Optimistic data writing in a dispersed storage network
First Claim
1. A method comprises:
- dispersed storage error encoding data to produce a set of encoded data slices;
sending a set of write request messages to a set of dispersed storage (DS) units, wherein each of the set of write request messages includes an encoded data slice of the set of encoded data slices;
determining whether a pillar width number of favorable write response messages has been received within a write acknowledgement (ACK) time period;
when the pillar width number of favorable write response messages has not been received within the write ACK time period, executing a retry write process to at least one DS unit of the set of DS units from which a favorable write response message was not received during the write ACK time period;
when a write threshold number of favorable write response messages has been received within the write ACK time period, sending a set of commit transaction request messages to the set of DS units;
determining whether a pillar width number of favorable commit transaction response messages has been received within a commit ACK time period; and
when the pillar width number of favorable commit transaction response messages has not been received within the commit ACK time period, executing a retry commit process to at least one DS unit of the set of DS units from which a favorable commit transaction response message was not received during the write ACK time period.
5 Assignments
0 Petitions
Accused Products
Abstract
A method begins by a processing module dispersed storage error encoding data to produce a set of encoded data slices and sending a set of write request messages to a set of dispersed storage (DS) units, wherein each of the set of write request messages includes an encoded data slice of the set of encoded data slices. The method continues with the processing module determining whether a pillar width number of favorable write response messages has been received within a write acknowledgement (ACK) time period. The method continues with the processing module executing a retry write process to at least one DS unit of the set of DS units from which a favorable write response message was not received during the write ACK time period when the pillar width number of favorable write response messages has not been received within the write ACK time period.
90 Citations
14 Claims
-
1. A method comprises:
-
dispersed storage error encoding data to produce a set of encoded data slices; sending a set of write request messages to a set of dispersed storage (DS) units, wherein each of the set of write request messages includes an encoded data slice of the set of encoded data slices; determining whether a pillar width number of favorable write response messages has been received within a write acknowledgement (ACK) time period; when the pillar width number of favorable write response messages has not been received within the write ACK time period, executing a retry write process to at least one DS unit of the set of DS units from which a favorable write response message was not received during the write ACK time period; when a write threshold number of favorable write response messages has been received within the write ACK time period, sending a set of commit transaction request messages to the set of DS units; determining whether a pillar width number of favorable commit transaction response messages has been received within a commit ACK time period; and when the pillar width number of favorable commit transaction response messages has not been received within the commit ACK time period, executing a retry commit process to at least one DS unit of the set of DS units from which a favorable commit transaction response message was not received during the write ACK time period. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer comprises:
-
an interface; and a processing module operable to; dispersed storage error encode data to produce a set of encoded data slices; send, via the interface, a set of write request messages to a set of dispersed storage (DS) units, wherein each of the set of write request messages includes an encoded data slice of the set of encoded data slices; determine whether a pillar width number of favorable write response messages has been received, via the interface, within a write acknowledgement (ACK) time period; execute a retry write process to at least one DS unit of the set of DS units from which a favorable write response message was not received during the write ACK time period when the pillar width number of favorable write response messages has not been received within the write ACK time period; send, via the interface, a set of commit transaction request messages to the set of DS units when a write threshold number of favorable write response messages has been received, via the interface, within the write ACK time period; determine whether a pillar width number of favorable commit transaction response messages has been received, via the interface, within a commit ACK time period; and execute a retry commit process to at least one DS unit of the set of DS units from which a favorable commit transaction response message was not received, via the interface, during the write ACK time period when the pillar width number of favorable commit transaction response messages has not been received, via the interface, within the commit ACK time period. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
Specification