Maintaining data integrity
AssigneeInternational Business Machines Corporation
InventorAndrew John Schofield
Life of this patent
Estimating the term…
Abstract
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.
Claims18
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.
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.
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.
Dependencies are inferred from the claim text.