System for building optimal commit trees in a distributed...

Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S241000

Reexamination Certificate

active

06205464

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to transaction processing systems and more particularly to distributed transaction processing systems. Still more particularly, the present invention relates to the use of computer implemented objects to increase the efficiency of transaction processing systems by building optimal commit trees for transaction commitment processing.
2. Background and Related Art
Computer implemented transaction processing systems are used for critical business tasks in a number of industries. A transaction defines a single unit of work that must either be fully completed or fully purged without action. For example, in the case of a bank automated teller machine(ATM) from which a customer seeks to withdraw money, the actions of issuing the money, reducing the balance of money on hand in the machine and reducing the customer's bank balance must all occur or none of them must occur. Failure of one of the subordinate actions would lead to inconsistency between the records and actual occurrences.
Distributed transaction processing involves a transaction that affects resources at more than one physical or logical location. In the above example, an ATM transaction affects resources managed at the local ATM device as well as bank balances managed by a bank's main computer. A distributed transaction may not be physically distributed but may involve cooperating tasks that must be completed in synchrony for successful transaction completion.
The X/Open Company Limited (X/Open is a trademark of X/Open Company Ltd.) has promulgated a guide that describes one model for implementing distributed transaction processing. The
X/Open Guide, Distributed Transaction Processing Reference Model,
October, 1991, discusses the components of a distributed transaction system and the interrelationships between them. The X/Open Distributed Transaction Processing Model (the DTP Model) describes three main components: an Application Program(AP), a Transaction Manager (TM), and one or more Resource Managers (RMs). The Application Program uses and modifies the resources controlled by one or more of the Resource Managers. The Transaction Manager is responsible for global transactions and coordinates the decision whether to commit or roll-back the actions taken by the Resource Managers. (Commit causes the resources to be updated while roll-back causes all work to be discarded returning the resources to the state they were in upon transaction initiation.) The Resource Managers manage specific resources. Resource managers may include a database management system (DBMS), a file system, or similar resource.
Object oriented programming systems are designed to increase the efficiency of program development by enabling object reuse and simplifying system maintenance through clear separation of function. Each object in an object oriented system encapsulates the data for that object and the procedures or methods for operating on that data. Encapsulation means that the data for an object can be manipulated only by that object using the defined methods. Object oriented systems also implement object inheritance. Inheritance allows a more specific object to be derived from a general object. The more specific object can “inherit” all of the data and methods of the parent object, but can override selected data and methods and add others to implement its unique function.
The application of object oriented techniques to transaction processing systems raises many new issues but offers opportunities to increase system efficiency through the use of object oriented principles. The Object Management Group, Inc. (OMG) has established standards for interoperable object oriented systems. The overall architecture defined by OMG is the Common Object Request Broker Architecture (CORBA). CORBA defines the interactions between objects, and in particular, between distributed objects in different computer systems. OMG has accepted submission of a proposal to standardize transaction processing in object oriented systems. This submission, entitled the
Object Transaction Service
(
OTS
), sets forth the requirements for object services necessary to implement a transaction processing system. The OTS specification uses many of the unique capabilities of object oriented systems. The OTS model, however, is designed to be interoperable with the X/Open DTP model and with existing procedural transaction processing systems.
The X/Open DTP model describes and many commercial transaction processing systems use what is termed a “two phase commit” to decide whether or not to commit the changes made by a transaction. The first phase involves the transaction manager determining whether each of the resource managers believes it is able to successfully commit the changes made by the transaction. If any resource manager indicates that it cannot, or fails to respond, the transaction manager causes the changes to be rolled back in each resource manager. If all of the responses are positive, then the transaction manager orders all of the resource managers to commit the transaction.
One technical problem caused by the two phase commit is the large number of messages that may be generated in a distributed processing system. The transaction manager sends a first phase message to each participating resource manager, each resource manager responds, then the transaction manager sends a second message to each of the resource managers to either commit or roll back the transaction. This number of messages may not be required in every case. Resource managers may have become involved in a transaction when the application program requested read-only data from that resource. In other instances, a resource manager may have been indicated as a potential update location, but no actual change to the data may have occurred. In both of these cases the two phase commit messages were unnecessary. Currently, exporting systems have no way of tracking read-only access or access without changed data. These systems require at least the first phase message being sent to each subordinate coordinator followed by a response from the subordinate coordinator, even if the response is that the coordinator handled read-only data and need not be further involved in the transaction.
The problem therefore exists to design a distributed transaction processing system that causes messages to be sent only to those subordinate coordinators that have recoverable resources involved in the transaction, and, that causes exactly one commit sequence to be sent to each coordinator that contains one or more recoverable resources.
SUMMARY OF THE INVENTION
The present invention is directed to a system that minimizes message traffic during two phase commit processing by using interposition and dynamic registration of subordinate objects to limit the size of the commit tree. Interposition allows a subordinate coordinator to perform coordination functions for a particular domain and to cooperate in transaction completion for the overall system. Dynamic registration allows each subordinate coordinator to delay registration with its superior coordinator until there are recoverable resources in the domain it controls. The commit tree for the transaction is not changed to include a subordinate coordinator until registration. Therefore, subordinate coordinators without recoverable resources are not contacted during commit processing.
The present invention is directed to a method for minimizing message traffic in a computer implemented transaction processing system, the transaction processing operating on one or more processors each having a plurality of resources that can be changed by the transaction processing system, the method comprising the steps of: receiving a transaction request to modify one or more of the plurality of resources and assigning the transaction a global identifier; creating a first coordinator for controlling modification of the one or more resources; importing the transaction request to a plurality of subordinate transaction

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

System for building optimal commit trees in a distributed... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with System for building optimal commit trees in a distributed..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System for building optimal commit trees in a distributed... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2449932

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