US7237147B2
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and apparatus for making available data that was locked by a dead transaction before rolling back the entire dead transaction
Assignee: Oracle International Corp
•
Filing: 2003-08-27
•
Granted: 2007-06-26
•
Expires: 2023-08-27
Abstract
Abstract Described is an approach for recovering the failure of a transaction. According to the approach, a first change and a third change is made to a first resource and a second change is made to a second resource. The second change was made after the first but before the third. However, to recover the failure of the transaction, a recovery record for the third change is applied before the recovery record for the second change. Also described is an approach involving establishing links that link together a set of undo records that contain changes made to the particular resource. Also described is an approach for applying two or more undo records in parallel.
Inventors
- 👤 Amit Ganesh
- 👤 Gary C. Ngai
- 👤 Dieter Gawlick
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-04 19:11
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/14; G06F11/1474; G06F11/1471; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952; Y10S707/99953
Claims Analysis
Total Claims: 38
Claim 1
Independent Claim
138 words
A method for applying redo records from a log that reflect changes to a plurality resources, the method comprising the steps of: for each resource of said plurality of resources, establishing links that link together a set of redo records that contain changes made to the resource; for a particular resource of said plurality of resources, applying changes in the respective set of redo records to cause a particular resource to reflect changes made to the particular resource in volatile memory before a failure; wherein the step of applying changes includes following the respective links established for the particular resource to apply the changes contained in the respective set of redo records; and wherein establishing links that link together the set of redo records for each resource of said plurality of resources is performed prior to the failure.
Claim 2
Independent Claim
138 words
A method for applying redo records from a log that reflect changes to a plurality resources, the method comprising the steps of: for each resource of said plurality of resources, establishing links that link together a set of redo records that contain changes made to the resource; for a particular resource of said plurality of resources, applying changes in the respective set of redo records to cause a particular resource to reflect changes made to the particular resource in volatile memory before a failure; wherein the step of applying changes includes following the respective links established for the particular resource to apply the changes contained in the respective set of redo records; and wherein establishing links that link together the set of redo records for each resource of said plurality of resources is performed prior to the failure.
Claim 3
Dependent Claim
41 words
The method of claim 1 , wherein the step of following the links to apply the changes contained in the set of redo records is performed in response to a transaction requesting, subsequent to the failure, access to the particular resource.
Claim 4
Independent Claim
102 words
A method for applying changes in redo records to make a resource available, wherein the resource is locked by a dead transaction, the method comprising, the steps of: (A) identifying a redo record in a block-based redo chain, wherein the redo record contains least recent changes made as of a particular checkpoint time that need to be applied to the resource; (B) applying the least recent changes contained in the redo record to the resource; and (C) repeating steps (A) and (B) until all changes that are contained in redo records in the block-based redo chain have been applied to the resource.
Claim 5
Independent Claim
102 words
A method for applying changes in redo records to make a resource available, wherein the resource is locked by a dead transaction, the method comprising, the steps of: (A) identifying a redo record in a block-based redo chain, wherein the redo record contains least recent changes made as of a particular checkpoint time that need to be applied to the resource; (B) applying the least recent changes contained in the redo record to the resource; and (C) repeating steps (A) and (B) until all changes that are contained in redo records in the block-based redo chain have been applied to the resource.
Claim 6
Independent Claim
100 words
A method for applying changes in two or more undo records in parallel, wherein a plurality of resources are locked by a dead transaction, the method comprising the steps of: identifying, within a single undo log file, a plurality of sets of undo records, wherein each set of undo records of said plurality of sets of undo records does not contain any undo record that depends on any undo record in any other set of undo records of said plurality of sets of undo records; and applying the plurality of sets of undo records in parallel relative to one another.
Claim 7
Independent Claim
100 words
A method for applying changes in two or more undo records in parallel, wherein a plurality of resources are locked by a dead transaction, the method comprising the steps of: identifying, within a single undo log file, a plurality of sets of undo records, wherein each set of undo records of said plurality of sets of undo records does not contain any undo record that depends on any undo record in any other set of undo records of said plurality of sets of undo records; and applying the plurality of sets of undo records in parallel relative to one another.
Claim 8
Dependent Claim
66 words
The method of claim 4 , further comprising establishing the plurality of sets of undo records by performing steps that comprise: among the plurality of sets of undo records: assigning all undo records that are associated with a first resource to a first set of undo records; and assigning all undo records that are associated with a second resource to a second set of undo records.
Claim 9
Dependent Claim
78 words
The method of claim 5 , wherein: the step of assigning all undo records that are associated with the first resource includes the step of linking in a first chain undo records that contain changes that are associated with the first resource; and the step of assigning all undo records that are associated with the second resource includes the step of linking in a second chain undo records that contain changes that are associated with the second resource.
Claim 10
Dependent Claim
110 words
The method of claim 6 , wherein: the step of linking in the first chain undo records that contain changes that are associated with the first resource includes the step of generating a first block-based undo chain, wherein the first block-based undo chain contains undo records that contain changes that need to be applied to the first resource; and the step of linking in the second chain undo records that contain changes that are associated with the second resource includes the step of generating a second block-based undo chain, wherein the second block-based undo chain contains undo records that contain changes that need to be applied to the second resource.
Claim 11
Independent Claim
104 words
A method for linking undo records, the method comprising the steps of: identifying an undo record, wherein the undo record contains change information that is associated with a particular resource; linking the undo record into an undo record chain, wherein the undo record chain contains only undo records that contain change information that is associated with the particular resource; and wherein the step of linking the undo record includes generating identifying data in at least one of the records in the undo record chain or in the undo record, wherein said identifying data once generated identifies a particular record in the undo record chain.
Claim 12
Independent Claim
104 words
A method for linking undo records, the method comprising the steps of: identifying an undo record, wherein the undo record contains change information that is associated with a particular resource; linking the undo record into an undo record chain, wherein the undo record chain contains only undo records that contain change information that is associated with the particular resource; and wherein the step of linking the undo record includes generating identifying data in at least one of the records in the undo record chain or in the undo record, wherein said identifying data once generated identifies a particular record in the undo record chain.
Claim 13
Dependent Claim
81 words
The method of claim 8 , wherein: the step of identifying the undo record includes the step of identifying an undo record that contains change information that is associated with a particular data block; and the step of linking the undo record into the undo record chain, includes the step of linking the undo record into the undo record chain, wherein the undo record chain contains only undo records that contain change information that is associated with the particular data block.
Claim 14
Dependent Claim
56 words
The method of claim 8 , further comprising the steps of: identifying a first undo record, wherein relative to the undo record chain the first undo record contains the least recent change information that needs to be applied to the particular resource; and linking a pointer in the first undo record to the undo record chain.
Claim 15
Dependent Claim
56 words
The method of claim 8 , further comprising the steps of: identifying a last undo record, wherein relative to the undo record chain the last undo record contains the most recent change information that needs to be applied to the particular resource; and linking a pointer in the last undo record to the undo record chain.
Claim 16
Dependent Claim
28 words
The method of claim 8 , wherein the undo record chain contains only undo records that contain change information that needs to be applied to the particular resource.
Claim 17
Independent Claim
135 words
A method for recovering after failure of a transaction, the method comprising the step of: prior to said failure, storing in a first recovery record data that reflects a first change made by the transaction to a first resource; after making said first change and prior to said failure, storing in a second recovery record data that reflects a second change by the transaction to a second resource; after making said second change and prior to said failure, storing in a third recovery record data that reflects a third change to said first resource; after said failure, recovering said transaction; and wherein the step of recovering said transaction includes applying said data in said first recovery record and said data in said third recovery record prior to applying said data in said second recovery record.
Claim 18
Independent Claim
135 words
A method for recovering after failure of a transaction, the method comprising the step of: prior to said failure, storing in a first recovery record data that reflects a first change made by the transaction to a first resource; after making said first change and prior to said failure, storing in a second recovery record data that reflects a second change by the transaction to a second resource; after making said second change and prior to said failure, storing in a third recovery record data that reflects a third change to said first resource; after said failure, recovering said transaction; and wherein the step of recovering said transaction includes applying said data in said first recovery record and said data in said third recovery record prior to applying said data in said second recovery record.
Claim 19
Dependent Claim
101 words
The method of claim 13 , wherein: the step of storing in a first recovery record comprises the step of storing in a first undo record; the step of storing in a second recovery record comprises the step of storing in a second undo record; the step of storing in a third recovery record comprises the step of storing in a third undo record; and the step of applying said data comprises the step of applying said data in said first undo record and said data in said third undo record prior to applying said data in said second undo record.
Claim 20
Dependent Claim
167 words
A computer-readable storage medium storing one or more sequences of instructions for applying redo records from a log that reflect changes to a plurality resources, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: for each resource of said plurality of resources, establishing links that link together a set of redo records that contain changes made to the resource; for a particular resource of said plurality of resources, applying changes in the respective set of redo records to cause a particular resource to reflect changes made to the particular resource in volatile memory before a failure; wherein the step of applying changes includes following the respective links established for the particular resource to apply the changes contained in the respective set of redo records; and wherein establishing links that link together the set of redo records for each resource of said plurality of resources is performed prior to the failure.
Claim 21
Dependent Claim
167 words
A computer-readable storage medium storing one or more sequences of instructions for applying redo records from a log that reflect changes to a plurality resources, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: for each resource of said plurality of resources, establishing links that link together a set of redo records that contain changes made to the resource; for a particular resource of said plurality of resources, applying changes in the respective set of redo records to cause a particular resource to reflect changes made to the particular resource in volatile memory before a failure; wherein the step of applying changes includes following the respective links established for the particular resource to apply the changes contained in the respective set of redo records; and wherein establishing links that link together the set of redo records for each resource of said plurality of resources is performed prior to the failure.
Claim 22
Dependent Claim
43 words
The computer-readable storage medium of claim 15 , wherein the step of following the links to apply the changes contained in the set of redo records is performed in response to a transaction requesting, subsequent to the failure, access to the particular resource.
Claim 23
Dependent Claim
122 words
A computer-readable storage medium storing one or more sequences of instructions for applying changes in redo records to make a resource available, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: (A) identifying a redo record in a block-based redo chain, wherein the redo record contains least recent changes made as of a particular checkpoint time that need to be applied to the resource; (B) applying the least recent changes contained in the redo record to the resource; and (C) repeating steps (A) and (B) until all changes that are contained in redo records in the block-based redo chain have been applied to the resource.
Claim 24
Dependent Claim
122 words
A computer-readable storage medium storing one or more sequences of instructions for applying changes in redo records to make a resource available, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: (A) identifying a redo record in a block-based redo chain, wherein the redo record contains least recent changes made as of a particular checkpoint time that need to be applied to the resource; (B) applying the least recent changes contained in the redo record to the resource; and (C) repeating steps (A) and (B) until all changes that are contained in redo records in the block-based redo chain have been applied to the resource.
Claim 25
Dependent Claim
118 words
A computer-readable storage medium storing one or more sequences of instructions for applying changes in two or more undo records in parallel, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: identifying, within a single undo log file, a plurality of sets of undo records, wherein each set of undo records of said plurality of sets of undo records does not contain any undo record that depends on any undo record in any other set of undo records of said plurality of sets of undo records; and applying the plurality of sets of undo records in parallel relative to one another.
Claim 26
Dependent Claim
118 words
A computer-readable storage medium storing one or more sequences of instructions for applying changes in two or more undo records in parallel, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: identifying, within a single undo log file, a plurality of sets of undo records, wherein each set of undo records of said plurality of sets of undo records does not contain any undo record that depends on any undo record in any other set of undo records of said plurality of sets of undo records; and applying the plurality of sets of undo records in parallel relative to one another.
Claim 27
Dependent Claim
70 words
The computer-readable storage medium of claim 18 , the steps further comprising establishing the plurality of sets of undo records by performing steps that comprise: among the plurality of sets of undo records: assigning all undo records that are associated with a first resource to a first set of undo records; and assigning all undo records that are associated with a second resource to a second set of undo records.
Claim 28
Dependent Claim
80 words
The computer-readable storage medium of claim 19 , wherein: the step of assigning all undo records that are associated with the first resource includes the step of linking in a first chain undo records that contain changes that are associated with the first resource; and the step of assigning all undo records that are associated with the second resource includes the step of linking in a second chain undo records that contain changes that are associated with the second resource.
Claim 29
Dependent Claim
112 words
The computer-readable storage medium of claim 20 , wherein: the step of linking in the first chain undo records that contain changes that are associated with the first resource includes the step of generating a first block-based undo chain, wherein the first block-based undo chain contains undo records that contain changes that need to be applied to the first resource; and the step of linking in the second chain undo records that contain changes that are associated with the second resource includes the step of generating a second block-based undo chain, wherein the second block-based undo chain contains undo records that contain changes that need to be applied to the second resource.
Claim 30
Dependent Claim
133 words
A computer-readable storage medium storing one or more sequences of instructions for linking undo records, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: identifying an undo record, wherein the undo record contains change information that is associated with a particular resource; linking the undo record into an undo record chain, wherein the undo record chain contains only undo records that contain change information that is associated with the particular resource; and wherein the step of linking the undo record includes generating identifying data in at least one of the records in the undo record chain or in the undo record, wherein said identifying data once generated identifies a particular record in the undo record chain.
Claim 31
Dependent Claim
133 words
A computer-readable storage medium storing one or more sequences of instructions for linking undo records, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: identifying an undo record, wherein the undo record contains change information that is associated with a particular resource; linking the undo record into an undo record chain, wherein the undo record chain contains only undo records that contain change information that is associated with the particular resource; and wherein the step of linking the undo record includes generating identifying data in at least one of the records in the undo record chain or in the undo record, wherein said identifying data once generated identifies a particular record in the undo record chain.
Claim 32
Dependent Claim
83 words
The computer-readable storage medium of claim 22 , wherein: the step of identifying the undo record includes the step of identifying an undo record that contains change information that is associated with a particular data block; and the step of linking the undo record into the undo record chain, includes the step of linking the undo record into the undo record chain, wherein the undo record chain contains only undo records that contain change information that is associated with the particular data block.
Claim 33
Dependent Claim
57 words
The computer-readable storage medium of claim 22 , the steps further comprising: identifying a first undo record, wherein relative to the undo record chain the first undo record contains the least recent change information that needs to be applied to the particular resource; and linking a pointer in the first undo record to the undo record chain.
Claim 34
Dependent Claim
57 words
The computer-readable storage medium of claim 22 , the steps further comprising: identifying a last undo record, wherein relative to the undo record chain the last undo record contains the most recent change information that needs to be applied to the particular resource; and linking a pointer in the last undo record to the undo record chain.
Claim 35
Dependent Claim
30 words
The computer-readable storage medium of claim 22 , wherein the undo record chain contains only undo records that contain change information that needs to be applied to the particular resource.
Claim 36
Dependent Claim
164 words
A computer-readable storage medium storing one or more sequences of instructions for recovering after failure of a transaction, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: prior to said failure, storing in a first recovery record data that reflects a first change made by the transaction to a first resource; after making said first change and prior to said failure, storing in a second recovery record data that reflects a second change by the transaction to a second resource; after making said second change and prior to said failure, storing in a third recovery record data that reflects a third change to said first resource; after said failure, recovering said transaction; and wherein the step of recovering said transaction includes applying said data in said first recovery record and said data in said third recovery record prior to applying said data in said second recovery record.
Claim 37
Dependent Claim
164 words
A computer-readable storage medium storing one or more sequences of instructions for recovering after failure of a transaction, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: prior to said failure, storing in a first recovery record data that reflects a first change made by the transaction to a first resource; after making said first change and prior to said failure, storing in a second recovery record data that reflects a second change by the transaction to a second resource; after making said second change and prior to said failure, storing in a third recovery record data that reflects a third change to said first resource; after said failure, recovering said transaction; and wherein the step of recovering said transaction includes applying said data in said first recovery record and said data in said third recovery record prior to applying said data in said second recovery record.
Claim 38
Dependent Claim
103 words
The computer-readable storage medium of claim 27 , wherein: the step of storing in a first recovery record comprises the step of storing in a first undo record; the step of storing in a second recovery record comprises the step of storing in a second undo record; the step of storing in a third recovery record comprises the step of storing in a third undo record; and the step of applying said data comprises the step of applying said data in said first undo record and said data in said third undo record prior to applying said data in said second undo record.
References Cited (Backward Citations)
US5155678A
Cited
US5333314A
Cited
US5065311A
Cited
US5265221A
Cited
US5170480A
Cited
US5201044A
Cited
US5485608A
Cited
US5524205A
Cited
US5333303A
Cited
US5551046A
Cited
US5287501A
Cited
US5280611A
Cited
US5276901A
Cited
US5440727A
Cited
US5278982A
Cited
US5524241A
Cited
US5428778A
Cited
US5481699A
Cited
US5335343A
Cited
US5640561A
Cited
US5455944A
Cited
US5452430A
Cited
US5787428A
Cited
US5524239A
Cited
US5561795A
Cited
US5596710A
Cited
US5734817A
Cited
US6134549A
Cited
US5751949A
Cited
US5630047A
Cited
US5974563A
Cited
US5819020A
Cited
US5850507A
Cited
US6182241B1
Cited
US5857204A
Cited
US5832516A
Cited
US6067550A
Cited
US5933838A
Cited
US5940818A
Cited
US6178428B1
Cited
US6185699B1
Cited
US6185577B1
Cited
US6295610B1
Cited
US6275824B1
Cited
US6363387B1
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2010-06-25 | 2010-12-25 | 2011-06-26 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2014-06-25 | 2014-12-25 | 2015-06-26 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2018-06-25 | 2018-12-25 | 2019-06-26 | $7700.00 | Window Closed / Lapsed |