System and method for determining staleness of data received from a distributed lock manager
First Claim
1. A method, comprising:
- one or more computer systems implementing a client of a distributed lock manager, the distributed lock manager comprising a plurality of nodes maintaining a shared state;
the client sending a request to the distributed lock manager, the request including a local time of the client;
the client receiving a response to the request from a node of the plurality of nodes, the response indicating that a lock corresponding to a given resource has been granted to the client, wherein the response also includes an echo of the local time that was included in the request;
the client utilizing the resource subsequent to receiving the response;
the client determining that a safe period of time has elapsed, said determining being dependent at least on a client staleness, the client staleness corresponding to a difference between the echoed local time and a current local time;
in response to determining that the safe period of time has elapsed, the client ceasing to utilize the resource, said ceasing being irrespective of whether the lock has been revoked from the client by the distributed lock manager.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system are disclosed for implementing a client of a distributed lock manager comprising a plurality of nodes. The client is configured to send a request to the distributed lock manager, the request including a local time of the client. The client receives a response to the request from a node of the distributed lock manager where the request includes an echo of the local time included in the request. The response also indicates that a lock corresponding to a given resource has been granted to the client and the client subsequently utilizes the resource. The client subsequently determines that a safe period of time has elapsed for using the resource. This determination is dependent at least on a client staleness corresponding to a difference between the echoed time and current local time at the client.
-
Citations
20 Claims
-
1. A method, comprising:
-
one or more computer systems implementing a client of a distributed lock manager, the distributed lock manager comprising a plurality of nodes maintaining a shared state; the client sending a request to the distributed lock manager, the request including a local time of the client; the client receiving a response to the request from a node of the plurality of nodes, the response indicating that a lock corresponding to a given resource has been granted to the client, wherein the response also includes an echo of the local time that was included in the request; the client utilizing the resource subsequent to receiving the response; the client determining that a safe period of time has elapsed, said determining being dependent at least on a client staleness, the client staleness corresponding to a difference between the echoed local time and a current local time; in response to determining that the safe period of time has elapsed, the client ceasing to utilize the resource, said ceasing being irrespective of whether the lock has been revoked from the client by the distributed lock manager. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-transitory computer-readable storage medium storing program instructions executable by a processor to implement:
a client of a distributed lock manager, the distributed lock manager comprising a plurality of nodes maintaining a shared state, wherein the client is configured to; send a request to the distributed lock manager, the request including a local time of the client; receive a response to the request from a node of the plurality of nodes, the response indicating that a lock corresponding to a given resource has been granted to the client, wherein the response also includes an echo of the local time that was included in the request; utilize the resource subsequent to receiving the response; determine that a safe period of time has elapsed, said determining being dependent at least on a client staleness, the client staleness corresponding to a difference between the echoed local time and a current local time; in response to determining that the safe period of time has elapsed, cease to utilize the resource, said ceasing being irrespective of whether the lock has been revoked from the client by the distributed lock manager. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
17. A computer system comprising:
-
a processor; a memory coupled to the processor and storing program instructions executable by the processor to implement; a client of a distributed lock manager, the distributed lock manager comprising a plurality of nodes maintaining a shared state, wherein the client is configured to; send a request to the distributed lock manager, the request including a local time of the client; receive a response to the request from a node of the plurality of nodes, the response indicating that a lock corresponding to a given resource has been granted to the client, wherein the response also includes an echo of the local time that was included in the request; utilize the resource subsequent to receiving the response; determine that a safe period of time has elapsed, said determining being dependent at least on a client staleness, the client staleness corresponding to a difference between the echoed local time and a current local time; in response to determining that the safe period of time has elapsed, cease to utilize the resource, said ceasing being irrespective of whether the lock has been revoked from the client by the distributed lock manager. - View Dependent Claims (18, 19, 20)
-
Specification