Claims Analysis
Total Claims: 30
Claim 1
Independent Claim
139 words
A computer-implemented method for providing a data item to a transaction, the method comprising the steps of: locating, within volatile memory, a first version of a data block that includes a first version of the data item; determining whether the first version of the data item is useable by the transaction without respect to whether the first version of the data block is useable by the transaction; if the first version of the data item is usable by the transaction, then establishing said data item as a candidate that can be provided to said transaction; and if the first version of the data item is not usable by the transaction, then obtaining a version of the data item that is usable by the transaction from a second version of the data block that is different from said first version.
Claim 2
Dependent Claim
139 words
A computer-implemented method for providing a data item to a transaction, the method comprising the steps of: locating, within volatile memory, a first version of a data block that includes a first version of the data item; determining whether the first version of the data item is useable by the transaction without respect to whether the first version of the data block is useable by the transaction; if the first version of the data item is usable by the transaction, then establishing said data item as a candidate that can be provided to said transaction; and if the first version of the data item is not usable by the transaction, then obtaining a version of the data item that is usable by the transaction from a second version of the data block that is different from said first version.
Claim 3
Dependent Claim
27 words
The method of claim 1 further comprising the step of generating the second version of the data block by modifying the first version of the data block.
Claim 4
Dependent Claim
62 words
The method of claim 1 wherein the step of obtaining a version of the data item that is usable by the transaction from a second version of the data block is performed by obtaining the version of the data item that is useable from a version of the data block that is maintained separate from the first version of the data block.
Claim 5
Dependent Claim
42 words
The method of claim 1 wherein the step of determining whether the first version of the data item is useable by the transaction includes the step of comparing version information associated with the data item with snapshot information associated with the transaction.
Claim 6
Dependent Claim
41 words
The method of claim 4 wherein the step of comparing version information associated with the data item with snapshot information associated with the transaction includes comparing version information associated with the data item with a snapshot time associated with the transaction.
Claim 7
Dependent Claim
45 words
The method of claim 4 wherein the step of comparing version information associated with the data item with snapshot information associated with the transaction includes comparing version information associated with the data item with a MUST-SEE time and a CANNOT-SEE time associated with the transaction.
Claim 8
Dependent Claim
72 words
The method of claim 4 wherein: the step of comparing version information associated with the data item with snapshot information associated with the transaction includes comparing a freshness time associated with the data item with snapshot information associated with the transaction; and the freshness time indicates a commit time of a committed transaction that most recently updated the first version of the data item within the first version of the data block.
Claim 9
Dependent Claim
96 words
The method of claim 7 further comprising the step of identifying the freshness time by performing the steps of: determining whether the first version of the data item is locked; if the first version of the data item is locked, then determining whether the transaction that holds a lock on the first version of the data item has actually committed; and if the transaction that holds the lock on the first data item has actually committed, then using a commit time of said transaction that holds the lock as the freshness time of said data item.
Claim 10
Dependent Claim
137 words
The method of claim 7 further comprising the step of identifying the freshness time by performing the steps of: determining whether the first version of the data item is locked; if the first version of the data item is locked, then determining whether the transaction that holds a lock on the first version of the data item has actually committed; and if the transaction that holds the lock on the first data item has not actually committed, then determining whether the transaction that holds the lock on the first data item is the transaction that requires the data item; and if the transaction that holds the lock on the first data item is not the transaction that requires the data item, then determining that the first version of the data item is not useable by the transaction.
Claim 11
Dependent Claim
56 words
The method of claim 1 wherein: the first version of the data item is established as one candidate of a plurality of candidates that are versions of the data item that are useable by the transaction; and the method includes the step of selecting which candidate of the plurality of candidates to provide to said transaction.
Claim 12
Dependent Claim
31 words
The method of claim 1 wherein: the transaction is a transaction performed within a multi-versioning database system; and the data item is a row of a table within said database system.
Claim 13
Dependent Claim
49 words
The method of claim 10 wherein the step of selecting which candidate of the plurality of candidates to provide to said transaction is performed based on how the candidate affects a range associated with the transaction, wherein said range is bounded by a MUST-SEE time and a CANNOT-SEE time.
Claim 14
Dependent Claim
33 words
The method of claim 12 wherein the step of selecting which candidate of the plurality of candidates to provide is based on which candidate would result in the widest range for the transaction.
Claim 15
Dependent Claim
31 words
The method of claim 12 wherein the step of selecting which candidate of the plurality of candidates to provide is based on which candidate would result in the highest CANNOT-SEE time.
Claim 16
Dependent Claim
144 words
A computer-readable medium carrying instructions for providing a data item to a transaction, the instructions comprising instructions for performing the steps of: locating, within volatile memory, a first version of a data block that includes a first version of the data item; determining whether the first version of the data item is useable by the transaction without respect to whether the first version of the data block is useable by the transaction; if the first version of the data item is usable by the transaction, then establishing said data item as a candidate that can be provided to said transaction; and if the first version of the data item is not usable by the transaction, then obtaining a version of the data item that is usable by the transaction from a second version of the data block that is different from said first version.
Claim 17
Dependent Claim
144 words
A computer-readable medium carrying instructions for providing a data item to a transaction, the instructions comprising instructions for performing the steps of: locating, within volatile memory, a first version of a data block that includes a first version of the data item; determining whether the first version of the data item is useable by the transaction without respect to whether the first version of the data block is useable by the transaction; if the first version of the data item is usable by the transaction, then establishing said data item as a candidate that can be provided to said transaction; and if the first version of the data item is not usable by the transaction, then obtaining a version of the data item that is usable by the transaction from a second version of the data block that is different from said first version.
Claim 18
Dependent Claim
31 words
The computer-readable medium of claim 15 further comprising instructions for performing the step of generating the second version of the data block by modifying the first version of the data block.
Claim 19
Dependent Claim
63 words
The computer-readable medium of claim 15 wherein the step of obtaining a version of the data item that is usable by the transaction from a second version of the data block is performed by obtaining the version of the data item that is useable from a version of the data block that is maintained separate from the first version of the data block.
Claim 20
Dependent Claim
43 words
The computer-readable medium of claim 15 wherein the step of determining whether the first version of the data item is useable by the transaction includes the step of comparing version information associated with the data item with snapshot information associated with the transaction.
Claim 21
Dependent Claim
42 words
The computer-readable medium of claim 18 wherein the step of comparing version information associated with the data item with snapshot information associated with the transaction includes comparing version information associated with the data item with a snapshot time associated with the transaction.
Claim 22
Dependent Claim
46 words
The computer-readable medium of claim 18 wherein the step of comparing version information associated with the data item with snapshot information associated with the transaction includes comparing version information associated with the data item with a MUST-SEE time and a CANNOT-SEE time associated with the transaction.
Claim 23
Dependent Claim
73 words
The computer-readable medium of claim 18 wherein: the step of comparing version information associated with the data item with snapshot information associated with the transaction includes comparing a freshness time associated with the data item with snapshot information associated with the transaction; and the freshness time indicates a commit time of a committed transaction that most recently updated the first version of the data item within the first version of the data block.
Claim 24
Dependent Claim
100 words
The computer-readable medium of claim 21 further comprising instructions for performing the step of identifying the freshness time by performing the steps of: determining whether the first version of the data item is locked; if the first version of the data item is locked, then determining whether the transaction that holds a lock on the first version of the data item has actually committed; and if the transaction that holds the lock on the first data item has actually committed, then using a commit time of said transaction that holds the lock as the freshness time of said data item.
Claim 25
Dependent Claim
141 words
The computer-readable medium of claim 21 further comprising instructions for performing the step of identifying the freshness time by performing the steps of: determining whether the first version of the data item is locked; if the first version of the data item is locked, then determining whether the transaction that holds a lock on the first version of the data item has actually committed; and if the transaction that holds the lock on the first data item has not actually committed, then determining whether the transaction that holds the lock on the first data item is the transaction that requires the data item; and if the transaction that holds the lock on the first data item is not the transaction that requires the data item, then determining that the first version of the data item is not useable by the transaction.
Claim 26
Dependent Claim
61 words
The computer-readable medium of claim 15 wherein: the first version of the data item is established as one candidate of a plurality of candidates that are versions of the data item that are useable by the transaction; and the computer-readable medium includes instructions to perform the step of selecting which candidate of the plurality of candidates to provide to said transaction.
Claim 27
Dependent Claim
32 words
The computer-readable medium of claim 15 wherein: the transaction is a transaction performed within a multi-versioning database system; and the data item is a row of a table within said database system.
Claim 28
Dependent Claim
50 words
The computer-readable medium of claim 24 wherein the step of selecting which candidate of the plurality of candidates to provide to said transaction is performed based on how the candidate affects a range associated with the transaction, wherein said range is bounded by a MUST-SEE time and a CANNOT-SEE time.
Claim 29
Dependent Claim
34 words
The computer-readable medium of claim 26 wherein the step of selecting which candidate of the plurality of candidates to provide is based on which candidate would result in the widest range for the transaction.
Claim 30
Dependent Claim
32 words
The computer-readable medium of claim 26 wherein the step of selecting which candidate of the plurality of candidates to provide is based on which candidate would result in the highest CANNOT-SEE time.