Recovering data from corrupted encoded data slices
First Claim
1. 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 a set of encoded data slices, wherein some encoded data slices of the set of encoded data slices have an integrity issue such that less than a decode threshold number of encoded data slices have valid integrity;
creating a received coded matrix from the set of encoded data slices;
creating a plurality of partial coded matrices from the received coded matrix, wherein each of the plurality of partial coded matrices includes at least one encoded data block from at least one of the some of the encoded data slices having the integrity issue;
generating a plurality of partial decoding matrices from a decoding matrix;
generating a test data matrix based on the plurality of partial coded matrices and the plurality of partial decoding matrices;
encoding the test data matrix into a set of test encoded data slices;
generating integrity information for the set of test encoded data slices;
when the integrity information is valid, utilizing the test data matrix as a data matrix; and
converting the data matrix into a recovered data segment.
5 Assignments
0 Petitions
Accused Products
Abstract
A method begins by a dispersed storage (DS) processing module receiving a set of encoded data slices, where some of the encoded data slices have an integrity issue such that less than a decode threshold number of encoded data slices have valid integrity. The method continues with the DS processing module creating partial coded matrices from the set of encoded data slices and generating partial decoding matrices. The method continues with the DS processing module generating a test data matrix based on the partial coded matrices and the partial decoding matrices, encoding the test data matrix into a set of test encoded data slices, and generating integrity information for the set of test encoded data slices. When the integrity information is valid, the method continues with the DS processing module utilizing the test data matrix as a data matrix and converting the data matrix into a recovered data segment.
84 Citations
12 Claims
-
1. 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 a set of encoded data slices, wherein some encoded data slices of the set of encoded data slices have an integrity issue such that less than a decode threshold number of encoded data slices have valid integrity; creating a received coded matrix from the set of encoded data slices; creating a plurality of partial coded matrices from the received coded matrix, wherein each of the plurality of partial coded matrices includes at least one encoded data block from at least one of the some of the encoded data slices having the integrity issue; generating a plurality of partial decoding matrices from a decoding matrix; generating a test data matrix based on the plurality of partial coded matrices and the plurality of partial decoding matrices; encoding the test data matrix into a set of test encoded data slices; generating integrity information for the set of test encoded data slices; when the integrity information is valid, utilizing the test data matrix as a data matrix; and converting the data matrix into a recovered data segment. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A dispersed storage (DS) module comprises:
-
a receiving module, when operable within a computing device, causes the computing device to; receive a set of encoded data slices, wherein some encoded data slices of the set of encoded data slices have an integrity issue such that less than a decode threshold number of encoded data slices have valid integrity; and create a received coded matrix from the set of encoded data slices; a consensus decoding module, when operable within the computing device, causes the computing device to; create a plurality of partial coded matrices from the received coded matrix, wherein each of the plurality of partial coded matrices includes at least one encoded data block from at least one of the some of the encoded data slices having the integrity issue; generate a plurality of partial decoding matrices from a decoding matrix; generate a test data matrix based on the plurality of partial coded matrices and the plurality of partial decoding matrices; encode the test data matrix into a set of test encoded data slices; generate integrity information for the set of test encoded data slices; when the integrity information is valid, utilize the test data matrix as a data matrix; and convert the data matrix into a recovered data segment. - View Dependent Claims (8, 9, 10, 11, 12)
-
Specification