← Back to Patent Explorer
US5920872A Expired / Lapsed US ⏱️ 0.0 years remaining

Resource management using resource domains

Assignee: Oracle International Corp
•
Filing: 1996-06-25
•
Granted: 1999-07-06
•
Expires: 2016-06-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for managing access to resources is provided. When a process requires access to a resource, the process requests a lock on the resource from a lock manager unit that resides on the same node as the process. If a resource object for the resource does not exist, one is created in the lock manager unit, but not on lock manager units on other nodes. Because each lock manager unit does not have to store all resource objects, and resource objects are only created for resources that are actually used, the overhead of the lock management system is significantly reduced. Resources are grouped in recovery domains. When a lock manager unit that supported a recovery domain fails, the recovery domain is marked invalid. All resources in the recovery domain are considered invalid unless it would have been impossible for a failed instance to have held an exclusive lock on the resource. A snapshot of lock information is made before cleanup is performed on invalid resources. After cleanup, the snapshot is used to determine which resources were cleaned up.

Inventors

  • 👤 Patricia Grewell
  • 👤 Terry N. Hayes
  • 👤 William Bridge
  • 👤 Hans Karten

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 21:19
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/52; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99938; Y10S707/99951; Y10S707/99952; Y10S707/99953

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 231 words
A method for managing resources within a computer system, the method comprising the steps of: creating one or more recovery domains within said computer system; establishing a correlation between said resources and said one or more recovery domains; in each of a plurality of lock manager units, creating a recovery domain object for any of said one or more recovery domains that will be supported by said lock manager unit; receiving at a particular lock manager unit a request for a lock on a resource; determining which recovery domain of said one or more recovery domains is associated with the resource; inspecting a flag associated with a recovery domain object that corresponds to the recovery domain to determine whether the recovery domain is valid; determining whether a master resource object exists for the resource; if a master resource object does not exist for the resource, then: creating a master resource object for the resource, establishing a link between the recovery domain object and the master resource object; determining whether the resource is valid based on whether the resource domain is valid, and setting a flag associated with the resource object to indicate whether the resource is valid; if the resource is valid, then granting a valid lock without performing cleanup on the resource; and if the resource is not valid, then performing cleanup on the resource before granting a valid lock.
Claim 2
Independent Claim 231 words
A method for managing resources within a computer system, the method comprising the steps of: creating one or more recovery domains within said computer system; establishing a correlation between said resources and said one or more recovery domains; in each of a plurality of lock manager units, creating a recovery domain object for any of said one or more recovery domains that will be supported by said lock manager unit; receiving at a particular lock manager unit a request for a lock on a resource; determining which recovery domain of said one or more recovery domains is associated with the resource; inspecting a flag associated with a recovery domain object that corresponds to the recovery domain to determine whether the recovery domain is valid; determining whether a master resource object exists for the resource; if a master resource object does not exist for the resource, then: creating a master resource object for the resource, establishing a link between the recovery domain object and the master resource object; determining whether the resource is valid based on whether the resource domain is valid, and setting a flag associated with the resource object to indicate whether the resource is valid; if the resource is valid, then granting a valid lock without performing cleanup on the resource; and if the resource is not valid, then performing cleanup on the resource before granting a valid lock.
Claim 3
Dependent Claim 27 words
The method of claim 1 further comprising a step of setting a flag associated with the recovery domain object to indicate whether the recovery domain is valid.
Claim 4
Dependent Claim 50 words
The method of claim 1 further comprising the steps of: detecting failure of a lock manager unit that supports the recovery domain; and in response to the failure of the lock manager unit, setting the flag associated with the recovery domain to indicate that the recovery domain is not valid.
Claim 5
Dependent Claim 180 words
The method of claim 3 further comprising the steps of responding to the failure of the lock manager unit by: inspecting a plurality of resource objects that represent resources that belong to said recovery domain; for each resource object of said plurality of resource objects, performing the steps of determining whether locks associated with the resource object would have prevented one or more failed processes from holding an exclusive mode lock on the resource represented by the resource object; if locks associated with the resource object would have prevented one or more failed processes from holding an exclusive mode lock on the resource represented by the resource object, then causing a flag associated with the resource represented by the resource object to indicate that the resource is valid; and if locks associated with the resource object would not have prevented one or more failed processes from holding an exclusive mode lock on the resource represented by the resource object, then causing the flag associated with the resource represented by the resource object to indicate that the resource is not valid.
Claim 6
Dependent Claim 92 words
The method of claim 1 wherein the step of performing cleanup includes the steps of: establishing a snapshot of lock information; sending a snapshot identifier associated with said snapshot to a cleanup process; after said cleanup process performs cleanup, receiving from said cleanup process said snapshot identifier; determining the snapshot that corresponds to the snapshot identifier; determining a set of resources that have become valid based on the snapshot identified by said snapshot identifier; and setting flags associated with resources in said set of resources to indicate that said resources are valid.
Claim 7
Dependent Claim 73 words
The method of claim 1 wherein: the computer system includes a plurality of nodes; each node of said plurality of nodes has a lock manager unit of a plurality of lock manager units; the method further comprises the step of storing, in each lock manager unit of said plurality of lock manager units, data that indicates which of the other lock manager units support the recovery domains supported by said lock manager unit.
Claim 8
Dependent Claim 75 words
The method of claim 1 wherein: the computer system includes a plurality of nodes; each node of said plurality of nodes has a lock manager unit of a plurality of lock manager units; the step of receiving a request for a lock on a resource includes the step of a lock manager unit on a first node of said plurality of nodes receiving a lock request from a process that resides on said first node.
Claim 9
Dependent Claim 38 words
The method of claim 7 wherein: the resource is a resource associated with a database; and the lock manager unit on the first node receives the lock request from a database instance that resides on the first node.
Claim 10
Dependent Claim 23 words
The method of claim 1 wherein the step of performing cleanup is performed by a process from which the lock request was received.
Claim 11
Dependent Claim 26 words
The method of claim 1 further comprising the steps of: detecting failure of a database process; and recovering the resources managed by a lock management system.
Claim 12
Dependent Claim 128 words
The method of claim 10 wherein the step of recovering includes the steps of: establishing a snapshot of lock information stored in the lock management system; creating a snapshot identifier that identifies the snapshot; sending the snapshot identifier to a cleanup process; after receiving said snapshot identifier, said cleanup process performing cleanup of resources held by said database process; after performing the cleanup of the resources held by the database process, the cleanup process transmitting the snapshot identifier to the lock manager system; the lock management system determining which resources have been cleaned up by said cleanup process based on the snapshot identified by said snapshot identifier; and the lock management system revising said lock information to indicate which resources have been cleaned up by said cleanup process.
Claim 13
Dependent Claim 43 words
The method of claim 11 wherein: the step of establishing a snapshot is performed in response to receiving a request for an invalid resource; and the step of performing cleanup is performed by a process that issued the request for the invalid resource.

References Cited (Backward Citations)

US5161227A Cited
US5403639A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-07-05 2003-01-04 2003-07-06 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-07-05 2007-01-04 2007-07-06 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-07-05 2011-01-04 2011-07-06 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag