Intelligent upgrade process in a distributed system

US12585385B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12585385-B2
Application numberUS-202418761596-A
CountryUS
Kind codeB2
Filing dateJul 2, 2024
Priority dateMay 27, 2015
Publication dateMar 24, 2026
Grant dateMar 24, 2026

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method for updates in a storage system is provided. The method includes writing identifiers, associated with data to be stored, to storage units of the storage system and writing trim records indicative of identifiers that are allowed to not exist in the storage system to the storage units. The method includes determining whether stored data corresponding to records of identifiers is valid based on the records of the identifiers and the trim records.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method, comprising: determining whether a missing identifier from a first set of identifiers is consistent with read dependencies of the first set of identifiers; in response to determining that the missing identifier is consistent with the read dependencies of the first set of identifiers, writing, by one or more processors, a trim record that indicates the missing identifier is allowed to be absent from the first set of identifiers; and distributing a record to a plurality of storage nodes as a second set of identifiers comprising the trim record, the second set of identifiers indicating that stored data associated with the first set of identifiers is valid. 2 . The method of claim 1 , wherein the first set of identifiers is associated with operations being executed by the plurality of storage nodes. 3 . The method of claim 1 , further comprising: distributing the first set of identifiers to the plurality of storage nodes, wherein determining whether the missing identifier is consistent with the read dependencies is in response to distributing the first set of identifiers to the plurality of storage nodes. 4 . The method of claim 1 , wherein the first set of identifiers and the trim record comprise a sequence. 5 . The method of claim 1 , further comprising: determining a latest identifier from the first set of identifiers that has been acknowledged. 6 . The method of claim 5 , further comprising: inserting at least one forward record that indicates an identifier later than the latest identifier of the first set of identifiers is allowed to be absent from the plurality of storage nodes. 7 . The method of claim 1 , further comprising: performing updates to flash memory of the plurality of storage nodes, based on updates recorded with the first set of identifiers in NVRAM (nonvolatile random-access memory) of the plurality of storage nodes. 8 . An apparatus, comprising: a memory; and one or more processors, operatively coupled to the memory, configured to: determine whether a missing identifier from a first set of identifiers is consistent with read dependencies of the first set of identifiers; in response to determining that the missing identifier is consistent with the read dependencies of the first set of identifiers, write a trim record that indicates the missing identifier is allowed to be absent from the first set of identifiers; and distribute a record to a plurality of storage nodes as a second set of identifiers comprising the trim record, the second set of identifiers indicating that stored data associated with the first set of identifiers is valid. 9 . The apparatus of claim 8 , wherein the first set of identifiers is associated with operations being executed by the plurality of storage nodes. 10 . The apparatus of claim 8 , wherein the one or more processors are further configured to: distribute the first set of identifiers to the plurality of storage nodes, wherein determining whether the missing identifier is consistent with the read dependencies is in response to distributing the first set of identifiers to the plurality of storage nodes. 11 . The apparatus of claim 8 , wherein the first set of identifiers and the trim record comprise a sequence. 12 . The apparatus of claim 8 , wherein the one or more processors are further configured to: determine a latest identifier from the first set of identifiers that has been acknowledged. 13 . The apparatus of claim 12 , wherein the one or more processors are further configured to: insert at least one forward record that indicates an identifier later than the latest identifier of the first set of identifiers is allowed to be absent from the plurality of storage nodes. 14 . The apparatus of claim 8 , wherein the one or more processors are further configured to: perform updates to flash memory of the plurality of storage nodes, based on updates recorded with the first set of identifiers in NVRAM (nonvolatile random-access memory) of the plurality of storage nodes. 15 . A non-transitory computer readable storage medium storing instructions which, when executed, cause one or more processors to: determine whether a missing identifier from a first set of identifiers is consistent with read dependencies of the first set of identifiers; in response to determining that the missing identifier is consistent with the read dependencies of the first set of identifiers, write a trim record that indicates the missing identifier is allowed to be absent from the first set of identifiers; and distribute a record to a plurality of storage nodes as a second set of identifiers comprising the trim record, the second set of identifiers indicating that stored data associated with the first set of identifiers is valid. 16 . The non-transitory computer readable storage medium of claim 15 , wherein the first set of identifiers is associated with operations being executed by the plurality of storage nodes. 17 . The non-transitory computer readable storage medium of claim 15 , wherein the one or more processors are further configured to: distribute the first set of identifiers to the plurality of storage nodes, wherein determining whether the missing identifier is consistent with the read dependencies is in response to distributing the first set of identifiers to the plurality of storage nodes. 18 . The non-transitory computer readable storage medium of claim 15 , wherein the first set of identifiers and the trim record comprise a sequence. 19 . The non-transitory computer readable storage medium of claim 15 , wherein the one or more processors are further configured to: determine a latest identifier from the first set of identifiers that has been acknowledged. 20 . The non-transitory computer readable storage medium of claim 19 , wherein the one or more processors are further configured to: insert at least one forward record that indicates an identifier later than the latest identifier of the first set of identifiers is allowed to be absent from the plurality of storage nodes.

Assignees

Inventors

Classifications

  • Reliability improvement, data loss prevention, degraded operation etc · CPC title

  • in relation to data integrity, e.g. data losses, bit errors · CPC title

  • Plurality of storage devices · CPC title

  • Organizing or formatting or addressing of data · CPC title

  • Validity control, e.g. using flags, time stamps or sequence numbers · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12585385B2 cover?
A method for updates in a storage system is provided. The method includes writing identifiers, associated with data to be stored, to storage units of the storage system and writing trim records indicative of identifiers that are allowed to not exist in the storage system to the storage units. The method includes determining whether stored data corresponding to records of identifiers is valid ba…
Who is the assignee on this patent?
Pure Storage Inc
What technology area does this patent fall under?
Primary CPC classification G06F3/0688. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 24 2026 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).