IP Library Granted Patent US 8,595,435
Granted Patent B2
US 8,595,435 · App. 12/797,025 · Granted Nov 26, 2013

Dispersed storage write process

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 8,595,435
App. No.
12/797,025
Granted
Nov 26, 2013
Kind
B2
Abstract

A dispersed storage (DS) method begins by issuing a plurality of write commands to a plurality of DS storage units. The method continues by receiving a write acknowledgement from one of the plurality of DS storage units to produce a received write acknowledgement. The method continues by issuing a plurality of commit commands to the plurality of DS storage units when a write threshold number of the received write acknowledgements have been received. The method continues by receiving a commit acknowledgement from a DS storage unit of the plurality of DS storage units to produce a received commit acknowledgement. The method continues by issuing a plurality of finalize commands to the plurality of DS storage units when a write threshold number of the received commit acknowledgements have been received.

Claims (53)

1. A method for execution by a dispersed storage (DS) storage unit, the method comprises:

receiving a write command regarding a data slice;

in response to receiving the write command, storing a new version of the data slice in a non-visible manner;

maintaining an old version of the data slice in a visible manner;

transmitting a write acknowledgement in response to receiving the write command;

receiving a commit command regarding the data slice within a commit time period;

transmitting a commit acknowledgement in response to receiving the commit command; and

receiving a finalize command regarding the data slice within a finalize time period.

2. The method of claim 1 further comprises:

in response to receiving the commit command, making the new version of the data slice visible; and

making the older version of the data slice not visible.

3. The method of claim 2 further comprises:

when the finalize command is not received within the finalize time period, deleting a new version of the data slice; and

making the older version of the data slice visible.

4. The method of claim 2 further comprises:

in response to receiving the finalize command, deleting the old version of data slice.

5. The method of claim 1 further comprises:

when the commit command is not received within the commit time period, deleting a new version of the data slice.

6. The method of claim 1 further comprises:

prior to receiving the finalize command, receiving a rollback command; and

in response to the rollback command, deleting a new version of the data slice.

7. The method of claim 1 further comprises:

after receiving the finalize command, receiving an undo command; and

in response to the undo command, deleting a new version of the data slice; and

making the older version of the data slice visible.

8. A dispersed storage (DS) storage unit comprises:

an interface module;

memory; and

a processing module operable to:

receive, via the interface module, a write command regarding a data slice;

in response to receiving the write command, facilitate storing a new version of the data slice in the memory in a non-visible manner; and

facilitate maintaining an old version of the data slice visible in the memory;

transmit, via the interface module, a write acknowledgement in response to receiving the write command;

receive, via the interface module, a commit command regarding the data slice within a commit time period;

transmit, via the interface module, a commit acknowledgement in response to receiving the commit command; and

receive, via the interface module, a finalize command regarding the data slice within a finalize time period.

9. The apparatus of claim 8 wherein the processing module is further operable to:

in response to commit command, facilitate making the new version of the data slice visible in the memory; and

facilitate making the old version of the data slice not visible in the memory.

10. The apparatus of claim 9 wherein the processing module is further operable to:

when the finalize command is not received within the finalize time period, facilitate deleting a new version of the data slice from the memory; and

facilitate making the older version of the data slice visible in the memory.

11. The apparatus of claim 9 wherein the processing module is further operable to:

in response to receiving the finalize command, facilitate deleting the old version of data slice from the memory.

12. The apparatus of claim 8 wherein the processing module is further operable to:

when the commit command is not received within the commit time period, facilitate deleting a new version of the data slice from the memory.

13. The apparatus of claim 8 wherein the processing module is further operable to:

prior to receiving the finalize command, receive a rollback command; and

in response to the rollback command, facilitate deleting a new version of the data slice from the memory.

14. The apparatus of claim 8 wherein the processing module is further operable to:

after receiving the finalize command, receive an undo command; and

in response to the undo command, facilitate deleting a new version of the data slice from the memory; and

facilitate making the older version of the data slice visible in the memory.

Assignments (7)
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 May 13, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038687/0596 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2010
From: CILFONE, BART; BAPTIST, ANDREW; DHUSE, GREG; VOLVOVSKI, ILYA; RESCH, JASON K.
To: CLEVERSAFE, INC.
Reel/Frame 024509/0954 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2010
From: CILFONE, BART; BAPTIST, ANDREW; DHUSE, GREG; VOLVOVSKI, ILYA; RESCH, JASON K.
To: CLEVERSAFE, INC.
Reel/Frame 024511/0897 →