IP Library Granted Patent US 10,360,180
Granted Patent B2
US 10,360,180 · App. 14/447,890 · Granted Jul 23, 2019

Digest listing decomposition

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,360,180
App. No.
14/447,890
Granted
Jul 23, 2019
Kind
B2
Abstract

To identify slice errors, a processing module of a computing device in a dispersed storage network (DSN) sends first list digest requests to at least first and second dispersed storage (DS) units. The requests indicates a first range of slice names to include in a first list digest. The processing module receives digest responses from the DS units, and compares the digest responses to determine whether they identify the same slices. If they do not identify the same slices, the processing module sends second list digest requests indicating a sub-range of the first range of slice names to include in second list digests. The sub-range continues to be narrowed until the processing module identifies at least one sub-range of slice names where a slice error exists.

Claims (52)

1. A method for use in a processing module of a computing device included in a dispersed storage network (DSN), the method comprising:

sending first list digest requests to at least first and second dispersed storage (DS) units, the first list digest requests indicating a first range of slice names to include in a first list digest;

receiving, in response to the first list digest requests, first and second list digest responses from the first and second DS units;

determining whether the first list digest response compares favorably to the second list digest response; and

in response to an unfavorable determination, sending second list digest requests to the first and second DS units, the second list digest requests indicating a sub-range of the first range of slice names to include in second list digests.

2. The method of claim 1 , further comprising:

continuing to narrow the sub-range until the processing module identifies at least one sub-range of slice names where a slice error exists.

3. The method of claim 1 , further comprising;

sending the at least first and second DS units list range request messages;

receiving first and second list range request response messages from the at least first and second DS units; and

identifying a difference between the first and second list range request response messages.

4. The method of claim 3 , wherein the list range request messages sent to the first and second DS units include a start slice name, an end slice name, and a maximum response count.

5. The method of claim 3 , wherein the first and second list range response messages include the following for each slice name: a slice revision count, a slice revision and slice length for each slice revision.

6. The method of claim 1 , further comprising:

determining a test range of slice names to test for slice errors, wherein the test range of slice names to test for slice errors corresponds to the first range of slice names.

7. The method of claim 1 , wherein the at least first and second DS units are included in a common DS unit storage set.

8. A dispersed storage network (DSN) comprising:

a plurality of targeted dispersed storage (DS) units configured to store encoded data slices;

a dispersed storage (DS) processing unit configured to identify slice errors in the encoded data slices, at least in part, by:

sending first list digest requests to at least first and second DS units, the first list digest requests indicating a first range of slice names to include in first list digests;

receiving, in response to the first list digest requests, first and second list digest responses from the first and second DS units;

determining whether the first list digest response compares favorably to the second list digest response; and

in response to an unfavorable determination, send second list digest requests to the first and second DS units, the second list digest requests indicating a sub-range of the first range of slice names to include in second list digests.

9. The DSN of claim 8 , wherein the dispersed storage processing unit is further configured to:

continue narrowing the sub-range until at least one sub-range of slice names where a slice error exists is identified.

10. The DSN of claim 8 , wherein the DS processing unit is further configured to:

send the at least first and second DS units a list range request message;

receive first and second list range request response messages from the at least first and second DS units; and

identify a difference between the first and second list range request response messages.

11. The DSN of claim 10 , wherein the DS processing unit is further configured to include a start slice name, an end slice name, and a maximum response count in the list range request messages sent to the first and second DS units.

12. The DSN of claim 10 , wherein the at least first and second DS units are further configured to:

include the following in the first and second list range response messages for each slice name: a slice revision count, a slice revision and slice length for each slice revision.

13. The DSN of claim 8 , wherein the at least first and second DS units are included in a common DS unit storage set.

14. A dispersed storage (DS) processing unit comprising:

an interface;

a memory; and

a processing module operable to:

send first list digest requests to at least first and second dispersed storage (DS) units, the first list digest requests indicating a first range of slice names to include in a first list digest;

receive, in response to the first list digest requests, first and second list digest responses from the first and second DS units;

determine whether the first list digest response compares favorably to the second list digest response; and

in response to an unfavorable determination, send second list digest requests to the first and second DS units, the second list digest requests indicating a sub-range of the first range of slice names to include in second list digests.

15. The DS processing unit of claim 14 , wherein the processing module is further operable to:

continue narrowing the sub-range until the processing module identifies at least one sub-range of slice names where a slice error exists.

16. The DS processing unit of claim 14 , wherein the processing module is further operable to:

send the at least first and second DS units list range request messages;

receive first and second list range request response messages from the at least first and second DS units; and

identify a difference between the first and second list range request response messages.

17. The DS processing unit of claim 15 , wherein the list range request messages sent to a first and second DS units include a start slice name, an end slice name, and a maximum response count.

18. The DS processing unit of claim 15 , wherein first and second list range response messages include the following for each slice name: a slice revision count, a slice revision and slice length for each slice revision.

19. The DS processing unit of claim 14 , further comprising:

determining a test range of slice names to test for slice errors, wherein the test range of slice names to test for slice errors corresponds to the first range of slice names.

20. The DS processing unit of claim 14 , wherein the at least first and second DS units are included in a common DS unit storage set.

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 →
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 May 6, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038629/0015 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2014
From: VAS, SEBASTIEN; MARK, ZACHARY J.; RESCH, JASON K.
To: CLEVERSAFE, INC.
Reel/Frame 033432/0657 →
Cited By (1)
US 12,443,738