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

Dynamic snapshot set adjustment

Assignee: Oracle International Corp
•
Filing: 1997-04-23
•
Granted: 1999-02-16
•
Expires: 2017-04-23
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for determining whether a particular version of a data item may be used by a transaction are provided. To determine whether the particular version may be used by the transaction, a MUST-SEE set associated with the transaction is compared to an EXCLUDED set associated with the particular version, and a CANNOT-SEE set associated with the transaction is compared to an INCLUDED set associated with the particular version. The MUST-SEE set includes all transactions that have made updates that must be seen by the transaction. The EXCLUDED set includes all transactions that have made updates to the data item that have been removed from the particular version of the data item and all transactions that will make changes to the data item in the future. The CANNOT-SEE set includes all transactions that have made updates that cannot be seen by the transaction. The INCLUDED set includes all transactions that have made updates that are reflected in the particular version of the data item. The particular version can be supplied to the transaction if no member of the MUST-SEE set is also a member of the EXCLUDED set, and no member of the CANNOT-SEE set is also a member of the INCLUDED set.

Inventors

  • 👤 Roger Bamford
  • 👤 Boris Klots
  • 👤 Garret Swart

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 22:47
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/466; G06F16/00; G06F16/20; G06F16/23; G06F16/2308; G06F16/2315; G06F16/2329; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99938; Y10S707/99951; Y10S707/99952; Y10S707/99953; Y10S707/99954

Claims Analysis

