Maintaining data integrity

US10372682B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10372682-B2
Application numberUS-70086110-A
CountryUS
Kind codeB2
Filing dateFeb 5, 2010
Priority dateFeb 6, 2009
Publication dateAug 6, 2019
Grant dateAug 6, 2019

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.

Data integrity is maintained in an environment in which multiple instances of a software component each can include multiple processes capable of accessing a shared resource. Each instance of the software component can be either an “active” instance (which is allowed to update data) or a “standby” instance (which is not allowed to update data). At any point in time, the environment does not comprise more than one active instance. There can, however, be more than one standby instance. Preferably, a single standby instance can become a new active instance in the event of a complete failure of the active instance, i.e. a failure associated with every process of the current active instance.

First claim

Opening claim text (preview).

I claim: 1. A computer-implemented method for maintaining data integrity of a shared resource accessible by a first instance of a software component and a second instance of the software component, comprising: determining, by a first monitoring process of the first instance executing on a first computer, that an exclusive mode of a master lock for the shared resource is obtainable; determining, by the first monitoring process and after the exclusive mode of the master lock has been obtained by the first instance, that an exclusive mode of an active lock for the shared resource is obtainable; and designating, after the exclusive mode of the active lock has been obtained by the first instance, the first process as an active instance and the second instance as a standby instance, wherein the second instance executes on a second computer, and the active lock, configurable between a shared mode and the exclusive mode, and the master lock are stored in the shared resource. 2. The method of claim 1 , further comprising: unlocking, after the first instance is the active instance and by the first instance, the exclusive mode of the active lock; and locking, after the unlocking, the active lock in the shared mode. 3. The method of claim 1 , further comprising: validating, by a first child process of the first instance, that a first parent process of the first instance is a holder of the active lock. 4. The method of claim 3 , further comprising: determining, by the first child process, that the shared mode of the active lock is obtainable, and obtaining, by the first child process, the shared mode of the active lock, wherein the first parent process is the holder of the master lock in the exclusive mode while the first child process is a holder of the active lock in the shared mode. 5. The method of claim 4 , wherein another child process of the first parent process is a holder of the active in the shared mode while the first child process is a holder of the active lock in the shared mode. 6. The method of claim 1 , further comprising: determining, by a second monitoring process of the second instance, that the exclusive mode of the master lock is obtainable; determining, by the second monitoring process and after the exclusive mode of the master lock has been obtained by the second instance, that the exclusive mode of the active lock is not obtainable; and releasing, by the second monitoring process and based upon the exclusive mode of the active lock not being obtainable, the exclusive mode of the master lock. 7. A computer hardware system configured to maintaining data integrity of a shared resource accessible by a first instance of a software component and a second instance of the software component, comprising a computer configured to perform: determining, by a first monitoring process of the first instance executing on a first computer, that an exclusive mode of a master lock for the shared resource is obtainable; determining, by the first monitoring process and after the exclusive mode of the master lock has been obtained by the first instance, that an exclusive mode of an active lock for the shared resource is obtainable; and designating, after the exclusive mode of the active lock has been obtained by the first instance, the first process as an active instance and the second instance as a standby instance, wherein the second instance executes on a second computer, and the active lock, configurable between a shared mode and the exclusive mode, and the master lock are stored in the shared resource. 8. The system of claim 7 , wherein the computer is further configured to perform: unlocking, after the first instance is the active instance and by the first instance, the exclusive mode of the active lock; and locking, after the unlocking, the active lock in the shared mode. 9. The system of claim 7 , wherein the computer is further configured to perform: validating, by a first child process of the first instance, that a first parent process of the first instance is a holder of the active lock. 10. The system of claim 9 , wherein the computer is further configured to perform: determining, by the first child process, that the shared mode of the active lock is obtainable, and obtaining, by the first child process, the shared mode of the active lock, wherein the first parent process is the holder of the master lock in the exclusive mode while the first child process is a holder of the active lock in the shared mode. 11. The system of claim 10 , wherein another child process of the first parent process is a holder of the active in the shared mode while the first child process is a holder of the active lock in the shared mode. 12. The system of claim 7 , wherein the computer is further configured to perform: determining, by a second monitoring process of the second instance, that the exclusive mode of the master lock is obtainable; determining, by the second monitoring process and after the exclusive mode of the master lock has been obtained by the second instance, that the exclusive mode of the active lock is not obtainable; and releasing, by the second monitoring process and based upon the exclusive mode of the active lock not being obtainable, the exclusive mode of the master lock. 13. A computer program product, comprising: a computer readable hardware storage device having stored therein computer readable program code for maintaining data integrity of a shared resource accessible by a first instance of a software component and a second instance of the software component, the computer readable program code, which when executed by a computer hardware system, causes the computer hardware system to perform: determining, by a first monitoring process of the first instance executing on a first computer, that an exclusive mode of a master lock for the shared resource is obtainable; determining, by the first monitoring process and after the exclusive mode of the master lock has been obtained by the first instance, that an exclusive mode of an active lock for the shared resource is obtainable; and designating, after the exclusive mode of the active lock has been obtained by the first instance, the first process as an active instance and the second process as a standby instance, wherein the second instance executes on a second computer, and the active lock, configurable between a shared mode and the exclusive mode, and the master lock are stored in the shared resource. 14. The computer program product of claim 13 , wherein the computer readable program code further causes the computer hardware system to perform: unlocking, after the first instance is the active instance and by the first instance, the exclusive mode of the active lock; and locking, after the unlocking, the active lock in the shared mode. 15. The computer program product of claim 13 , wherein the computer readable program code further causes the computer hardware system to perform: validating, by a first child process of the first instance, that a first parent process of the first instance is a holder of the active lock. 16. The computer program product of claim 15 , wherein the computer readable program code further causes the computer hardware system to perform: determining, by the first child process, that the shared mode of the active lock is obtainable, and obtaining, by the first child process, the shared mode of the active lock, wherein the first parent process is the holder of the master lock in the exclusive mode while the first child process is a holder of the active l

Assignees

Inventors

Classifications

  • Locking methods, e.g. locking methods for file systems allowing shared and concurrent access to 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 US10372682B2 cover?
Data integrity is maintained in an environment in which multiple instances of a software component each can include multiple processes capable of accessing a shared resource. Each instance of the software component can be either an “active” instance (which is allowed to update data) or a “standby” instance (which is not allowed to update data). At any point in time, the environment does not com…
Who is the assignee on this patent?
Schofield Andrew John, IBM
What technology area does this patent fall under?
Primary CPC classification G06F16/1774. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 06 2019 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).