Claims Analysis
Total Claims: 7
Claim 1
Independent Claim
293 words
A method for providing data structures for transaction processing in a database system which includes a database processor, a main memory coupled to the processor, non-volatile storage for storing data structures which are staged to and from the main memory for transaction processing, a write-ahead log having a sequence of log records describing transaction updates made to data structures in the non-volatile storage, and a restart recovery mechanism, the restart mechanism including a REDO component for amending data structures in the non-volatile storage by adding to the structures updates which had not been made in the non-volatile storage by the time a failure affecting the database system occurred, and an UNDO component for rolling back transactions which were incomplete at the time of the failure and for which no log commit or in-doubt records exist in the log (in-flight transactions), the method comprising the steps of: (a) assigning a log sequence number (LSN) to each log record which denotes the log record's position in the sequence; (b) entering into each data structure staged into the non-volatile storage from the main memory, an LSN denoting the last update made to the data structure; (c) operating the restart mechanism in response to a failure in the system; (d) during step (c): (1) commencing a transaction and issuing a request from the transaction for a data structure in the non-volatile storage; (2) comparing the LSN in the data structure with a COMMIT 13 LSN, the COMMIT 13 LSN being the minimum of the LSNs denoting begin transaction log records of the in-flight transactions; and (3) if the LSN in the data structure is less than the COMMIT 13 LSN, providing the data structure to the transaction; otherwise (4) suspending the transaction until step (c) is completed.
Claim 2
Independent Claim
293 words
A method for providing data structures for transaction processing in a database system which includes a database processor, a main memory coupled to the processor, non-volatile storage for storing data structures which are staged to and from the main memory for transaction processing, a write-ahead log having a sequence of log records describing transaction updates made to data structures in the non-volatile storage, and a restart recovery mechanism, the restart mechanism including a REDO component for amending data structures in the non-volatile storage by adding to the structures updates which had not been made in the non-volatile storage by the time a failure affecting the database system occurred, and an UNDO component for rolling back transactions which were incomplete at the time of the failure and for which no log commit or in-doubt records exist in the log (in-flight transactions), the method comprising the steps of: (a) assigning a log sequence number (LSN) to each log record which denotes the log record's position in the sequence; (b) entering into each data structure staged into the non-volatile storage from the main memory, an LSN denoting the last update made to the data structure; (c) operating the restart mechanism in response to a failure in the system; (d) during step (c): (1) commencing a transaction and issuing a request from the transaction for a data structure in the non-volatile storage; (2) comparing the LSN in the data structure with a COMMIT 13 LSN, the COMMIT 13 LSN being the minimum of the LSNs denoting begin transaction log records of the in-flight transactions; and (3) if the LSN in the data structure is less than the COMMIT 13 LSN, providing the data structure to the transaction; otherwise (4) suspending the transaction until step (c) is completed.
Claim 3
Dependent Claim
33 words
The method of claim 1, wherein the COMMIT 13 LSN is the minimum LSN of all log records for updates to a data structure which were uncommitted at the time of the failure.
Claim 4
Dependent Claim
109 words
The method of claim 1, wherein the REDO component amends the data structures in the non-volatile storage before the UNDO component rolls back incomplete transactions. step (c) including providing to the REDO component a list of data structures which have been staged into the main memory from the non-volatile storage and modified, but not yet staged back to the non-volatile storage at the time of the failure; and before the UNDO component rolls back incomplete transactions, step (3) includes providing the data structure to the transaction if the LSN in the data structure is less than the COMMIT 13 LSN and the data structure is not in the list.
Claim 5
Dependent Claim
70 words
The method of claim 1, wherein: step (c) includes listing all data structures for which uncommitted transaction updates existed at the time of the failure; and step (3) includes providing the data structure to the transaction if the data structure is not listed in step (c) or if the data structure is listed in step (c) and the LSN in the data structure is less than the COMMIT 13 LSN.
Claim 6
Dependent Claim
82 words
The method of claim 4, wherein the database system includes locking means for protecting updates to the data structures, wherein: step (3) includes providing the data structure to the transaction if: the data structure is not listed in step (c); or, the data structure is listed in step (c) and all updates to the data structure have been protected; or the data structure is listed in step (c) and the LSN in the data structure is less than the COMMIT 13 LSN.
Claim 7
Independent Claim
50 words
The method of claims 4 or 5, the COMMIT 13 LSN being either the minimum of the LSNs denoting begin transaction log records of the in-flight transactions or the minimum LSN of all log records for updates to a data structure which were uncommitted at the time of the failure.