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

System for selectively registering and blocking requests initiated by optimistic and pessimistic transactions respectively for shared objects based upon associated locks

Assignee: Texas Instruments Inc
•
Filing: 1991-02-21
•
Granted: 1993-11-16
•
Expires: 2011-02-21
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method is disclosed for concurrency control in a system having both pessimistic and optimistic transactions, comprises the steps of entering locks on objects both for optimistic and pessimistic transactions, and validating an optimistic transaction at commit time by checking that all objects on which said optimistic transaction holds a lock have not become obsolete during the execution of said optimistic transaction. Further, a system is shown enabling optimistic and pessimistic transactions to coexist, comprising a lock table into which locks are entered for both optimistic and pessimistic transactions, a wait queue in which pessimistic transactions are entered to wait for locks held by either optimistic or pessimistic transactions, a conflict table which is referenced to determine if a lock held by a first transaction is a conflict lock with respect to a lock requested by a second transaction, and code connected to the lock table, wait queue, and conflict table. This code which is responsive to transaction requests, updates the lock table and the wait queue so that optimistic transactions do not wait for locks to release, whereas pessimistic transactions do wait for locks to release. Other systems and methods are also disclosed.

Inventors

  • 👤 Chung C. Wang

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 18:13
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/466; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99938

Claims Analysis

Total Claims: 9
Claim 1
Independent Claim 177 words
A computer implemented method for concurrency control in a computer system having both pessimistic transactions and optimistic transactions, comprising the steps of: (a) requesting a lock by a requesting transaction from either said pessimistic transactions or said optimistic transactions wherein said lock is associated with a requested object of a plurality of objects existing in said computer system; (b) if said requesting transaction is one of said pessimistic transactions, denying access to the requested object if said lock associated with said requested object is already registered with the computer system; (c) if said requesting transaction is one of said optimistic transactions, registering with the computer system the requested lock and allowing access to the requested object regardless if said lock associated with said requested object is already registered with the computer system; and, (d) if said requesting transaction is one of said optimistic transactions, validating said requesting transaction at commit time by checking that the requested object on which said requesting transaction has registered said lock has not become obsolete during the execution of said requesting transaction.
Claim 2
Dependent Claim 177 words
A computer implemented method for concurrency control in a computer system having both pessimistic transactions and optimistic transactions, comprising the steps of: (a) requesting a lock by a requesting transaction from either said pessimistic transactions or said optimistic transactions wherein said lock is associated with a requested object of a plurality of objects existing in said computer system; (b) if said requesting transaction is one of said pessimistic transactions, denying access to the requested object if said lock associated with said requested object is already registered with the computer system; (c) if said requesting transaction is one of said optimistic transactions, registering with the computer system the requested lock and allowing access to the requested object regardless if said lock associated with said requested object is already registered with the computer system; and, (d) if said requesting transaction is one of said optimistic transactions, validating said requesting transaction at commit time by checking that the requested object on which said requesting transaction has registered said lock has not become obsolete during the execution of said requesting transaction.
Claim 3
Dependent Claim 103 words
The method of claim 1, wherein step (c) comprises the step of associating a timestamp with both a version of the requested object to which said requesting transaction holds said lock and the requested object; wherein step (d) comprises the step of verifying that the timestamp of the version of the requested object to which said requesting transaction holds said lock is the same as the timestamp of the requested object; and, wherein step (d) comprises the step of verifying that the requested lock associated with said requested object is not already registered with the computer system by one of said pessimistic transactions.
Claim 4
Dependent Claim 131 words
A computer system for concurrency control of shared objects wherein optimistic and pessimistic transactions can coexist, comprising: a lock table into which locks are entered for both optimistic and pessimistic transactions; a wait queue in which pessimistic transactions are entered to wait for locks held by either optimistic or pessimistic transactions; a conflict table which is referenced to determine if a lock held by a first transaction is a conflict lock with respect to a lock requested by a second transaction; and a code apparatus connected to said lock table, said wait queue, and said conflict table, which in response to transaction requests, updates said lock table and said wait queue so that optimistic transactions do not wait for locks to release, and pessimistic transactions do wait for locks to release.
Claim 5
Dependent Claim 131 words
A computer system for concurrency control of shared objects wherein optimistic and pessimistic transactions can coexist, comprising: a lock table into which locks are entered for both optimistic and pessimistic transactions; a wait queue in which pessimistic transactions are entered to wait for locks held by either optimistic or pessimistic transactions; a conflict table which is referenced to determine if a lock held by a first transaction is a conflict lock with respect to a lock requested by a second transaction; and a code apparatus connected to said lock table, said wait queue, and said conflict table, which in response to transaction requests, updates said lock table and said wait queue so that optimistic transactions do not wait for locks to release, and pessimistic transactions do wait for locks to release.
Claim 6
Dependent Claim 105 words
The computer system of claim 3, wherein said code apparatus further comprises: a lock request procedure connected to said wait queue and said lock table, which in response to a lock request from an optimistic transaction places a record in said lock table, which in response to a lock request from a pessimistic transaction places a record in said lock table only if there is no conflict lock on the object for which said lock request is being made, and which in response to a pessimistic transaction places said pessimistic transaction in a wait queue if there is a conflict lock in said lock table.
Claim 7
Dependent Claim 78 words
The computer system of claim 3, wherein said code apparatus further comprises: a lock release procedure connected to said wait queue and said lock table, having a code apparatus responsive to a lock release request on an object from a transaction and operable to remove a lock record from said lock table, and having a code apparatus operable to grant a lock request to a pessimistic transaction waiting in the wait queue for a lock on said object.
Claim 8
Dependent Claim 68 words
The computer system of claim 3, wherein said code apparatus further comprises: a transaction commit procedure responsive to a commit request from a transaction having a code apparatus responsive to the type of said transaction to selectively abort said transaction whenever the transaction type is optimistic and at least one object to which said transaction holds a lock is obsolete, otherwise releasing all locks and committing the transaction.
Claim 9
Dependent Claim 26 words
The computer system of claim 3, wherein said code apparatus further comprises: a transaction abort procedure to release all locks held by a transaction being aborted.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1996-11-15 1997-05-17 1997-11-16 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2000-11-15 2001-05-17 2001-11-16 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2004-11-15 2005-05-17 2005-11-16 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag