Maintaining data concurrency with a dispersed storage network
First Claim
1. A method for a dispersed storage network (DSN) client to maintain concurrency of data with a DSN memory, wherein a segment of the data is encoded into a set of encoded data slices using a dispersed storage error coding function and the set of encoded data slices is stored in the DSN memory, the method comprises:
- generating a transaction number; and
generating at least a threshold number of DSN concurrency requests, wherein;
each of the at least the threshold number of DSN concurrency requests includes a header section and a payload section; and
each of the payload sections includes the transaction number, a last known slice revision number, and a slice name section, wherein;
a first slice name section of a first one of the payload sections includes one or more first slice names that includes a first slice name corresponding to a first encoded data slice of the set of encoded data slices; and
a second slice name section of a second one of the payload sections includes one or more second slice names that includes a second slice name corresponding to a second encoded data slice of the set of encoded data slices.
5 Assignments
0 Petitions
Accused Products
Abstract
A method begins by a processing module generating a transaction number and generating at least a threshold number of dispersed storage network (DSN) concurrency requests, wherein each of the at least the threshold number of DSN concurrency requests includes a header section and a payload section; each of the payload sections includes the transaction number, a last known slice revision number, and a slice name section, wherein a first slice name section of a first one of the payload sections includes one or more first slice names that includes a first slice name corresponding to a first encoded data slice of a set of encoded data slices; and a second slice name section of a second one of the payload sections includes one or more second slice names that includes a second slice name corresponding to a second encoded data slice of the set of encoded data slices.
84 Citations
16 Claims
-
1. A method for a dispersed storage network (DSN) client to maintain concurrency of data with a DSN memory, wherein a segment of the data is encoded into a set of encoded data slices using a dispersed storage error coding function and the set of encoded data slices is stored in the DSN memory, the method comprises:
-
generating a transaction number; and generating at least a threshold number of DSN concurrency requests, wherein; each of the at least the threshold number of DSN concurrency requests includes a header section and a payload section; and each of the payload sections includes the transaction number, a last known slice revision number, and a slice name section, wherein; a first slice name section of a first one of the payload sections includes one or more first slice names that includes a first slice name corresponding to a first encoded data slice of the set of encoded data slices; and a second slice name section of a second one of the payload sections includes one or more second slice names that includes a second slice name corresponding to a second encoded data slice of the set of encoded data slices. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method comprises:
-
receiving one of at least a threshold number of dispersed storage network (DSN) concurrency requests that includes a header section and a payload section, wherein the payload section includes a transaction number, a last known slice revision number, and a slice name section; and in response to the one of at least the threshold number of DSN concurrency requests; determining a most recent slice revision number based on a slice name contained in the slice name section; when the most recent slice revision number substantially matches the last known slice revision number; generating a DSN concurrency response to include a header section and a payload section, wherein the payload section includes a revision match status indication and a slice revision count regarding the slice name; and when the most recent slice revision number does not substantially match the last known slice revision number; generating the DSN concurrency response to include the header section and the payload section, wherein the payload section includes a revision mismatch status indication, the slice revision count regarding the slice name, one or more slice revision numbers corresponding to the slice name, one or more slice lengths corresponding to the slice name, and one or more encoded data slices corresponding to the slice name. - View Dependent Claims (7, 8)
-
-
9. A non-transitory computer readable memory device, wherein a dispersed storage network (DSN) client is operable to maintain concurrency of data with a DSN memory, wherein a segment of the data is encoded into a set of encoded data slices using a dispersed storage error coding function and the set of encoded data slices is stored in the DSN memory, the non-transitory computer readable storage memory device comprises:
-
a first memory section that stores operational instructions that, when executed by a processing module of the DSN client, causes the processing module to generate a transaction number; and a second memory section that stores operational instructions that, when executed by the processing module, causes the processing module to generate at least a threshold number of DSN concurrency requests, wherein; each of the at least the threshold number of DSN concurrency requests includes a header section and a payload section; and each of the payload sections includes the transaction number, a last known slice revision number, and a slice name section, wherein; a first slice name section of a first one of the payload sections includes one or more first slice names that includes a first slice name corresponding to a first encoded data slice of the set of encoded data slices; and a second slice name section of a second one of the payload sections includes one or more second slice names that includes a second slice name corresponding to a second encoded data slice of the set of encoded data slices. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A non-transitory computer readable memory device comprises:
-
a first memory section that stores operational instructions that, when executed by a computing device, causes the computing device to receive one of at least a threshold number of dispersed storage network (DSN) concurrency requests that includes a header section and a payload section, wherein the payload section includes a transaction number, a last known slice revision number, and a slice name section; and in response to the one of at least the threshold number of DSN concurrency requests; a second memory section that stores operational instructions that, when executed by the computing device, causes the computing device to determine a most recent slice revision number based on a slice name contained in the slice name section; when the most recent slice revision number substantially matches the last known slice revision number; a third memory section that stores operational instructions that, when executed by the computing device, causes the computing device to generate a DSN concurrency response to include a header section and a payload section, wherein the payload section includes a revision match status indication and a slice revision count regarding the slice name; and when the most recent slice revision number does not substantially match the last known slice revision number; the third memory section further stores operational instructions that, when executed by the computing device, causes the computing device to generating the DSN concurrency response to include the header section and the payload section, wherein the payload section includes a revision mismatch status indication, the slice revision count regarding the slice name one or more slice revision numbers corresponding to the slice name, one or more slice lengths corresponding to the slice name, and one or more encoded data slices corresponding to the slice name. - View Dependent Claims (15, 16)
-
Specification