Maintain fairness of resource allocation in a multi-node environment
AssigneeOracle International Corporation
InventorsAngelo Pruscino, Michael Zoll, Wilson Chan
Life of this patent
Estimating the term…
Abstract
Locks are placed in a convert queue in a way that compensates for queue bias. Rather than always placing a remote lock in a queue at the tail, a remote lock can be placed further up in the queue, and possibly be interleaved with local locks. As a result, remote processes are granted locks more frequently and swiftly. Locks are placed in a convert queue according based on queue placement factors, which are factors accounted for when placing a lock in a queue.
Claims20
A method for managing locks in a multi-node system, comprising the steps of:
- a master node receiving a request for a lock for a resource managed by the master node;
- wherein the master node maintains a convert queue that holds locks for the resource that have not been granted;
- wherein the master node maintains a granted queue that holds locks that are granted;
- determining whether the request for a lock is from a remote node or a local process local to the master node;
- the master node placing the lock within the convert queue based on a first set of one or more queue placement factors;
- and
- wherein the first set of one or more queue placement factors include whether:
- the lock request is from a remote node, and
- a position of one or more local locks within the convert queue or the granted queue.
A method for managing locks in a multi-node system, comprising the steps of:
- a master node receiving a request for a lock for a resource managed by the master node;
- wherein the master node maintains a convert queue that holds locks for the resource that have not been granted;
- wherein the master node maintains a granted queue that holds granted locks;
- the master node maintaining counts of how many locks have been granted to nodes;
- the master node placing the lock within the convert queue based on a first set of one or more queue placement factors;
- and
- wherein the set of one or more queue placement factors are based on the counts.
Dependencies are inferred from the claim text.