IP Library Granted Patent US 10,013,207
Granted Patent B2
US 10,013,207 · App. 15/272,968 · Granted Jul 3, 2018

Considering object health of a multi-region object

Inventor: Wesley B. Leggette (Chicago, IL)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F3/0653G06F3/064G06F3/067G06F3/0611G06F3/0619G06F3/0659G06F3/0661G06F8/65G06F11/1092H03M13/154H03M13/3761H04L63/061H04L67/1097H04L67/32H04L67/34H03M13/1515H04L67/02H04L67/06H04L67/42
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,013,207
App. No.
15/272,968
Granted
Jul 3, 2018
Kind
B2
Abstract

A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN) begins by identifying an unrecoverable encoded data slice of a data segment stored in a set of DSN storage units, where a region of a data object includes a plurality of data segments, and where the plurality of data segments includes the data segment. The method continues by determining whether the data segment is recoverable. The method continues, when recoverable, by salvaging the region by indicating that the region has corruption, updating a directory and replacing the data segment with filler data, and when not recoverable, by not salvaging the region by indicating that the region has been eliminated.

Claims (35)

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:

identifying an unrecoverable encoded data slice of a data segment stored in a set of DSN storage units, where a region of a data object includes a plurality of data segments, and where the plurality of data segments includes the data segment;

determining whether the data segment is recoverable; and

when recoverable, salvaging the region by indicating that the region has corruption, updating a directory and replacing the data segment with filler data; and

when not recoverable, not salvaging the region by indicating that the region has been eliminated.

2. The method of claim 1 , wherein the identifying includes at least one of: interpreting received integrity information, receiving a list, or interpreting an error message.

3. The method of claim 1 , wherein the determining includes indicating that the data segment is unrecoverable when less than a decode threshold number of recoverable encoded data slices will ever be available.

4. The method of claim 1 , wherein the determining is based on one or more of: an association of data segments to the region, an association of the region to another region, a predetermination, a request, a region priority indicator, a region priority threshold level, a comparison of the region priority indicator to the region priority threshold level, a region type indicator, or interpreting system registry information.

5. The method of claim 1 , wherein for each other unrecoverable encoded data slice that is associated with at least one other data segment of the region, sending a rebuilt encoded data slice to a corresponding storage unit of the set of DSN storage units.

6. The method of claim 5 , wherein the sending includes: obtaining a decode threshold number of recoverable encoded data slices of a set of encoded data slices to utilize; generating the rebuilt encoded data slice; and issuing a write slice request to the corresponding storage unit of the set of DSN storage units, where the write slice request includes the rebuilt encoded data slice.

7. The method of claim 5 , further comprising determining that a set of all other segments that are related to an unrecoverable segment are unavailable and initiating one or more of: deprioritizing rebuilding of these other segments; ceasing any rebuilding activity related to these other segments; initiating cleanup operations of these other segments; continue rebuilding other segments of the data object but flag this data object as partially corrupted; or creating new readable segments to replace data segment with filler data.

8. A processing unit within a dispersed storage network (DSN) comprises:

an interface;

a local memory; and

a processing module operably coupled to the interface and the local memory, wherein the processing module functions to:

identify an unrecoverable encoded data slice of a data segment stored in a set of DSN storage units, where a region of a data object includes a plurality of data segments, and where the plurality of data segments includes the data segment;

determine whether the data segment is recoverable; and

when recoverable, salvage the region by indicating that the region has corruption, updating a directory and replacing the data segment with filler data; and

when not recoverable, not salvage the region by indicating that the region has been eliminated.

9. The processing unit of claim 8 , wherein the identifying of an unrecoverable encoded data slice of a data segment stored in a set of DSN storage units includes at least one of: interpreting received integrity information, receiving a list, or interpreting an error message.

10. The processing unit of claim 8 , wherein the determining whether the data segment is recoverable includes indicating that the data segment is unrecoverable when less than a decode threshold number of recoverable encoded data slices will ever be available.

11. The processing unit of claim 8 , wherein the determining whether the data segment is recoverable is based on one or more of: an association of data segments to the region, an association of the region to another region, a predetermination, a request, a region priority indicator, a region priority threshold level, a comparison of the region priority indicator to the region priority threshold level, a region type indicator, or interpreting system registry information.

12. The processing unit of claim 8 , wherein for each other unrecoverable encoded data slice that is associated with at least one other data segment of the region, sending a rebuilt encoded data slice to a corresponding storage unit of the set of DSN storage units.

13. The processing unit of claim 12 , wherein the sending includes: obtaining a decode threshold number of recoverable encoded data slices of a set of encoded data slices to utilize; generating the rebuilt encoded data slice; and issuing a write slice request to the corresponding storage unit of the set of DSN storage units, where the write slice request includes the rebuilt encoded data slice.

14. The processing unit of claim 12 , further comprising determining that a set of all other segments that are related to an unrecoverable segment are unavailable and initiating one or more of: deprioritizing rebuilding of these other segments; ceasing any rebuilding activity related to these other segments; initiating cleanup operations of these other segments; continue rebuilding other segments of the data object but flag this data object as partially corrupted; or creating new readable segments to replace data segment with filler data.

15. A non-transitory computer readable storage medium comprises: at least one memory section that stores operational instructions that, when executed by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), causes the one or more computing devices to:

identify an unrecoverable encoded data slice of a data segment stored in a set of DSN storage units, where a region of a data object includes a plurality of data segments, and where the plurality of data segments includes the data segment;

determine whether the data segment is recoverable; and

when recoverable, salvage the region by indicating that the region has corruption, updating a directory and replacing the data segment with filler data; and

when not recoverable, not salvage the region by indicating that the region has been eliminated.

16. The non-transitory computer readable storage medium of claim 15 , wherein the identifying an unrecoverable encoded data slice of a data segment stored in a set of DSN storage units includes at least one of: interpreting received integrity information, receiving a list, or interpreting an error message.

17. The non-transitory computer readable storage medium of claim 15 , wherein the determining whether the data segment is recoverable includes indicating that the data segment is unrecoverable when less than a decode threshold number of recoverable encoded data slices will ever be available.

18. The non-transitory computer readable storage medium of claim 15 , wherein the determining whether the data segment is recoverable is based on one or more of: an association of data segments to the region, an association of the region to another region, a predetermination, a request, a region priority indicator, a region priority threshold level, a comparison of the region priority indicator to the region priority threshold level, a region type indicator, or interpreting system registry information.

19. The non-transitory computer readable storage medium of claim 15 , wherein for each other unrecoverable encoded data slice that is associated with at least one other data segment of the region, sending a rebuilt encoded data slice to a corresponding storage unit of the set of DSN storage units.

20. The non-transitory computer readable storage medium of claim 19 , wherein the sending includes: obtaining a decode threshold number of recoverable encoded data slices of a set of encoded data slices to utilize; generating the rebuilt encoded data slice; and issuing a write slice request to the corresponding storage unit of the set of DSN storage units, where the write slice request includes the rebuilt encoded data slice.

Assignments (5)
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 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 9992063 AND 10334045 LISTED IN ERROR PREVIOUSLY RECORDED ON REEL 049556 FRAME 0012. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNOR HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 14, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 052205/0705 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049556/0012 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 22, 2016
From: LEGGETTE, WESLEY B.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 039834/0283 →
Continuity (2)
Provisional Application 62222819 · Sep 24, 2015
Related Publication 20170091033A1 · Mar 30, 2017