Patent US5630124A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5630124A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for assuring atomicity of distributed update requests in a parallel database

Assignee: International Business Machines Corp
•
Filing: 1993-12-06
•
Granted: 1997-05-13
•
Expires: 2013-12-06
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In parallel database management systems, database update requests typically result in activity at several nodes. Rollback of all updates is required if the update of any node fails. A coordination process monitors for failure or success of updates. The coordinator further provides for distinguishing activities that have taken place at any given node from the other nodes for different database update requests. Savepoints are local. This allows rollback of a selected update without affecting nodes which did not process the update.

Inventors

  • 👤 Daniel J. Coyle, Jr.
  • 👤 Amy Chang
  • 👤 Timothy R. Malkemus
  • 👤 Walter G. Wilson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 23:32
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/14; G06F11/1471

Claims Analysis

Total Claims: 20
Claim 1
Independent Claim 141 words
A method of managing distributed requests on a parallel database management system wherein each distributed request comprises a plurality of request instances which may span a plurality of subordinate processes, comprising: distributing a plurality of request instances for a selected request to a plurality of subordinate processes, each request instance including associated request savepoint data; responsive to receipt of a request instance on a selected subordinate process, updating a local savepoint with the associated request savepoint data and locally generated savepoint data; executing the request instance for each selected subordinate process; indicating to a coordination process success or failure of execution on each request instance; and responsive to indication of failure of execution for any request instance of the selected request, performing a rollback on each subordinate process which the local savepoint indicates executed a request instance for the selected request.
Claim 2
Independent Claim 141 words
A method of managing distributed requests on a parallel database management system wherein each distributed request comprises a plurality of request instances which may span a plurality of subordinate processes, comprising: distributing a plurality of request instances for a selected request to a plurality of subordinate processes, each request instance including associated request savepoint data; responsive to receipt of a request instance on a selected subordinate process, updating a local savepoint with the associated request savepoint data and locally generated savepoint data; executing the request instance for each selected subordinate process; indicating to a coordination process success or failure of execution on each request instance; and responsive to indication of failure of execution for any request instance of the selected request, performing a rollback on each subordinate process which the local savepoint indicates executed a request instance for the selected request.
Claim 3
Dependent Claim 71 words
A method of managing distributed requests on a parallel database management system as set forth in claim 1, and further comprising: responsive to initiation of a transaction, initializing a request counter for the coordination process; responsive to receipt of a request from an application program by the coordination process, incrementing the request counter for the coordination process; and the step of distributing including passing the request counter as request savepoint data.
Claim 4
Dependent Claim 35 words
A method of managing distributed requests on a parallel database management system as set forth in claim 2, wherein locally generated savepoint data includes a log sequence number tracking instances of changes to a partition.
Claim 5
Dependent Claim 60 words
A method of managing distributed requests on a parallel database management system as set forth in claim 3, and further comprising: responsive to initiation of a transaction, initializing the local savepoint for all of a plurality of distributed processes by setting the local request counter and the log sequence number to value indicating no prior issuance of request savepoint data.
Claim 6
Dependent Claim 38 words
A method of managing distributed requests on a parallel database management system as set forth in claim 4, wherein updating of a local savepoint further includes adding a current value for the log sequence number to the savepoint.
Claim 7
Dependent Claim 69 words
A method of managing distributed requests on a parallel database management system as set forth in claim 5, and further comprising: responsive to issuance of a request instance to a selected subordinate process, discarding any prior savepoint for the selected subordinate processes; responsive to rolling back to a savepoint on a subordinate process, discarding the savepoint; and responsive to conclusion of the transaction, discarding savepoints across all subordinate processes.
Claim 8
Dependent Claim 176 words
A parallel database management system for managing distributed requests which each comprise a plurality of request instances which may span a plurality of subordinate processes, comprising: a network having a plurality of computers; a database distributed among partitions on the plurality of computers; a plurality of subordinate processes resident on the plurality of computers for generating local savepoints for the partitions, for executing a request instance and for signalling over the network failure or success of execution; a coordinator resident on a computer for receiving requests from applications wherein each request comprises a plurality of request instances, for distributing request instances and request savepoint data relating to the request to selected subordinate processes and for issuing a rollback request with a reference for comparison to the local savepoints upon receipt of a signal indicating failure of execution by a subordinate process; memory for each of the plurality of computers for storing the local savepoints between the requests; and the subordinate processes being responsive to the reference of the matching the local savepoints for executing a rollback.
Claim 9
Dependent Claim 176 words
A parallel database management system for managing distributed requests which each comprise a plurality of request instances which may span a plurality of subordinate processes, comprising: a network having a plurality of computers; a database distributed among partitions on the plurality of computers; a plurality of subordinate processes resident on the plurality of computers for generating local savepoints for the partitions, for executing a request instance and for signalling over the network failure or success of execution; a coordinator resident on a computer for receiving requests from applications wherein each request comprises a plurality of request instances, for distributing request instances and request savepoint data relating to the request to selected subordinate processes and for issuing a rollback request with a reference for comparison to the local savepoints upon receipt of a signal indicating failure of execution by a subordinate process; memory for each of the plurality of computers for storing the local savepoints between the requests; and the subordinate processes being responsive to the reference of the matching the local savepoints for executing a rollback.
Claim 10
Dependent Claim 58 words
A parallel database management system for managing distributed requests as set forth in claim 7, and further comprising: a log sequence number generator for each computer for tracking all changes to the partition during a transaction; and means with each computer responsive to receipt of a request instance for placing a log sequence number into the local savepoint.
Claim 11
Dependent Claim 30 words
A parallel database management system for managing distributed requests as set forth in claim 8, wherein the request savepoint data includes a value for the request count for the coordinator.
Claim 12
Dependent Claim 35 words
A parallel database management system for managing distributed requests as set forth in claim 9, the coordinator further including a process responsive to entry to a transaction for initiating a request counter for the coordinator.
Claim 13
Dependent Claim 44 words
A parallel database management system for managing distributed requests as set forth in claim 10, the subordinate processes further including a process responsive to entry to a transaction for initiating a request counter for each subordinate process and for initiating the log sequence count.
Claim 14
Dependent Claim 170 words
A data processing program product for assuring atomicity of distributed update requests on a parallel database management system wherein each distributed update request comprises a plurality of request instances which may span a plurality of subordinate processes, said data processing program product comprising media storing: instruction means for distributing a plurality of request instances for a selected request to a plurality of subordinate processes, each request instance including associated request savepoint data; instruction means responsive to receipt of a request instance on a selected subordinate process for updating a local savepoint with the request savepoint data associated and locally generated savepoint data; instruction means for executing the request instance for each selected subordinate process; instruction means for indicating to a coordination process success or failure of execution on each request instance; and instruction means responsive to indication of failure of execution for any request instance of the selected request for performing a rollback on each subordinate process which the local savepoint indicates executed a request instance for the selected request.
Claim 15
Dependent Claim 170 words
A data processing program product for assuring atomicity of distributed update requests on a parallel database management system wherein each distributed update request comprises a plurality of request instances which may span a plurality of subordinate processes, said data processing program product comprising media storing: instruction means for distributing a plurality of request instances for a selected request to a plurality of subordinate processes, each request instance including associated request savepoint data; instruction means responsive to receipt of a request instance on a selected subordinate process for updating a local savepoint with the request savepoint data associated and locally generated savepoint data; instruction means for executing the request instance for each selected subordinate process; instruction means for indicating to a coordination process success or failure of execution on each request instance; and instruction means responsive to indication of failure of execution for any request instance of the selected request for performing a rollback on each subordinate process which the local savepoint indicates executed a request instance for the selected request.
Claim 16
Dependent Claim 75 words
A data processing program product as set forth in claim 12, the media further comprising: instruction means responsive to initiation of a transaction for initializing a request counter for the coordination process; instruction means responsive to receipt of a request from an application program by the coordination process for incrementing the request counter for the coordination process; and the instruction means for distributing including instruction means for passing the request counter as request savepoint data.
Claim 17
Dependent Claim 28 words
A data processing program product as set forth in claim 13, wherein locally generated savepoint data includes a log sequence number tracking instances of changes to a partition.
Claim 18
Dependent Claim 57 words
A data processing program product as set forth in claim 14, the media further comprising: instruction means responsive to initiation of a transaction for initializing the local savepoint for all of a plurality of distributed processes by setting the local request counter and the log sequence number to value indicating no prior issuance of request savepoint data.
Claim 19
Dependent Claim 38 words
A data processing program product as set forth in claim 15, wherein the instruction means for updating of a local savepoint further includes instruction means for adding a current value for the log sequence number to the savepoint.
Claim 20
Dependent Claim 72 words
A data processing program product as set forth in claim 16, the media further comprising: instruction means responsive to issuance of a request instance to a selected subordinate process for discarding any prior savepoint for the selected subordinate processes; instruction means responsive to rolling back to a savepoint on a subordinate process for discarding the savepoint; and instruction means responsive to conclusion of the transaction for discarding savepoints across all subordinate processes.

References Cited (Backward Citations)

US5140689A Cited
US5201044A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-05-12 2000-11-11 2001-05-13 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-05-12 2004-11-11 2005-05-13 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-05-12 2008-11-11 2009-05-13 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag