Distributed token manager with transactional properties
First Claim
Patent Images
1. A method for coordinating access to a data object utilized in a distributed software application, the method comprising:
- a server computer granting a lock for writing to the data object to a first client computer;
the first client computer performing one or more write operations to the data object according to a transactional model, wherein said performing the one or more write operations to the data object according to the transactional model enables the one or more write operations to be either committed or rolled back;
the server computer re-acquiring the lock for writing to the data object from the first client computer; and
the server computer performing one of;
committing the one or more write operations performed by the first client computer;
orrolling back the one or more write operations performed by the first client computer in response to a failure;
the server computer communicating state information for the data object to a backup server computer to maintain a backup of the state information on the backup server computer, wherein the state information comprises information regarding the lock for writing.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for controlling access to data in a distributed computer system. Distributed Token Manager (DTM) is a system-level service that coordinates read/write access of data objects (tokens) in a multi-process and multi-threaded environment. The DTM may support a transactional model such that write operations to a data object performed by a client process or thread can be either committed or rolled back.
-
Citations
29 Claims
-
1. A method for coordinating access to a data object utilized in a distributed software application, the method comprising:
-
a server computer granting a lock for writing to the data object to a first client computer; the first client computer performing one or more write operations to the data object according to a transactional model, wherein said performing the one or more write operations to the data object according to the transactional model enables the one or more write operations to be either committed or rolled back; the server computer re-acquiring the lock for writing to the data object from the first client computer; and the server computer performing one of; committing the one or more write operations performed by the first client computer;
orrolling back the one or more write operations performed by the first client computer in response to a failure; the server computer communicating state information for the data object to a backup server computer to maintain a backup of the state information on the backup server computer, wherein the state information comprises information regarding the lock for writing. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A method for coordinating access to a data object utilized in a distributed software application, the method comprising:
-
granting a lock for writing to the data object to a first client computer; storing lock information indicating that the first client computer holds the lock for writing to the data object; determining that a failure occurred on the first client computer; updating the lock information to indicate that the first client computer no longer holds the lock for writing to the data object in response to said determining that the failure occurred on the first client computer; and queuing a request by a second client computer to acquire the lock for writing to the data object after said granting the lock for writing to the data object to the first client computer; wherein the first client computer performs one or more write operations on the data object; wherein the method further comprises rolling back the one or more write operations in response to determining that the failure occurred on the first client computer. - View Dependent Claims (24)
-
-
25. A server computer operable to process requests sent by a plurality of client computers, the server computer comprising:
-
a first memory storing program instructions; a first processor coupled to the first memory; wherein the first processor is operable to execute program instructions stored in the first memory to implement a manager service; wherein the manager service is operable to; grant a lock for writing to a data object to a first client computer, wherein the data object is located on the first client computer; perform one or more write operations to the data object in response to one or more requests from the first client computer, wherein the one or more write operations to the data object are performed according to a transactional model, wherein said performing the one or more write operations to the data object according to the transactional model enables the one or more write operations to be either committed or rolled back; re-acquire the lock for writing to the data object from the first client computer; and perform one of; commit the one or more write operations to the data object;
orroll back the one or more write operations to the data object in response to a failure. - View Dependent Claims (26, 27)
-
-
28. A method for coordinating access to HTTP session data utilized in a distributed software application, the method comprising:
-
a server computer granting a lock for writing to the HTTP session data to a first client computer; the first client computer performing one or more write operations to the HTTP session data according to a transactional model, wherein said performing the one or more write operations to the HTTP session data according to the transactional model enables the one or more write operations to be either committed or rolled back; the server computer re-acquiring the lock for writing to the HTTP session data from the first client computer; and the server computer performing one of; committing the one or more write operations performed by the first client computer;
orrolling back the one or more write operations performed by the first client computer in response to a failure.
-
-
29. A distributed system operable to coordinate access to shared data, the system comprising:
-
a plurality of client computers; wherein the client computers execute client processes operable to send requests to a manager service to acquire access rights for accessing data objects stored on a first computer; wherein the manager service is operable to respond to the requests sent by the client processes to grant access rights for the data objects; wherein the manager service is operable to support a transactional model for writing to the data objects such that for each client process that acquires access rights for writing to a data object, the manager service is operable to either commit or roll back write operations which the client process performs on the data object; wherein the manager service is further operable to send a reclaim request to a client process to re-acquire access rights granted to the client; and wherein the manager service is further operable to perform one of; committing the one or more write operations performed by the first client computer;
orrolling back the one or more write operations performed by the first client computer in response to a failure.
-
Specification