Claims Analysis
Total Claims: 28
Claim 1
Independent Claim
116 words
A method of detecting and recovering from data corruption of a database comprising: protecting data of the database with codewords, the data base having a plurality of protection regions, each region of the database having a protection codeword for protecting data of the region of the database; calculating a regional codeword for a protection region prior to reading the protected data; updating the codeword responsive to an update of a portion of the protection region that has changed, ignoring remaining portions of the protection region that have not changed; and verifying that the regional codeword matches the protection codeword stored in the protection region before the data is read from the region to prevent transaction-carried corruption.
Claim 2
Independent Claim
116 words
A method of detecting and recovering from data corruption of a database comprising: protecting data of the database with codewords, the data base having a plurality of protection regions, each region of the database having a protection codeword for protecting data of the region of the database; calculating a regional codeword for a protection region prior to reading the protected data; updating the codeword responsive to an update of a portion of the protection region that has changed, ignoring remaining portions of the protection region that have not changed; and verifying that the regional codeword matches the protection codeword stored in the protection region before the data is read from the region to prevent transaction-carried corruption.
Claim 3
Dependent Claim
27 words
A method as recited in claim 1 further comprising the step of updating a codeword for a region as necessary when data of a protected region changes.
Claim 4
Dependent Claim
34 words
A method as recited in claim 1 further comprising the step of associating a flag with an update in a log record to indicate whether a codeword change for said update has been applied.
Claim 5
Dependent Claim
23 words
A method as recited in claim 3 wherein said flag indicates a codeword applied state in an undo log record for said update.
Claim 6
Dependent Claim
20 words
A method as recited in claim 1 comprising the further step of associating a protection latch with each protected region.
Claim 7
Dependent Claim
55 words
A method as recited in claim 5 further comprising the step of verifying the integrity of data of a protected region by the substeps of acquiring the protection latch for the protected region, computing the codeword value for the protected region and comparing the computed value with a stored codeword value for the protected region.
Claim 8
Dependent Claim
22 words
A method as recited in claim 5 wherein said protection latch permits only one access to said protected region at a time.
Claim 9
Dependent Claim
32 words
A method of detecting and recovering from data corruption as recited in claim 1 further comprising the step of: storing data of the database in main volatile memory of a data processor.
Claim 10
Dependent Claim
28 words
A method of detecting and recovering from data corruption as recited in claim 1 further comprising the step of: asynchronously auditing the codewords to detect direct physical corruption.
Claim 11
Independent Claim
101 words
A method of detecting and recovering from data corruption of a database having a plurality of regions comprising: protecting data of the database with codewords, one codeword for each region of the database; updating the codeword responsive to an update of a portion of the protection region that has changed, ignoring remaining portions of the protection region that have not changed; asynchronously maintaining the codewords to improve concurrency of the database; and maintaining a redo log record having a data field for storing a modification to the codeword as a result of an update to protected data of the protected region.
Claim 12
Independent Claim
101 words
A method of detecting and recovering from data corruption of a database having a plurality of regions comprising: protecting data of the database with codewords, one codeword for each region of the database; updating the codeword responsive to an update of a portion of the protection region that has changed, ignoring remaining portions of the protection region that have not changed; asynchronously maintaining the codewords to improve concurrency of the database; and maintaining a redo log record having a data field for storing a modification to the codeword as a result of an update to protected data of the protected region.
Claim 13
Dependent Claim
32 words
A method of detecting and recovering from data corruption as recited in claim 10 further comprising the step of: storing data of the database in main volatile memory of a data processor.
Claim 14
Dependent Claim
28 words
A method of detecting and recovering from data corruption as recited in claim 10 further comprising the step of: asynchronously auditing the codewords to detect direct physical corruption.
Claim 15
Dependent Claim
64 words
A method of detecting and recovering from data corruption as recited in claim 12 comprising the auditing steps of noting the value of a codeword for a page in a codeword table, computing its value without latches or locks, noting the value in the table again and if the computed value does not match either noted value, add the page to an audit list.
Claim 16
Dependent Claim
32 words
A method as recited in claim 13 further comprising the auditing steps of executing a log flush to cause codeword updates from outstanding log records to be applied to the codeword table.
Claim 17
Dependent Claim
37 words
A method as recited in claim 14 further comprising the steps of recomputing the value of a codeword for a page of a database and comparing said recomputed value with codeword values noted during a log flush.
Claim 18
Dependent Claim
32 words
A method as recited in claim 15 further comprising the step of outputing an instance of physical corruption if the computed codeword does not match the noted codeword value during log flush.
Claim 19
Dependent Claim
26 words
The method as recited in claim 13 further comprising the step of storing a copy of pages contained in said audit list to a storage area.
Claim 20
Dependent Claim
28 words
The method as recited in claim 17 further comprising the step of applying physical updates indicated in redo logs for pages in said copy of said audit list.
Claim 21
Dependent Claim
26 words
The method as recited in claim 18 further comprising storing a copy of the codeword for each page of the audit list to a storage area.
Claim 22
Dependent Claim
52 words
The method as recited in claim 19 further comprising: (a) computing a codeword for each page contained in the copy of the audit list; (b) comparing the codeword of (a) to a corresponding codeword contained in the audit list; and (c) reporting the occurrence of corruption if the comparison of (b) fails.
Claim 23
Dependent Claim
24 words
A method of detecting and recovering from data corruption as recited in claim 10 further comprising the step of maintaining a redo log record.
Claim 24
Dependent Claim
37 words
A method of detecting and recovering from data corruption as recited in claim 21 wherein said asynchronous maintenance of codewords during log flush further comprises the step of serializing access to the codewords via a system-log latch.
Claim 25
Dependent Claim
27 words
A method of detecting and recovering from data corruption as recited in claim 10 wherein said step of asynchronously maintaining the codewords is performed during log flush.
Claim 26
Dependent Claim
42 words
A method of detecting and recovering from data corruption as recited in claim 10 further comprising the step of maintaining an undo log record for an update and each undo record comprises a codeword applied flag to signify application of a codeword.
Claim 27
Dependent Claim
34 words
A method as recited in claim 10 further comprising the steps of storing information about active transactions in an active transaction table, the active transaction table containing an undo log and a redo log.
Claim 28
Dependent Claim
55 words
The method as recited in claim 25 further comprising the steps of: outputting physical undo information from the active transaction table, including codewords corresponding to the undo information; and restoring pages of a database to a point in the redo log at which a codeword value matches the codewords output during said storing information step.