IP Library Granted Patent US 7,430,740
Granted Patent B1
US 7,430,740 · App. 10/121,428 · Granted Sep 30, 2008

Process group resource manager

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 7,430,740
App. No.
10/121,428
Granted
Sep 30, 2008
Kind
B1
Abstract

A process group resource manager for managing protected resources during transaction processing is disclosed. The process group resource manager comprises a first process configured to provide access to a protected resource during one or more transactions, the first process being further configured to construct a transaction record for each respective transaction, wherein each transaction record includes each request message received by the first process and each response message sent by the first process during a particular transaction. The process group resource manager further comprises a second process configured to serially replay the transactions in which the first process participates, the second process being configured to cause a particular transaction to rollback if the replay of that transaction does not match the transaction record constructed by the first process for that transaction. The process group resource manager also comprises a third process configured to store a durable image of the third process for use in reconstructing either the first process or the second process.

Claims (44)

1. A method for transaction processing using managed resources, the method comprising the computer-implemented steps of:

creating a record of each request sent or received by a first process during a transaction, in the order sent or received by the first process;

sending the record from the first process to a second process;

serially replaying, by the second process, the transaction that corresponds to the record constructed by the first process;

evaluating, by the second process integrity constraints for the transaction;

causing, by the second process, a transaction to rollback if the replay of that transaction does not match the record constructed by the first process for that transaction;

sending a record log from the first process to a third process of each transaction that was committed;

serially replaying by the third process each transaction that was committed;

generating a passivated recovery image of one or more committed transactions, by the third process, while the first process performs transactions; and

occasionally storing onto durable storage media, by the third process, the passivated recovery image of the third process in a between-transaction state, said passivated recovery image for use in reconstructing either the first process or the second process.

2. The method of claim 1 , further comprising the step of restoring the first process to its pre-transaction state, in the event of a rollback.

3. The method of claim 1 , further comprising the step of restoring the second process to its pre-transaction state, in the event of a rollback.

4. A process group resource manager for managing protected resources during transaction processing, the process group resource manager comprising:

a durable storage media comprising a computer-readable set of instructions executable by a processor to implement;

a first process configured to provide access to a protected resource during one or more transactions, the first process being configured to construct a transaction record for each respective transaction, wherein each transaction record includes each request message received by the first process and each response message sent by the first process during a particular transaction, wherein the first process is configured to send a copy of the transaction record to a second process, and further configured to construct a transaction record tog including each transaction successfully processed by the first process since the most recent construction of a passivated recovery image and send a copy of the transaction record log to a third process;

a second process configured to serially replay the transactions in the transaction record, the second process being configured to cause a particular transaction to rollback if the replay of that transaction does not match the transaction record constructed by the first process for the transaction and evaluate integrity constraints for the transaction; and

a third process configured to serially replay each transaction that was committed and store a durable image of the third process for use in reconstructing either the first process or the second process, generate a passivated recovery image of one or more committed transactions, while the first process performs transactions and occasionally store onto durable storage media, the passivated recovery image of the third process in a between-transaction state, said passivated recover image for use in reconstructing either the first process or the second process.

5. A computer system for distributed transaction processing, the system comprising:

a processor executing:

a first process for providing access to a protected resource during one or more transactions, the first process being further configured to construct a transaction record for each respective transaction, wherein each transaction record includes each request message received by the first process and each response message sent by the first process during a particular transaction and further configured to construct a transaction record log for each respective transaction, wherein each transaction record log includes each successfully processed transaction;

a second process configured to serially replay each transaction in the transaction record and evaluate integrity constraints for the transaction wherein the first process is further configured to send the transaction record to the second process;

the second process being configured to cause a particular transaction to rollback if the replay of that transaction does not match the transaction record constructed by the first process for the transaction; and

a third process for serially replaying each transaction that was not rolled back and storing a durable image of the third process for use in reconstructing either the first process or the second process, generating a passivated recovery image of one or more committed transactions while the first process performs transactions and occasionally storing onto durable storage media the passivated recovery image of the third process in a between-transaction state, said passivated recovery image for use in reconstructing either the first process or the second process.

6. The system of claim 5 , wherein the transaction record log is used to reconstruct the third process in the particular between-transaction state which reflects all committed transactions.

7. The process group resource manager of claim 6 , wherein the third process is adapted to assume the role of either the first process or the second process.

8. The process group resource manager of claim 6 , wherein the third process is configured to store the passivated recovery image to durable storage at between-transaction times.

9. The process group resource manager of claim 8 , wherein the second process is configured to undo the changes to the copy of the transaction protected resource by erasing all the states of the copy of the transaction protected resource and reconstructing the pre-transaction state from the passivated recovery image and the transaction record log.

10. The process group resource manager of claim 8 , wherein the first configured to undo the changes to the transaction protected resource by erasing all the states of the copy of the transaction protected resource and reconstructing the pre-transaction state from the passivated recovery image and the transaction record log.

11. A process group resource manager for use in transaction processing comprising:

a durable storage media comprising a computer-readable set of instructions executable by a processor to implement;

