IP Library Granted Patent US 10,318,380
Granted Patent B2
US 10,318,380 · App. 16/031,488 · Granted Jun 11, 2019

Multi-stage slice recovery in a dispersed storage network

Inventor: Jason K. Resch (Chicago, IL)
Assignee: International Business Machines Corporation
G06F11/1076G06F3/064G06F3/065G06F3/067G06F3/0619G06F11/1662G06F16/22G06F16/2471G06F16/24578G06F16/27G06F16/273H03M13/33H03M13/3761H04L65/4076H04L67/06H04L67/1095H04L67/1097H04L67/16G06F2201/805H03M13/1515
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,318,380
App. No.
16/031,488
Granted
Jun 11, 2019
Kind
B2
Abstract

A method and computing device for use in a dispersed storage network (DSN) to recover corrupt encoded data slices. In response to a request to storage units of the DSN for encoded data slices corresponding to a data segment, the computing device of a receives at least a decode threshold number of encoded data slices and at least one integrity error message that provides an indication of a corrupt encoded data slice, such that less than a decoded threshold number of valid slices is received. Utilizing at least one correction approach involving stored integrity data, the computing device then corrects the corrupt slice(s) to produce a decode threshold number of encoded data slices in order to decode the corresponding data segment. A variety of correction approaches may be employed, including a multi-stage approach that utilizes data from both valid and invalid slices.

Claims (15)

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:

in response to a request for encoded data slices of an encoded portion of a corresponding data segment, receiving at least a decode threshold number of encoded data slices from a set of storage units of the DSN in which the encoded data slices are stored, the encoded data slices including at least one encoded data slice identified as corrupt by a storage unit of the set of storage units (“at least one corrupt encoded data slice”) and less than a decoded threshold number of encoded data slices identified as valid by the set of storage units;

applying stored integrity information corresponding to the at least one encoded data slice identified as corrupt to determine if the at least one encoded data slice is valid; and

in response to determining that the at least one encoded data slice is not valid, correcting the at least one corrupt encoded data slice utilizing stored additional integrity information and at least one correction approach to produce the decode threshold number of encoded data slices.

2. The method of claim 1 , further comprising:

decoding the decode threshold number of encoded data slices to generate the corresponding data segment.

3. The method of claim 1 , wherein correcting the at least one corrupt encoded data slice includes:

selecting a first correction approach based on available additional integrity information;

attempting to correct the at least one corrupt encoded data slice using the first correction approach;

in response to determining that the first correction approach was not successful, selecting a second correction approach based on the available additional integrity information; and

correcting the at least one corrupt encoded data slice using the second correction approach.

4. The method of claim 1 , the at least one correction approach utilizing slice substitution and available additional integrity information corresponding to a pre-encoded version of the corresponding data segment.

5. The method of claim 1 , wherein the at least one correction approach includes byte-by-byte recovery of the at least one corrupt encoded data slice utilizing valid bytes, in a common byte position, from a decode threshold number of encoded data slices.

6. The method of claim 1 , the at least one correction approach utilizing integrity information regarding the corresponding data segment.

7. The method of claim 1 , the at least one correction approach utilizing integrity information generated by a dispersed storage error encoding process during encoding of the encoded data slices.

Assignments (4)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 11, 2025
From: BARCLAYS BANK PLC, AS ADMINISTRATIVE AGENT
To: PURE STORAGE, INC.
Reel/Frame 071558/0523 →
SECURITY INTEREST Recorded Aug 26, 2020
From: PURE STORAGE, INC.
To: BARCLAYS BANK PLC AS ADMINISTRATIVE AGENT
Reel/Frame 053867/0581 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049556/0288 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2018
From: RESCH, JASON K.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 046308/0563 →
Continuity (3)
Division 15184614 · Jun 16, 2016
Provisional Application 62186590 · Jun 30, 2015
Related Publication 20180322009A1 · Nov 8, 2018