IP Library Granted Patent US 11,645,173
Granted Patent B2
US 11,645,173 · App. 17/588,619 · Granted May 9, 2023

Resilient mediation between storage systems replicating a dataset

Inventors: David Grunwald (San Francisco, CA); Ronald Karr (Palo Alto, CA); Thomas Gill (Bury St Edmunds, GB); John Colgrove (Los Altos, CA); Kunal Trivedi (San Francisco, CA)
Assignee: PURE STORAGE, INC.
G06F11/2076G06F3/061G06F3/0604G06F3/065G06F3/067G06F3/0619G06F3/0632G06F3/0659G06F3/0683G06F9/44505G06F11/0727G06F11/0751G06F11/1464G06F11/1471G06F11/2064G06F11/2082G06F12/0684G06F12/1072G06F16/178G06F16/182G06F16/1844G06F16/27G06F16/275H04L45/12G06F3/06G06F11/2053G06F2003/0697H04L45/38H04L47/125H04L67/1095H04L67/1097
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 11,645,173
App. No.
17/588,619
Granted
May 9, 2023
Kind
B2
Abstract

Resilient mediation between storage systems replicating a dataset, including: receiving, by a mediation service from one or more storage systems that synchronously replicate a dataset, a request to resolve which storage system continues to service a dataset after the request; and sending, from the mediation service to at least one of the storage systems, a positive mediation result, wherein: the storage systems that received the positive mediation result continue to process data storage requests directed to the dataset, and the storage systems that did not receive a positive mediation result from the mediation service do not continue to process data storage requests directed to the dataset.

Claims (35)

1. A method comprising:

receiving, by a mediation service from one or more storage systems that synchronously replicate a dataset, a request to resolve which storage system continues to service a dataset after the request; and

sending, from the mediation service to at least one of the storage systems, a positive mediation result, wherein:

the storage systems that received the positive mediation result continue to process data storage requests directed to the dataset, and

the storage systems that did not receive a positive mediation result from the mediation service do not continue to process data storage requests directed to the dataset.

2. The method of claim 1 wherein the request to resolve which storage system continues to service a dataset includes a request to set a membership list that includes a requestor storage system and excludes another storage system.

3. The method of claim 2 wherein sending the positive mediation result further comprises sending, to at least one of the storage systems, a list that includes the requestor as a member in the membership list.

4. The method of claim 1 further comprising maintaining a partition identifier value.

5. The method of claim 4 wherein the request to resolve which storage system continues to service a dataset includes an old partition identifier value and a new partition identifier value, the method further comprising:

responsive to determining that the partition identifier value matches the old partition identifier included in the request, changing the partition identifier value to match the new partition identifier value included in the request.

6. The method of claim 1 wherein the mediation service is implemented in fault domain that is different from a fault domain of the one or more storage systems.

7. The method of claim 1 wherein the mediation service is one of a plurality of mediation services.

8. An apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

receiving, by a mediation service from one or more storage systems that synchronously replicate a dataset, a request to resolve which storage system continues to service a dataset after the request; and

sending, from the mediation service to at least one of the storage systems, a positive mediation result, wherein:

the storage systems that received the positive mediation result continue to process data storage requests directed to the dataset, and

the storage systems that did not receive a positive mediation result from the mediation service do not continue to process data storage requests directed to the dataset.

9. The apparatus of claim 8 wherein the request to resolve which storage system continues to service a dataset includes a request to set a membership list that includes a requestor storage system and excludes another storage system.

10. The apparatus of claim 9 wherein sending the positive mediation result further comprises sending, to at least one of the storage systems, a list that includes the requestor as a member in the membership list.

11. The apparatus of claim 8 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the step of maintaining a partition identifier value.

12. The apparatus of claim 11 wherein the request to resolve which storage system continues to service a dataset includes an old partition identifier value and a new partition identifier value, the apparatus further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the step of:

responsive to determining that the partition identifier value matches the old partition identifier included in the request, changing the partition identifier value to match the new partition identifier value included in the request.

13. The apparatus of claim 8 wherein the mediation service is implemented in fault domain that is different from a fault domain of the one or more storage systems.

14. The apparatus of claim 8 wherein the mediation service is one of a plurality of mediation services.

15. A computer program product disposed on a non-transitory computer readable medium, the computer program product including computer program instructions that, when executed, carry out the steps of:

receiving, by a mediation service from one or more storage systems that synchronously replicate a dataset, a request to resolve which storage system continues to service a dataset after the request; and

sending, from the mediation service to at least one of the storage systems, a positive mediation result, wherein:

the storage systems that received the positive mediation result continue to process data storage requests directed to the dataset, and

the storage systems that did not receive a positive mediation result from the mediation service do not continue to process data storage requests directed to the dataset.

16. The computer program product of claim 15 wherein the request to resolve which storage system continues to service a dataset includes a request to set a membership list that includes a requestor storage system and excludes another storage system.

17. The computer program product of claim 16 wherein sending the positive mediation result further comprises sending, to at least one of the storage systems, a list that includes the requestor as a member in the membership list.

18. The computer program product of claim 15 further comprising computer program instructions that, when executed, carry out the step of maintaining a partition identifier value.

19. The computer program product of claim 18 , wherein the request to resolve which storage system continues to service a dataset includes an old partition identifier value and a new partition identifier value, the computer program product further comprising computer program instructions that, when executed, carry out the step of:

responsive to determining that the partition identifier value matches the old partition identifier included in the request, changing the partition identifier value to match the new partition identifier value included in the request.

20. The computer program product of claim 15 wherein the mediation service is implemented in fault domain that is different from a fault domain of the one or more storage systems.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2022
From: GRUNWALD, DAVID; KARR, RONALD; GILL, THOMAS; COLGROVE, JOHN; TRIVEDI, KUNAL
To: PURE STORAGE, INC.
Reel/Frame 058829/0047 →
Continuity (5)
Continuation 16702538 · Dec 4, 2019
Continuation 15703559 · Sep 13, 2017
Provisional Application 62518071 · Jun 12, 2017
Provisional Application 62470172 · Mar 10, 2017
Related Publication 20220156165A1 · May 19, 2022