System and method for non-disruptive upgrade for metadata log with minimal hiccup

US11899630B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11899630-B2
Application numberUS-202117238382-A
CountryUS
Kind codeB2
Filing dateApr 23, 2021
Priority dateApr 23, 2021
Publication dateFeb 13, 2024
Grant dateFeb 13, 2024

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, computer program product, and computer system for controlling, by a computing device, access to a non-volatile memory using a non-volatile lock as a reader of the non-volatile memory. Metadata (MD) non-volatile memory commits may be throttled until capacity of the non-volatile memory is at a threshold capacity.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method comprising: controlling, by a computing device, access to a non-volatile memory using a non-volatile lock as a reader of the non-volatile memory; throttling metadata (MD) non-volatile memory commits until capacity of the non-volatile memory is at a threshold capacity; preventing commits of data during formatting of the non-volatile memory from a first version of the non-volatile memory to a second version of the non-volatile memory using the non-volatile lock as a writer of the non-volatile memory; and writing to the non-volatile memory based upon, at least in part, the version of the non-volatile memory dictated by a current version of the non-volatile memory under the non-volatile lock, wherein the first version held a full version of each changed MD page in the non-volatile memory and the second version held only the difference (delta) between an original page and the changed MD page in the non-volatile memory, wherein the formatting of the non-volatile memory is only being changed from the first version to the second version but not vice versa, and wherein the non-volatile lock is a lock that guards accesses to read/write to the non-volatile memory while the non-volatile memory is being formatted from the first version to the second version. 2. The computer-implemented method of claim 1 further comprising flushing any remaining non-volatile memory commits in the non-volatile memory. 3. The computer-implemented method of claim 1 further comprising releasing the non-volatile lock only after formatting of the non-volatile memory from the first version to the second version is completed. 4. The computer-implemented method of claim 3 further comprising collecting a plurality of transaction changes to the non-volatile memory according to whether each transaction change of the plurality of transaction changes is based upon the first version or the second version of the non-volatile memory. 5. The computer-implemented method of claim 1 wherein a first transaction change of the plurality of transaction changes is written in a first version format when the version of the non-volatile memory is the first version, and wherein a second transaction change of the plurality of transaction changes is written in a second version format when the version of the non-volatile memory is the second version. 6. A computer program product residing on a non-transitory computer readable storage medium having a plurality of instructions stored thereon which, when executed across one or more processors, causes at least a portion of the one or more processors to perform operations comprising: controlling access to a non-volatile memory using a non-volatile lock as a reader of the non-volatile memory; throttling metadata (MD) non-volatile memory commits until capacity of the non-volatile memory is at a threshold capacity; preventing commits of data during formatting of the non-volatile memory from a first version of the non-volatile memory to a second version of the non-volatile memory using the non-volatile lock as a writer of the non-volatile memory; and writing to the non-volatile memory based upon, at least in part, the version of the non-volatile memory dictated by a current version of the non-volatile memory under the non-volatile lock, wherein the first version held a full version of each changed MD page in the non-volatile memory and the second version held only the difference (delta) between an original page and the changed MD page in the non-volatile memory, wherein the formatting of the non-volatile memory is only being changed from the first version to the second version but not vice versa, and wherein the non-volatile lock is a lock that guards accesses to read/write to the non-volatile memory while the non-volatile memory is being formatted from the first version to the second version. 7. The computer program product of claim 6 wherein the operations further comprise flushing any remaining non-volatile memory commits in the non-volatile memory. 8. The computer program product of claim 6 wherein the operations further comprise releasing the non-volatile lock only after formatting of the non-volatile memory from the first version to the second version is completed. 9. The computer program product of claim 8 wherein the operations further comprise collecting a plurality of transaction changes to the non-volatile memory according to whether each transaction change of the plurality of transaction changes is based upon the first version or the second version of the non-volatile memory. 10. The computer program product of claim 6 wherein a first transaction change of the plurality of transaction changes is written in a first version format when the version of the non-volatile memory is the first version, and wherein a second transaction change of the plurality of transaction changes is written in a second version format when the version of the non-volatile memory is the second version. 11. A computing system including one or more processors and one or more memories configured to perform operations comprising: controlling access to a non-volatile memory using a non-volatile lock as a reader of the non-volatile memory; throttling metadata (MD) non-volatile memory commits until capacity of the non-volatile memory is at a threshold capacity; preventing commits of data during formatting of the non-volatile memory from a first version of the non-volatile memory to a second version of the non-volatile memory using the non-volatile lock as a writer of the non-volatile memory; and writing to the non-volatile memory based upon, at least in part, the version of the non-volatile memory dictated by a current version of the non-volatile memory under the non-volatile lock, wherein the first version held a full version of each changed MD page in the non-volatile memory and the second version held only the difference (delta) between an original page and the changed MD page in the non-volatile memory, wherein the formatting of the non-volatile memory is only being changed from the first version to the second version but not vice versa, and wherein the non-volatile lock is a lock that guards accesses to read/write to the non-volatile memory while the non-volatile memory is being formatted from the first version to the second version. 12. The computing system of claim 11 wherein the operations further comprise at least one of flushing any remaining non-volatile memory commits in the non-volatile memory and releasing the non-volatile lock only after formatting of the non-volatile memory from the first version to the second version is completed. 13. The computing system of claim 12 wherein the operations further comprise collecting a plurality of transaction changes to the non-volatile memory according to whether each transaction change of the plurality of transaction changes is based upon the first version or the second version of the non-volatile memory. 14. The computing system of claim 11 wherein a first transaction change of the plurality of transaction changes is written in a first version format when the version of the non-volatile memory is the first version, and wherein a second transaction change of the plurality of transaction changes is written in a second version format when the version of the non-volatile memory is the second version.

Assignees

Inventors

Classifications

  • Transactional file systems · CPC title

  • Updates (security arrangements therefor G06F21/57) · CPC title

  • File meta data generation · CPC title

  • Locking methods, e.g. locking methods for file systems allowing shared and concurrent access to files · CPC title

  • Versioning file systems, temporal file systems, e.g. file system supporting different historic versions of files · 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 US11899630B2 cover?
A method, computer program product, and computer system for controlling, by a computing device, access to a non-volatile memory using a non-volatile lock as a reader of the non-volatile memory. Metadata (MD) non-volatile memory commits may be throttled until capacity of the non-volatile memory is at a threshold capacity.
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F16/1865. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 13 2024 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).