a first process configured to provide access to a transaction protected resource during one or more transactions and configured to construct a transaction record for each respective transaction and a transaction record log configured to receive the transaction record of each committed transaction after the most recent construction of the passivated recovery image;

a second process configured to serially replay the transactions in a copy of the transaction record received from the first process, evaluate integrity constraints for the transaction, and configured to cause a particular transaction to rollback if the replay of that transaction does not match the transaction record constructed by the first process for that transaction;

and

a third process configured to receive one or more committed transactions in a copy of the transaction record log from the first process serially replay each transaction that was not rolled back, generate a passivated recovery image of one or more committed transactions, while the first process performs transactions and configured to store the passivated recovery image of the third process to durable storage said passivated recovery image for use in reconstructing either the first process or the second process.

12. A system, comprising:

a processor;

a durable storage media comprising a computer-readable set of instructions executable by the processor to cause the computer to perform the following steps:

performing, by a first process, one or more steps in a transaction;

sending a record of the transaction, by the first process, to one or more computer resources;

serially replaying, by a second process, the transactions received from the first process;

evaluating, by the second process, an integrity constraint for the transaction; and

receiving, by a third process, a copy of one or more transactions received from the first process, wherein the third process is configured to assume the role of either the first process or the second process by generating a passivated recovery image of one or more committed transactions while the first process performs transactions and occasionally storing onto durable storage media the passivated recovery image of the third process in a between-transaction state, said passivated recovery image for use in reconstructing either the first process or the second process.

13. The system of claim 12 , wherein the first process is configured to access a protected resource and further adapted to undo changes to the protected resource by erasing all changes to the protected resource or terminating the first process.

14. The system of claim 12 , wherein the second process is configured to access a copy of a protected resource and further adapted to undo changes to the copy of the protected resource by erasing all changes to the copy of the protected resource or terminating the second process.

Assignments (13)
RELEASE OF SECURITY INTEREST Recorded Aug 3, 2020
From: MIZRAHI TEFAHOT BANK, LTD.
To: FLASH NETWORKS LTD.
Reel/Frame 053381/0675 →
RELEASE OF SECURITY INTEREST Recorded May 16, 2018
From: MIZRAHI TEFAHOT BANK, LTD
To: FLASH NETWORKS LTD.
Reel/Frame 045823/0186 →
RELEASE OF SECURITY INTEREST Recorded May 16, 2018
From: KREOS CAPITAL IV (EXPERT FUND) LIMITED
To: FLASH NETWORKS LTD
Reel/Frame 046172/0758 →
SECURITY INTEREST Recorded May 16, 2018
From: FLASH NETWORKS LTD.
To: MIZRAHI TEFAHOT BANK, LTD..
Reel/Frame 046174/0432 →
SECURITY INTEREST Recorded Jul 14, 2014
From: FLASH NETWORKS LTD.
To: KREOS CAPITAL IV (EXPERT FUND) LIMITED; MIZRAHI TEFAHOT BANK, LTD.
Reel/Frame 033309/0712 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF ASSIGNEE PREVIOUSLY RECORDED ON REEL 033181 FRAME 0904. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 9, 2014
From: MOBIXELL NETWORKS, (ISRAEL) LTD
To: FLASH NETWORKS LTD.
Reel/Frame 033272/0322 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2014
From: MOBIXELL NETWORKS, (ISRAEL) LTD
To: FLASH NETWORKS ISRAEL
Reel/Frame 033181/0904 →
INTELLECTUAL PROPERTY TRANSFER AGREEMENT Recorded Feb 11, 2013
From: 724 SOLUTIONS SOFTWARE, INC.
To: MOBIXELL NETWORKS (ISRAEL) LTD.
Reel/Frame 029810/0130 →
SECURITY AGREEMENT Recorded Jun 21, 2010
From: 724 SOLUTIONS INTERNATIONAL INC.
To: MIZRAHI TEFAHOT BANK LTD.
Reel/Frame 024563/0480 →
RELEASE OF SECURITY INTEREST Recorded Jan 26, 2010
From: 724 SOLUTIONS SOFTWARE INC.
To: SQUARE 1 BANK
Reel/Frame 023848/0317 →
NOTICE OF RELEASE OF SECURITY INTEREST IN PATENTS Recorded Jan 15, 2010
From: ESCALATE CAPITAL I, L.P.
To: 724 HOLDINGS, INC.; 724 SOLUTIONS (US) INC.; 724 SOLUTIONS INTERNATIONAL INC.; 724 SOLUTIONS SOFTWARE INC.
Reel/Frame 023796/0815 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Mar 26, 2008
From: 724 HOLDINGS, INC., A DELAWARE CORPORATION; 724 SOLUTIONS (US) INC., A DELAWARE CORPORATION; 724 SOLUTIONS SOFTWARE, INC., A DELAWARE CORPORATION; 724 SOLUTIONS INTERNATIONAL, INC., A DELAWARE CORPORATION
To: ESCALATE CAPITAL I, L.P., A DELAWARE LIMITED PARTNERSHIP
Reel/Frame 020704/0757 →
SECURITY INTEREST Recorded May 16, 2007
From: 724 SOLUTIONS SOFTWARE INC.
To: SQUARE 1 BANK
Reel/Frame 019372/0722 →