Systems and methods for the detection of a loop-back of a...

Data processing: database and file management or data structures – Database design – Data structure types

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C707S793000, C709S241000

Reexamination Certificate

active

06496825

ABSTRACT:

COPYRIGHT NOTICE
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the xerographic reproduction by anyone of the patent document or the patent disclosure in exactly the form it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
BACKGROUND OF THE INVENTION
The present invention relates generally to transaction processing, and more particularly to techniques for identifying whether an imported transaction is associated with a parent transaction that was exported by the same transaction processing system that received the imported transaction.
A transaction is most often defined as an explicitly delimited operation, or set of related operations, that change or otherwise modify the content of an information collection (e.g., database or databases) from one consistent state to another. Changes are treated as a single unit in that all changes of a transaction are formed and made permanent (the transaction is “committed”) or none of the changes are made permanent (the transaction is “aborted”). If a failure occurs during the execution of a transaction, resulting in the transaction being aborted, whatever partial changes were made to the collection are undone to leave it in a consistent state.
A transaction processing system typically includes a transaction manager (TM); a collection of subsystems, called resource managers (RMs), which are essentially abstractions of available services, such as database systems; application programs; and the like. The transaction processing system provides a way to interconnect applications and resource managers while maintaining data integrity and transactional consistency.
The application process initiating a transaction invokes various services and/or resource managers to perform various operations and tasks necessary to complete the transaction. All services and resource managers invoked to perform operations for the transaction register with a transaction manager, stating that they are joining the transaction. A transaction manager typically provides transaction management functions, such as monitoring the progress of the transaction and coordinating the commit processing and rollback of the transaction, and protects the integrity of user data. When all operations, or work, have completed, the initiating application process notifies the transaction manager of this fact. The transaction manager then initiates an agreement protocol to coordinate commitment processing among all services and resource managers (including foreign transaction managers) participating in the transaction. In transaction processing the standard agreement protocol is the two-phase commitment (2PC) protocol. A description of the 2PC protocol, as well as a detailed overview of transaction processing, is presented in J. Gray et al.,
Transaction Processing Concepts and Techniques,
Morgan Kauffman, 1993, the contents of which are herein incorporated by reference.
Briefly, in phase one of the 2PC protocol, the transaction manager issues a request prepare signal to each participant (i.e., the transaction manager asks each participating service or resource manager if it believes the operations it performed to be a consistent and complete transformation). If any participant votes no, the commit fails and the transaction is aborted and rolled back; if all participating resource managers vote yes (ready to commit), the transaction is a correct transformation and phase two commences. In phase two of the 2PC protocol, the transaction manager issues a commit request signal informing each participant that the transaction is complete, and records this fact in the transaction's log. After all participants acknowledge the commit request, the transaction manager records this fact and forgets about the transaction.
Recently, a Transaction Internet Protocol (TIP) that uses the 2PC paradigm has been proposed by the Internet Engineering Task Force (IETF). Attached hereto, as Appendix A, is the final version of the IETF paper describing TIP and its requirements. The IETF paper describes a simple 2PC protocol applicable to transactions involving resources in a distributed, Internet-connected transaction. Basically, two models are described: a “Push” model and “Pull” model.
In the Push model, an application on a first transaction processing system requests that the transaction manager of that system “export” a transaction, T
1
, to a second transaction processing system to perform some work on behalf of the application. The transaction manager of the first system “pushes” transaction T
1
to the second system by sending a message to the transaction manager of the second system. The message requests that the second system start a local transaction associated with transaction T
1
as a subordinate of the first system, and return the name, for example “LT
1
”, for that local transaction branch on the second system together with the Internet address of the local transaction branch. The transaction manager forwards to the application the name, LT
1
, and the internet address of the transaction on the second system associated with transaction T
1
. The application then sends a message to the desired application on the second system, asking it to “do some work, and make it part of the transaction that your transaction manager already knows of by the name of LT
1
.” Additionally, the first and second transaction managers each update a global map by associating the global transaction T
1
initiated on the first system with the exported transaction branch LT
1
. The global map is a data structure that is typically maintained by each transaction manager in order to associate any and all remote transaction branches, such as LT
1
, with associated global transactions, such as T
1
. Because the first system's transaction manager knows that it sent the transaction to the second system's transaction manager, the first system's transaction manager knows to involve the second system's transaction manager in the 2PC process.
In the Pull model, an application on the first system merely sends a message to an application on the second system, requesting that it “do some work, and make it part of a transaction that my transaction manager knows by the name of T
1
.” The application on the second system then requests that its transaction manager enlist in the transaction T
1
. The second system's transaction manager “pulls” transaction T
1
over from the first system and initiates a local transaction, LT
1
, associated with transaction T
1
. Also, both transaction managers each update their system's global map. As a result of the pull, the first system's transaction manager knows to involve the second system's transaction manager in the 2PC process.
In both the pull and push models, a resource on the second transaction processing system may “loop back” a transaction by exporting transaction LT
1
to the first transaction processing system to perform work on behalf of transaction LT
1
. For example, a resource on the second transaction system may send a pull request message to a second application on the first transaction processing system requesting that the second application “do some work, and make it part of a transaction that my transaction manager knows by the name LT
1
.” The second application then requests that its transaction manager enlist in the transaction LT
1
. The first system's transaction manager will check its data structure, for example its global map, and will see that transaction LT
1
is associated with transaction T
1
, which was initiated locally on the first transaction processing system. Rather than pulling the transaction LT
1
over from the second system, the first system's transaction manager will return transaction T
1
to the second application, so that the second application performs the requested work under transaction T
1
. Similarly, if a push request is sent fro

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Systems and methods for the detection of a loop-back of a... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Systems and methods for the detection of a loop-back of a..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Systems and methods for the detection of a loop-back of a... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2947247

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.