Browse Prior Art Database

Supporting Advanced Transaction Models

IP.com Disclosure Number: IPCOM000118970D
Original Publication Date: 1997-Oct-01
Included in the Prior Art Database: 2005-Apr-01
Document File: 2 page(s) / 84K

Publishing Venue

IBM

Related People

Holdsworth, SA: AUTHOR [+2]

Abstract

Many modern applications have behavior which is not best supported by a traditional transaction model. These applications require extended support, which may be supplied as extensions to existing standards, such as Object Management Group (OMG).

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Supporting Advanced Transaction Models

      Many modern applications have behavior which is not best
supported by a traditional transaction model.  These applications
require extended support, which may be supplied as extensions to
existing standards, such as Object Management Group (OMG).

      In particular, currently available transaction managers have
severe shortcomings when required to support long-running
transactions at the same time as conventional short-lived Two Phase
Committed (2PC)  transactions.

      Support, for long running workflow "transactions" can be found
in workflow products that are separate from conventional 2PC
transaction managers.  At the same time, long-running transactions,
such as Sagas,  are reliant upon the existence of conventional 2PC
systems with which database updates are coordinated.

      From an implementation standpoint, it is best if the
implementation of the advanced models has as large a common base with
the standard implementation as possible.  Separate implementations
not only result in unnecessary duplication of development effort but
also a  concomitant additional complexity of implementation and
management of the runtime system.  Bearing in mind the difficulty of
understanding, the  behavior of a distributed transaction management
system in all existing  products - both by their developers and users
- separate models for long-running and short-lived transactions are
almost certain to clash and their implementations proved error-prone.

      The described solution re-uses the components of a conventional
2PC transaction manager as the basis of a long-running transaction
manager - or rather a number of long running transaction managers,
each of which supports a particular long running transaction model,
like Sagas.  Each long running transaction manager differs only
slightly from  another and, in its behavior, from the behavior of a
short-lived transaction manager.

      The solution is not dependent upon Object Orientation (OO), but
OO terms, such as inheritance, specialization, and polymorphism, make
it easier to describe the concepts of the improved approach.  The
solution is accordingly described in the context of the Object
Transaction Service  (OTS) for the standard OMG specification, but
the concepts apply to non-OO systems equally.

      When applied to the OMG's OTS, the solution requires...