IP Library Granted Patent US 8,479,044
Granted Patent B2
US 8,479,044 · App. 12/841,318 · Granted Jul 2, 2013

Method for determining a state associated with a transaction

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,479,044
App. No.
12/841,318
Granted
Jul 2, 2013
Kind
B2
Abstract

A computer implemented method, apparatus, and computer program product for determining a state associated with a transaction for use with a transactional processing system comprising a transaction coordinator and a plurality of grouped and inter-connected resource managers, the method comprising the steps of: in response to a communications failure between the transaction coordinator and a first resource manager causing a transaction to have an in doubt state, connecting to a second resource manager; in response to the connecting step, sending by the transaction coordinator to the second resource manager, a query requesting data associated with the in doubt transaction; obtaining at the first resource manager, by the second resource manager, a shared lock to data associated with the in doubt transaction; and in response to the obtaining step, collating, by the second resource manager, data associated with the in doubt transaction associated with the first resource manager.

Claims (36)

1. A computer implemented method for determining a state associated with a transaction for use with a transactional processing system comprising a transaction coordinator and a plurality of grouped and inter-connected resource managers, the computer implemented method comprising

responsive to a communications failure between the transaction coordinator and a first resource manager causing a transaction to have an in-doubt state, connecting to a second resource manager;

responsive to connecting, sending by the transaction coordinator to the second resource manager, a query requesting data associated with an in-doubt transaction;

determining a size associated with a subset of a first log associated with the first resource manager, and subsequently, obtaining at the first resource manager, by the second resource manager, a shared lock to data associated with the in-doubt transaction, wherein the obtaining further comprises obtaining a shared lock to the subset; and

responsive to obtaining, collating, by the second resource manager, data associated with the in-doubt transaction associated with the first resource manager;

determining whether the size associated with the subset has changed;

responsive to determining that the size has not changed, transmitting the data associated with the in-doubt transaction associated with the first resource manager to the transaction coordinator; and

responsive to determining that the size has changed, re-obtaining a shared lock to the subset;

collating, by the second resource manager, data associated with the in-doubt transaction associated with the first resource manager; and responsively, releasing the shared lock.

2. The computer implemented method as claimed in claim 1 , further:

determining, prior to obtaining, whether the first resource manager is active.

3. The computer implemented method of claim 1 , wherein collating, by the second resource manager, data associated with the in-doubt transaction associated with the first resource manager further comprises:

reading the first log associated with the first resource manager.

4. The computer implemented method of claim 1 , further comprising:

in response to collating, by the second resource manager, data associated with the in-doubt transaction associated with the first resource manager, releasing the shared lock.

5. The computer implemented method of claim 1 , further comprising:

responsive to sending, collating, by the second resource manager, data associated with an in-doubt transaction associated with each other resource manager in the group.

6. The computer implemented method of claim 1 , further comprising:

transmitting collated data associated with one or more in-doubt transactions to the transaction coordinator.

7. The computer implemented method of claim 1 , wherein collating data, by the second resource manager, forms received collated data, further comprising:

using, by the transaction coordinator, the received collated data in order to determine a transaction resolution.

8. A computer implemented method for determining a state associated with a transaction for use with a transactional processing system comprising a transaction coordinator and a plurality of grouped and inter-connected resource managers, the computer implemented method comprising:

responsive to a communications failure between the transaction coordinator and a first resource manager causing a transaction to have an in-doubt state, connecting to a second resource manager;

responsive to connecting, sending by the transaction coordinator to the second resource manager, a query requesting data associated with an in-doubt transaction;

responsive to sending, collating, by the second resource manager, data associated with the in-doubt transaction associated with the second resource manager;

determining a size associated with a subset of a first log associated with the first resource manager, and subsequently, obtaining at the first resource manager, by the second resource manager, a shared lock to data associated with the in-doubt transaction, wherein the obtaining further comprises obtaining a shared lock to the subset; and

responsive to obtaining, collating, by the second resource manager, data associated with the in-doubt transaction associated with the first resource manager.

9. A hardware apparatus for determining a state associated with a transaction comprising a transaction coordinator and a plurality of grouped and inter-connected resource managers, the apparatus comprising:

means, responsive to a communications failure between the transaction coordinator and a first resource manager causing a transaction to have an in-doubt state, for connecting to a second resource manager;

means, responsive to the connection means, for causing the transaction coordinator to send to the second resource manager, a query requesting data associated with the in-doubt transaction;

means for determining a size associated with a subset of a first log associated with the first resource manager;

means for causing the second resource manager, subsequent to determining a size associated with a subset of a first log associated with the first resource manager, to obtain, at the first resource manager, a shared lock to data associated with the in-doubt transaction; and

means, responsive to the obtaining means, for causing the second resource manager to collate data associated with the in-doubt transaction associated with the first resource manager;

means, responsive to determining that the size has not changed for transmitting the data associated with the in-doubt transaction associated with the first resource manager to the transaction coordinator; and

means, responsive to determining that the size has changed for re-obtaining a shared lock to the subset;

means for collating, by the second resource manager, data associated with the in-doubt transaction associated with the first resource manager; and responsively, releasing the shared lock.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: AIRBNB, INC.
Reel/Frame 056427/0193 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 1- PROVIDE ASSIGNOR'S SIGNATURE ACCORDING TO 37 CFR 1.47(B) STATUS PREVIOUSLY RECORDED ON REEL 024731 FRAME 0860. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 29, 2010
From: DENNIS, PAUL S.; HOBSON, STEPHEN J.; SIDDALL, PETE; SQUIBB, JAMIE P.; WILLOUGHBY, PHILIP G.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 024762/0236 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2010
From: DENNIS, PAUL S.; HOBSON, STEPHEN J.; SIDDALL, PETE; SQUIBB, JAMIE P.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 024731/0860 →