Anticipatory changes to resources managed by locks
AssigneeOracle International Corporation
InventorsWilson Wai Chan, Angelo Pruscino, Michael Zoll, Tak Wang
Life of this patent
Estimating the term…
Abstract
A method and system are provided for performing anticipatory changes to a resource governed by a locking mechanism. Entities (such as transactions in a database system) that want to modify a resource request permission to modify the resource. However, prior to receiving permission, they make anticipatory changes to a private version of the resource. The entities are prevented from making the anticipatory changes permanent until they receive permission to make the changes. Because they can make the changes, and proceed to other operations, before receiving permission, any delay in receiving permission has less adverse effect on their performance.
Claims17
A method comprising performing a machine-executed operation involving instructions, wherein the machine-executed operation is at least one of:
- A) sending said instructions over transmission media;
- B) receiving said instructions over transmission media;
- C) storing said instructions onto a machine-readable storage medium;
- and
- D) executing the instructions;
- wherein said instructions are instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of:
- sending a request for permission to perform a change involving a particular resource;
- prior to receiving said permission, performing said change while preventing said change from becoming permanent;
- after performing said change, receiving permission to perform said change;
- and
- after receiving the permission to perform said change, ceasing to prevent said change from becoming permanent.
A method comprising performing a machine-executed operation involving instructions, wherein the machine-executed operation is at least one of:
- A) sending said instructions over transmission media;
- B) receiving said instructions over transmission media;
- C) storing said instructions onto a machine-readable storage medium;
- and
- D) executing the instructions;
- wherein said instructions are instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of:
- receiving, at a master of a resource, a request from a requester, wherein the request is for permission to modify the resource;
- while one or more currently granted locks prevent the master from granting the requestor permission to modify the resource, the master causing the requestor to receive a proceed message that allows the user to make an anticipatory change to the resource but prohibits the change from being made permanent;
- when no currently granted locks prevent the master from granting the requester permission to modify the resource, the master sending a lock grant message to the requester that allows the requester to make the change permanent.
Dependencies are inferred from the claim text.