IP Library Granted Patent US 7,966,516
Granted Patent B2
US 7,966,516 · App. 12/051,587 · Granted Jun 21, 2011

Automatic JTA migration

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,966,516
App. No.
12/051,587
Granted
Jun 21, 2011
Kind
B2
Abstract

The failure of a first application server instance of a cluster can be detected and transaction recovery service can be automatically migrated from the first application server instance to a second application server instance without requiring rebooting the first application server instance.

Claims (65)

1. A computer-based method, for use with a system that includes a cluster, of automatically performing a transaction recovery service migration in the cluster, comprising the steps of:

providing a cluster which includes a plurality of application servers, including a primary server and one or more backup servers;

providing, initially at the primary server, a transaction recovery service which logs transactions to a transaction log repository, and which recovers transactions on behalf of the primary server;

determining a configuration information which specifies an automatic migration policy for use with the transaction recovery service;

monitoring, using a singleton monitor, the presence of the transaction recovery service within the cluster;

detecting, by the singleton monitor, a failure of the primary server; and

automatically migrating the transaction recovery service from the primary server to a selected backup server, without requiring rebooting the primary server, and according to the automatic migration policy, including

running any specified post-script at the primary server to prepare for migration, including dismounting the transaction log repository if specified,

running any specified pre-script at the selected backup server to prepare for migration, including mounting the transaction log repository if specified, and

starting the transaction recovery service on the selected backup server, including accessing the transaction log repository to recover any in-flight transactions.

2. The computer-based method of claim 1 , wherein the transaction recovery service provides the Java Transaction API (JTA) within the cluster.

3. The computer-based method of claim 1 , wherein the migrated transaction recovery service includes in-flight transactions.

4. The computer-based method of claim 1 , wherein the transaction recovery service fails back to the primary server after the transaction recovery is finished, including wherein

the backup server requests a failback from the singleton monitor,

the singleton monitor detects whether the primary server is still down, and

if the primary server is no longer down, the transaction recovery service is deactivated at the backup server and migrated back to the primary server.

5. The computer-based method of claim 1 , wherein the transaction recovery service fails back to the primary server when the primary server reboots, including wherein

the primary server requests a failback from the singleton monitor, and

the singleton monitor instructs the backup server to deactivate the transaction recovery service, and migrates the transaction recovery service back to the primary server.

6. The computer-based method of claim 5 , wherein the transaction recovery service fails back to the primary server when the primary server reboots, including wherein

the primary server requests a failback from the singleton monitor, and

the singleton monitor instructs the backup server to deactivate the transaction recovery service, and migrates the transaction recovery service back to the primary server.

7. The computer-based method of claim 1 , wherein each of the plurality of application servers have a transaction recovery service running thereon which recovers pending transactions on behalf of that application server.

8. The computer-based method of claim 1 , wherein the transaction log repository is stored in a file system using a default persistent store mechanism.

9. The computer-based method of claim 1 , further comprising allowing a user to specify configuration options, including whether automatic migration of the transaction recovery service is enabled or not enabled for a particular application server.

10. A computer readable medium includes instructions stored therein which when read and executed by one or more computers cause the computers to perform the steps comprising:

provide a cluster which includes a plurality of application servers, including a primary server and one or more backup servers;

provide, initially at the primary server, a transaction recovery service which logs transactions to a transaction log repository, and which recovers transactions on behalf of the primary server;

determine a configuration information which specifies an automatic migration policy for use with the transaction recovery service;

monitor, using a singleton monitor, the presence of the transaction recovery service within the cluster;

detect, by the singleton monitor, a failure of the primary server; and

automatically migrate the transaction recovery service from the primary server to a selected backup server, without requiring rebooting the primary server, and according to the automatic migration policy, including

run any specified post-script at the primary server to prepare for migration, including dismounting the transaction log repository if specified,

run any specified pre-script at the selected backup server to prepare for migration, including mounting the transaction log repository if specified, and

start the transaction recovery service on the selected backup server, including accessing the transaction log repository to recover any in-flight transactions.

11. The computer-based method of claim 10 , wherein the transaction recovery service provides the Java Transaction API (JTA) within the cluster.

12. The computer-based method of claim 10 , wherein the migrated transaction recovery service includes in-flight transactions.

13. The computer-based method of claim 10 , wherein the transaction recovery service fails back to the primary server after the transaction recovery is finished, including wherein

the backup server requests a failback from the singleton monitor,

the singleton monitor detects whether the primary server is still down, and

if the primary server is no longer down, the transaction recovery service is deactivated at the backup server and migrated back to the primary server.

14. The computer readable medium of claim 10 , wherein each of the plurality of application servers have a transaction recovery service running thereon which recovers pending transactions on behalf of that application server.

15. The computer readable medium of claim 10 , wherein the transaction log repository is stored in a file system using a default persistent store mechanism.

16. The computer readable medium of claim 10 , further comprising instructions for allowing a user to specify configuration options, including whether automatic migration of the transaction recovery service is enabled or not enabled for a particular application server.

17. A system for automatically performing a transaction recovery service migration in a cluster, comprising:

a cluster which includes a plurality of application servers, including a primary server and one or more backup servers;

a transaction recovery service, executing initially at the primary server, which logs transactions to a transaction log repository, and which recovers transactions on behalf of the primary server;

a configuration information which specifies an automatic migration policy for use with the transaction recovery service;

a singleton monitor, which monitors the presence of the transaction recovery service within the cluster, and detects failures of the primary server; and

wherein upon detecting a failure of the primary server, the system automatically migrates the transaction recovery service from the primary server to a selected backup server, according to the automatic migration policy and without requiring rebooting the primary server, including

running any specified post-script at the primary server to prepare for migration, including dismounting the transaction log repository if specified,

running any specified pre-script at the selected backup server to prepare for migration, including mounting the transaction log repository if specified, and

starting the transaction recovery service on the selected backup server, including accessing the transaction log repository to recover any in-flight transactions.

18. The system of claim 17 , wherein the transaction recovery service provides the Java Transaction API (JTA) within the cluster.

19. The system of claim 17 , wherein the migrated transaction recovery service includes in-flight transactions.

20. The system of claim 17 , wherein the transaction recovery service fails back to the primary server after the transaction recovery is finished, including wherein

the backup server requests a failback from the singleton monitor,

the singleton monitor detects whether the primary server is still down, and

if the primary server is no longer down, the transaction recovery service is deactivated at the backup server and migrated back to the primary server.

21. The system of claim 17 , wherein the transaction recovery service fails back to the primary server when the primary server reboots, including wherein

the primary server requests a failback from the singleton monitor, and

the singleton monitor instructs the backup server to deactivate the transaction recovery service, and migrates the transaction recovery service back to the primary server.

22. The system of claim 17 , wherein each of the plurality of application servers have a transaction recovery service running thereon which recovers pending transactions on behalf of that application server.

23. The system of claim 17 , wherein the transaction log repository is stored in a file system using a default persistent store mechanism.

24. The system of claim 17 , further comprising a configuration information that allows a user to specify configuration options, including whether automatic migration of the transaction recovery service is enabled or not enabled for a particular application server.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2010
From: BEA SYSTEMS, INC.
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 025192/0244 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2008
From: WEIJUN, TIAN (WILSON); SOMOGYI, ALEXANDER J.; FUNG, PRISCILLA C.; LUO, IAN; LIU, XIANG DE
To: BEA SYSTEMS, INC.
Reel/Frame 020695/0475 →