Total Claims: 15
Claim 1
Independent Claim 238 words
A method for determining whether a particular version of a data item may be used by a transaction, the method comprising the steps of: comparing a MUST-SEE set associated with the transaction to an EXCLUDED set associated with the particular version, the MUST-SEE set including all transactions that have made updates that must be seen by the transaction, the EXCLUDED set including all transactions that have made updates to the data item that have been removed from the particular version of the data item and all transactions that will make changes to the data item in the future; and comparing a CANNOT-SEE set associated with the transaction to an INCLUDED set associated with the particular version, the CANNOT-SEE set including all transactions that have made updates that cannot be seen by the transaction, the INCLUDED set including all transactions that have made updates that are reflected in the particular version of the data item; and determining that the particular version can be supplied to the transaction if no member of the MUST-SEE set is also a member of the EXCLUDED set, and no member of the CANNOT-SEE set is also a member of the INCLUDED set; and determining that the particular version cannot be supplied to the transaction if any member of the MUST-SEE set is also a member of the EXCLUDED set, or any member of the CANNOT-SEE set is also a member of the INCLUDED set.
Claim 2
Independent Claim 238 words
A method for determining whether a particular version of a data item may be used by a transaction, the method comprising the steps of: comparing a MUST-SEE set associated with the transaction to an EXCLUDED set associated with the particular version, the MUST-SEE set including all transactions that have made updates that must be seen by the transaction, the EXCLUDED set including all transactions that have made updates to the data item that have been removed from the particular version of the data item and all transactions that will make changes to the data item in the future; and comparing a CANNOT-SEE set associated with the transaction to an INCLUDED set associated with the particular version, the CANNOT-SEE set including all transactions that have made updates that cannot be seen by the transaction, the INCLUDED set including all transactions that have made updates that are reflected in the particular version of the data item; and determining that the particular version can be supplied to the transaction if no member of the MUST-SEE set is also a member of the EXCLUDED set, and no member of the CANNOT-SEE set is also a member of the INCLUDED set; and determining that the particular version cannot be supplied to the transaction if any member of the MUST-SEE set is also a member of the EXCLUDED set, or any member of the CANNOT-SEE set is also a member of the INCLUDED set.
Claim 3
Dependent Claim 93 words
The method of claim 1 further comprising the steps of: supplying the particular version of the data item to the transaction if no member of the MUST-SEE set is also a member of the EXCLUDED set, and no member of the CANNOT-SEE set is also a member of the INCLUDED set; and in response to supplying the particular version of the data item to the transaction, performing the steps of adding the members of the EXCLUDED set to the CANNOT-SEE set; and adding the members of the INCLUDED set to the MUST-SEE set.
Claim 4
Dependent Claim 77 words
The method of claim 1 further comprising the steps of: storing a MUST-SEE time value to represent the MUST-SEE set, wherein all transactions that committed prior to the time represented by the MUST-SEE time value are considered to be in the MUST-SEE set; and determining a INCLUDED time value to represent the INCLUDED set, wherein all transactions that committed prior to the time represented by the INCLUDED time value are considered to be in the INCLUDED set.
Claim 5
Dependent Claim 43 words
The method of claim 3 wherein the step of determining the INCLUDED time value includes determining a commit time of a last transaction to commit of all the transactions that performed updates that are reflected in the particular version of the data item.
Claim 6
Dependent Claim 77 words
The method of claim 2 further comprising the steps of: storing a MUST-SEE time value to represent the MUST-SEE set, wherein all transactions that committed prior to the time represented by the MUST-SEE time value are considered to be in the MUST-SEE set; and determining an INCLUDED time value to represent the INCLUDED set, wherein all transactions that committed prior to the time represented by the INCLUDED time value are considered to be in the INCLUDED set.
Claim 7
Dependent Claim 39 words
The method of claim 5 wherein the step of adding the members of the INCLUDED set to the MUST-SEE set comprises setting the MUST-SEE time value to the greater of the MUST-SEE time value and the INCLUDED time value.
Claim 8
Dependent Claim 85 words
The method of claim 3 wherein: the step of comparing a MUST-SEE set associated with the transaction to an EXCLUDED set associated with the particular version includes determining whether any transaction in the EXCLUDED set committed before the time indicated by the MUST-SEE time value; and the step of comparing a CANNOT-SEE set associated with the transaction to an INCLUDED set associated with the particular version includes determining whether any transaction in the CANNOT-SEE set committed before the time indicated by the INCLUDED time value.
Claim 9
Dependent Claim 32 words
The method of claim 1 further comprising the step of resetting the MUST-SEE set associated with the transaction and the CANNOT-SEE set associated with the transaction for every statement in the transaction.
Claim 10
Dependent Claim 138 words
The method of claim 1 further comprising the steps of: the transaction issuing a statement that requires access to the data item and a second data item; supplying a version of the second data item to the transaction before supplying a version of the data item to the transaction; adding to the MUST-SEE set of the transaction all transactions that have made updates to the second data item that have not been removed from the version of the second data item that was supplied to the transaction; and adding to the CANNOT-SEE set of the transaction all transactions that have made updates to the second data item that have been removed from the version of the second data item that was supplied to the transaction and all transactions that will update the second data item in the future.
Claim 11
Dependent Claim 28 words
The method of claim 1 further comprising the step of adding all transactions that committed prior to a predetermined time to the MUST-SEE set associated with the transaction.
Claim 12
Dependent Claim 20 words
The method of claim 10 wherein the predetermined time is a predetermined amount of time previous to a current time.
Claim 13
Independent Claim 252 words
A method for determining whether a particular version of a first data item may be supplied to a transaction in response to a statement, the method comprising the steps of: supplying a particular version of a second data item to said transaction in response to said statement; adding transactions whose updates are reflected in the particular version of the second data item to a MUST-SEE set associated with said transaction; adding transactions whose updates have been removed from the particular version of the second data item and transactions who will later update the data item to a CANNOT-SEE set associated with said transaction; if any transactions in the MUST-SEE set associated with the transaction have made updates that have been removed from the particular version of the first data item, then supplying a different version of the first data item to the transaction; if any transactions in the CANNOT-SEE set associated with the transaction have made updates reflected in the particular version of the first data item, then supplying a different version of the first data item to the transaction; and if no transactions in the MUST-SEE set associated with the transaction have made updates that have been removed from the particular version of the first data item or subsequently update the first data item and no transactions in the CANNOT-SEE set associated with the transaction have made updates reflected in the particular version of the first data item, then supplying the particular version of the first data item to the transaction.
Claim 14
Independent Claim 252 words
A method for determining whether a particular version of a first data item may be supplied to a transaction in response to a statement, the method comprising the steps of: supplying a particular version of a second data item to said transaction in response to said statement; adding transactions whose updates are reflected in the particular version of the second data item to a MUST-SEE set associated with said transaction; adding transactions whose updates have been removed from the particular version of the second data item and transactions who will later update the data item to a CANNOT-SEE set associated with said transaction; if any transactions in the MUST-SEE set associated with the transaction have made updates that have been removed from the particular version of the first data item, then supplying a different version of the first data item to the transaction; if any transactions in the CANNOT-SEE set associated with the transaction have made updates reflected in the particular version of the first data item, then supplying a different version of the first data item to the transaction; and if no transactions in the MUST-SEE set associated with the transaction have made updates that have been removed from the particular version of the first data item or subsequently update the first data item and no transactions in the CANNOT-SEE set associated with the transaction have made updates reflected in the particular version of the first data item, then supplying the particular version of the first data item to the transaction.
Claim 15
Dependent Claim 73 words
The method of claim 12 wherein the step of adding transactions whose updates are reflected in the particular version of the second data item to a MUST-SEE set includes the step of setting a MUST-SEE time associated with the transaction to a value that reflects a time that is at least as recent as the commit times of the transactions whose updates are reflected in the particular version of the second data item.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-02-15 2002-08-17 2003-02-16 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-02-15 2006-08-17 2007-02-16 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-02-15 2010-08-17 2011-02-16 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag