Flushes after storage array events
US-2018276142-A1 · Sep 27, 2018 · US
US12067241B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12067241-B2 |
| Application number | US-202217968939-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 19, 2022 |
| Priority date | Oct 19, 2022 |
| Publication date | Aug 20, 2024 |
| Grant date | Aug 20, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method, computer program product, and computing system for assigning flush ownership for a plurality of containers of a common frozen flushing work set to a storage processor of a pair of storage processors of a storage system. For each container of the plurality of containers of the common frozen flushing work set not assigned to a particular storage processor, the storage space of the container not assigned to the particular storage processor is reclaimed. For each container of the plurality of containers of the common frozen flushing work set assigned to a particular storage processor, data stored in the container assigned to the particular storage processor is flushed to persistent memory of the storage system.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method, executed on a computing device, comprising: assigning flush ownership for a plurality of containers of a common frozen flushing work set to a storage processor of a pair of storage processors of a storage system; for each container of the plurality of containers of the common frozen flushing work set not assigned to a particular storage processor, reclaiming a storage space of the container not assigned to the particular storage processor; and for each container of the plurality of containers of the common frozen flushing work set assigned to a particular storage processor, flushing data stored in the container assigned to the particular storage processor to persistent memory of the storage system. 2. The computer-implemented method of claim 1 , wherein the pair of storage processors define an active-active cluster. 3. The computer-implemented method of claim 2 , further comprising: processing a plurality of write input/output (IO) operations on the active-active cluster by mirroring the plurality of write IO operations on each storage processor of the active-active cluster. 4. The computer-implemented method of claim 1 , wherein the common frozen flushing work set includes a plurality of extent storage objects, wherein the plurality of extent storage objects includes the plurality of containers. 5. The computer-implemented method of claim 1 , wherein an XCOPY source container set is assigned to a first storage processor and an XCOPY destination container set is assigned to a second storage processor. 6. The computer-implemented method of claim 5 , wherein flushing the XCOPY source container set assigned to the first storage processor includes: flushing a plurality of containers received before the XCOPY command from the XCOPY source container set, executing the XCOPY command using the first storage processor, and flushing a plurality of containers received after the XCOPY command from the XCOPY source container set; and wherein flushing the XCOPY destination container set assigned to the second storage processor includes: flushing a plurality of containers received after the XCOPY command from the XCOPY destination container set assigned to the second storage processor in response to executing the XCOPY command using the first storage processor. 7. The computer-implemented method of claim 1 , further comprising: detecting a storage processor failure event; pausing IO command processing for IO commands received after detecting the storage processor failure event; identifying a plurality of containers assigned to the failed storage processor; reconstructing the plurality of identified containers assigned to the failed storage processor in a surviving storage processor; and resuming IO command processing. 8. A computer program product residing on a non-transitory computer readable medium having a plurality of instructions stored thereon which, when executed by a processor, cause the processor to perform operations comprising: assigning flush ownership for a plurality of containers of a common frozen flushing work set to a storage processor of a pair of storage processors of a storage system; for each container of the plurality of containers of the common frozen flushing work set not assigned to a particular storage processor, reclaiming a storage space of the container not assigned to the particular storage processor; and for each container of the plurality of containers of the common frozen flushing work set assigned to a particular storage processor, flushing data stored in the container assigned to the particular storage processor to persistent memory of the storage system. 9. The computer program product of claim 8 , wherein the pair of storage processors define an active-active cluster. 10. The computer program product of claim 9 , wherein the operations further comprise: processing a plurality of write input/output (IO) operations on the active-active cluster by mirroring the plurality of write IO operations on each storage processor of the active-active cluster. 11. The computer program product of claim 8 , wherein the common frozen flushing work set includes a plurality of extent storage objects, wherein the plurality of extent storage objects includes the plurality of containers. 12. The computer program product of claim 8 , wherein an XCOPY source container set is assigned to a first storage processor and an XCOPY destination container set is assigned to a second storage processor. 13. The computer program product of claim 12 , wherein flushing the XCOPY source container set assigned to the first storage processor includes: flushing a plurality of containers received before the XCOPY command from the XCOPY source container set, executing the XCOPY command using the first storage processor, and flushing a plurality of containers received after the XCOPY command from the XCOPY source container set; and wherein flushing the XCOPY destination container set assigned to the second storage processor includes: flushing a plurality of containers received after the XCOPY command from the XCOPY destination container set assigned to the second storage processor in response to executing the XCOPY command using the first storage processor. 14. The computer program product of claim 8 , wherein the operations further comprise: detecting a storage processor failure event; pausing IO command processing for IO commands received after detecting the storage processor failure event; identifying a plurality of containers assigned to the failed storage processor; reconstructing the plurality of identified containers assigned to the failed storage processor in a surviving storage processor; and resuming IO command processing. 15. A computing system comprising: a memory; and a processor configured to assign flush ownership for a plurality of containers of a common frozen flushing work set to a storage processor of a pair of storage processors of a storage system, wherein the processor is further configured to reclaim a storage space of the container not assigned to the particular storage processor for each container of the plurality of containers of the common frozen flushing work set not assigned to a particular storage processor, and wherein the processor is further configured to flush data stored in the container assigned to the particular storage processor to persistent memory of the storage system for each container of the plurality of containers of the common frozen flushing work set assigned to a particular storage processor. 16. The computing system of claim 15 , wherein the pair of storage processors define an active-active cluster. 17. The computing system of claim 16 , wherein the processor is further configured to: processing a plurality of write input/output (IO) operations on the active-active cluster by mirroring the plurality of write IO operations on each storage processor of the active-active cluster. 18. The computing system of claim 15 , wherein the common frozen flushing work set includes a plurality of extent storage objects, wherein the plurality of extent storage objects includes the plurality of containers. 19. The computing system of claim 15 , wherein an XCOPY source container set is assigned to a first storage processor and an XCOPY destination container set is assigned to a second storage processor. 20. The computing system of claim 19 , wherein flushing the XCOPY source container set assigned to the first storage p
Redundant storage or storage space (G06F11/2056 takes precedence) · CPC title
Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices · CPC title
Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP] · CPC title
Data buffering arrangements · CPC title
Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.