Claims
- 1. A system for transaction processing that synchronizes transaction callbacks with the completion of a transaction, comprising:
a plurality of Synchronization objects and resources that can be associated with a transaction; a transaction coordinator that registers, for a particular transaction, a set of at least one or a plurality of transaction subcoordinators, together with a selection of Synchronization object callbacks and resources, to participate in the particular transaction; and, wherein the set of transaction subcoordinators can be modified prior to committing the transaction, to reflect a change in the selection of Synchronization object callbacks and resources participating in the particular transaction.
- 2. The system of claim 1 further comprising a plurality of servers for providing Synchronization objects and resources, wherein one of said plurality of servers is selected to act as the transaction coordinator
- 3. The system of claim 2 wherein a transaction coordinator at a first server initiates the transaction preprepare process with a start preprepare call to a transaction subcoordinator at a second server, and wherein the transaction subcoordinator is responsible for processing the transaction through a transaction preprepare phase.
- 4. The system of claim 3 wherein, at any time before the transaction preprepare phase completes, additional resources at the second server can be registered with the selection of Synchronization object callbacks and resources, to participate in the particular transaction, and wherein a preprepare acknowledgment is then returned to the transaction coordinator.
- 5. A method for transaction processing that synchronizes transaction callbacks with the completion of a transaction, comprising the steps of:
providing a plurality of Synchronization objects and resources that can be associated with a transaction; registering at a transaction coordinator, for a particular transaction, a set of at least one or a plurality of transaction subcoordinators, together with a selection of Synchronization object callbacks and resources, to participate in the particular transaction; and, wherein said set of transaction subcoordinators can be modified prior to committing the transaction, to reflect a change in the selection of Synchronization object callbacks and resources participating in the particular transaction.
- 6. The method of claim 5 further comprising the step of:
selecting one of a plurality of servers is selected to act as the transaction coordinator
- 7. The method of claim 6 wherein said step of registering includes the step of:
initiating the transaction preprepare process at the transaction coordinator with a start preprepare call to a transaction subcoordinator at a second server; and, processing, at the transaction subcoordinator, the transaction through a transaction preprepare phase.
- 8. The method of claim 7 wherein said step of registering includes
registering, at any time before the transaction preprepare phase completes, additional resources at the second server, with the selection of Synchronization object callbacks and resources, to participate in the particular transaction; and, returning a preprepare acknowledgment to the transaction coordinator.
- 9. A system for transaction processing that synchronizes callbacks with the completion of said transaction, comprising instructions therein which when executed allow the system to perform the steps of:
providing a plurality of Synchronization objects for servicing transactions; passing a transaction request from a transaction coordinator to said plurality of Synchronization objects via one or more transaction subcoordinators, including
passing the transaction request to a first set of said plurality of Synchronization objects at a first subcoordinator; passing the transaction request to a second set of said plurality of Synchronization objects at a second subcoordinator; and, synchronizing the callback from the second set of Synchronization objects with the callback from the first set of Synchronization objects, prior to committing the transaction.
- 10. The system of claim 9 further comprising a plurality of servers for providing Synchronization objects and resources, wherein one of said plurality of servers is selected to act as the transaction coordinator
- 11. The system of claim 10 wherein a transaction coordinator at a first server initiates the transaction preprepare process with a start preprepare call to a first transaction subcoordinator at a second server, and wherein the first transaction subcoordinator is responsible for processing the transaction through a transaction preprepare phase including a second transaction subcoordinator at a third server.
- 12. The system of claim 11 wherein, at anytime before the transaction preprepare phase completes, additional resources at the second or third server can be registered with the selection of Synchronization object callbacks and resources, to participate in the particular transaction, and wherein a preprepare acknowledgment is then returned to the transaction coordinator.
- 13. A method for transaction processing that synchronizes callbacks with the completion of said transaction, comprising the steps of:
providing a plurality of Synchronization objects that service transactions; passing a transaction request from a transaction coordinator to said plurality of Synchronization objects via one or more transaction subcoordinators, including
passing the transaction request to a first set of said plurality of Synchronization objects at a first subcoordinator; passing the transaction request to a second set of said plurality of Synchronization objects at a second subcoordinator; and, synchronizing the callback from said second set of Synchronization objects with the callback from said first set of Synchronization objects, prior to committing the transaction.
- 14. The method of claim 13 further comprising the step of:
selecting one of a plurality of servers is selected to act as the transaction coordinator
- 15. The method of claim 14 wherein said step of registering includes the steps of:
initiating the transaction preprepare process at the transaction coordinator a first server with a start preprepare call to a first transaction subcoordinator at a second server; and, processing, at the first transaction subcoordinator, the transaction through a transaction preprepare phase including a second transaction subcoordinator at a third server.
- 16. The method of claim 15 wherein said step of synchronizing includes the steps of:
registering, at any time before the transaction preprepare phase completes, additional resources at the second or third server, with the selection of Synchronization object callbacks and resources, to participate in the particular transaction; and, returning a preprepare acknowledgment to the transaction coordinator.
- 17. A method for transaction processing that synchronizes callbacks with the completion of said transaction, comprising the steps of
preparing a transaction for processing; registering an initial set of Synchronization objects and resources that are to take place in the transaction processing; calling a transaction commit; prepreparing said transaction, includes the substeps of
checking for an additional Synchronization object or resource to participate in said transaction, adding at least one of said additional Synchronization object or said additional resource to said set of registered Synchronization objects and resources, and, calling Synchronization object callbacks for the Synchronization objects in said set of registered Synchronization objects and resources; preparing the resources in said set of registered Synchronization objects and resources; and, committing the resources in the set of registered Synchronization objects and resources have returned.
- 18. A method for transaction processing that synchronizes callbacks with the completion of said transaction, comprising the steps of
preparing a transaction for processing; registering an initial set of Synchronization objects and resources that are to take place in the transaction processing; calling a transaction commit; prepreparing said transaction, includes the substeps of
adding at least one of an additional Synchronization object or said resource to said set of registered Synchronization objects and/or resources, and, calling Synchronization object callbacks for the Synchronization objects in said set of registered Synchronization objects and resources; preparing the resources in said set of registered Synchronization objects and resources; and, committing the resources in the set of registered Synchronization objects and resources have returned.
- 19. A method for transaction processing that synchronizes callbacks with the completion of said transaction, comprising the steps of:
providing a plurality of Synchronization objects and resources that service transactions; passing a transaction request from a transaction coordinator to said plurality of Synchronization objects and said resources via one or more transaction subcoordinators, including
passing the transaction request to a first set of said plurality of Synchronization objects and resources at a first subcoordinator; passing the transaction request to a second set of said plurality of Synchronization objects and resources at a second subcoordinator; and, synchronizing the callback from said second set of Synchronization objects with the callback from said first set of Synchronization objects, prior to committing the transaction.
CLAIM OF PRIORITY
[0001] This application claims priority from provisional applications “SYSTEM FOR TRANSACTION PROCESSING WITH SYNCHRONIZED CALLBACK PROCESSING FEATURE”Application No. 60/306,105, filed Jul. 17, 2001, and “SYSTEM FOR TRANSACTION PROCESSING WITH SYNCHRONIZED CALLBACK PROCESSING FEATURE”, Application No. 60/308,693, filed Jul. 30, 2001 and which applications are incorporated herein by reference.
[0002] This application is related to copending utility applications “SYSTEM FOR TRANSACTION PROCESSING WITH TRANSACTION PROPERTY FEATURE”, Application Number ______ ,Inventors: Edward P. Felt, Priscilla Fung, Alex Somogyi, and Sriram Srinivasan, filed Jul. 15,2002; “SYSTEM FOR TRANSACTION PROCESSING WITH DELEGATED COMMIT FEATURE”, Application Number ______ , Inventors: Edward P. Felt, Priscilla Fung, Alex Somogyi, and Sriram Srinivasan, filed Jul. 15, 2002; all of which are herein incorporated by reference, in their entirety.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60306105 |
Jul 2001 |
US |
|
60308693 |
Jul 2001 |
US |