On demand locking of retained resources in a distributed shared disk cluster environment
First Claim
1. A computer-implemented method for locking retained resources of database information in a distributed shared disk cluster environment comprising a plurality of nodes, the method comprising:
- receiving a request on demand for physical access to a page by a task of a first node, wherein the request on demand is configured to allow the task to bypass out of order one or more waiting access requests to obtain a physical lock on the page and wherein the request on demand indicates a first lock mode;
determining whether a second node holds a lock on the page, the lock having a second lock mode;
determining whether the first lock mode and the second lock mode are compatible;
sending a demand downgrade request to the second node currently owning the physical lock;
determining whether a previous downgrade request has been sent to the second node;
determining a status of the previous downgrade request, when a previous downgrade request has been sent;
dropping the demand downgrade request when the previous downgrade request is estimated to be completed within a specific future time based, at least in part, on the determined status of the previous downgrade request and the determination of lock mode compatibility;
dropping the previous downgrade request when the previous downgrade request is estimated to be completed outside a specific future time based, at least in part, on the determined status of the previous downgrade request and a determination that the first lock mode and the second lock mode are not compatible; and
granting the first node physical access to the page, after the second node downgrades the physical lock.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems, methods, computer program product embodiments are provided for locking retained resources of database information in a distributed shared disk cluster environment. An embodiment includes providing a request on demand for physical access to a page by a task of a node among a cluster of nodes, managing selective bypassing of waiting access requests to the page at intranode and internode levels in response to the request on demand, and handling requests for page ownership to prioritize a request on demand. Further included are determining whether another node holds a lock on the page and identifying an access type for the waiting access requests in order to coordinate transfer of the lock to the node.
9 Citations
20 Claims
-
1. A computer-implemented method for locking retained resources of database information in a distributed shared disk cluster environment comprising a plurality of nodes, the method comprising:
-
receiving a request on demand for physical access to a page by a task of a first node, wherein the request on demand is configured to allow the task to bypass out of order one or more waiting access requests to obtain a physical lock on the page and wherein the request on demand indicates a first lock mode; determining whether a second node holds a lock on the page, the lock having a second lock mode; determining whether the first lock mode and the second lock mode are compatible; sending a demand downgrade request to the second node currently owning the physical lock; determining whether a previous downgrade request has been sent to the second node; determining a status of the previous downgrade request, when a previous downgrade request has been sent; dropping the demand downgrade request when the previous downgrade request is estimated to be completed within a specific future time based, at least in part, on the determined status of the previous downgrade request and the determination of lock mode compatibility; dropping the previous downgrade request when the previous downgrade request is estimated to be completed outside a specific future time based, at least in part, on the determined status of the previous downgrade request and a determination that the first lock mode and the second lock mode are not compatible; and granting the first node physical access to the page, after the second node downgrades the physical lock. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A distributed shared disk cluster database system comprising:
-
a plurality of nodes networked in a cluster and sharing disk storage having at least one database; a first node in the cluster that generates a request on demand for a task to obtain physical access to a page of the at least one database, wherein the request on demand is configured to allow the task to bypass out of order one or more waiting access requests to obtain a physical lock on the page and wherein the request on demand indicates a first lock mode; and a lock manager operating on the cluster that determines whether a second node holds a lock on the page, the lock having a second lock mode; determines whether the first lock mode and the second lock mode are compatible; sends a demand downgrade request to the second node currently owning the physical lock; determines whether a previous downgrade request has been sent to the second node; determines a status of the previous downgrade request, when a previous downgrade request has been sent; drops the demand downgrade request when the previous downgrade request is estimated to be completed within a specific future time based, at least in part, on the determined status of the previous downgrade request and the determination of lock mode compatibility; drops the previous downgrade request when the previous downgrade request is estimated to be completed outside a specific future time based, at least in part, on a determination that a page transfer has not started and the determination of lock mode compatibility; and grants the first node physical access to the page, after the second node downgrades the physical lock. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer storage device having instructions stored thereon, that if executed by a processor, causes the processor to lock retained resources of database information, the instructions comprising:
-
receiving a request on demand for physical access to a page by a task of a first node, wherein the request on demand is configured to allow the task to bypass out of order one or more waiting access requests for the page by demanding a physical lock on the page and wherein the request on demand indicates a first lock mode; determining whether a second node holds a lock on the page, the lock having a second lock mode; determining whether the first lock mode and the second lock mode are compatible; sending a demand downgrade request to the second node currently owning the physical lock; determining whether a previous downgrade request has been sent to the second node; determining a status of the previous downgrade request, when a previous downgrade request has been sent; dropping the demand downgrade request when the previous downgrade request is estimated to be completed within a specific future time based, at least in part, on the determined status of the previous downgrade request and the determination of lock mode compatibility; dropping the previous downgrade request when the previous downgrade request is estimated to be completed outside a specific future time based, at least in part, on the determined status of the previous downgrade request and a determination that the first lock mode and the second lock mode are not compatible; and granting the first node physical access to the page, after the second node downgrades the physical lock. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification