Transactional workflowsJuha Puustjärvi: Transactional workflows. PhD Thesis, Report A-1999-2, Department of Computer Science, University of Helsinki, August 1999. 104 pages. <http://www.cs.helsinki.fi/TR/A-1999/2> Full paper: gzip'ed Postscript file AbstractThe basic transaction model has evolved over time to incorporate more complex transaction structures and to selectively relax the atomicity and isolation properties. We study the relaxation of atomicity and isolation in the context of workflow systems. For long lasting transactions the atomicity property is usually enforced by some form of compensation. A problem with compensation is that other transactions may access dirty (i.e., uncommitted) data. In order to avoid the problems of dirty data we introduce the notion of options. Instead of making dirty updates, workflows acquire options. An option is a certification of the success of a possible later update. It may be a public option or an internal option. They differ in whether their effects are visible to other concurrent transactions. The implementation of options is based on the notion of a two-phase task. Such a task can also be used to supporting co-operative work. This leads to more general notion of a negotiation task. Negotiation tasks are managed by a protocol which is similar to the two-phase commit protocol in that there is a request phase and a decision phase, the spectrum of the negotiation is not restricted to atomic commitment, however. Serializability as an isolation criterion though well suitable for traditional transactions would overly restrict the concurrency of long lasting transactions. By using semantic information it is possible to weaken, or give up altogether, the serializability criterion, and yet ensure workflow execution correctness. The problem, however, is that the use of semantic information in concurrency control makes the specification as well as the management of workflows more complex. We alleviate this problem by introducing self-isolating workflows, which set and unset consistency constraints in the database in a way analogous to the way in which traditional transactions obtain and release locks. The advantages of using consistency constraints in workflow isolation are twofold. First, the expression power of consistency constraints in a database query language (SQL) is high, which in turn increases the potential degree of concurrency. Second, workflow concurrency control can be implemented by using the services of the underlying database management system. Index Terms
Categories and Subject Descriptors:
General Terms: Workflows, Databases Additional Key Words and Phrases: Advanced transactions, Atomicity, Isolation, Consistency |
Online Publications of Department of Computer Science, Anna Pienimäki