The Design of Cooperative Transaction Model by Using Client-Server Architecture
Engineering design applications require the support of long transactions in cooperative environments. The problem of the existing copy/update/merge approaches is that the partial effects of a committed transaction may be not part of the merged version. This paper introduces a new cooperative transaction model, which allows updates to be progressively notified or propagated into other transactions accessing the same object. To support incremental update propagation and notification, we use the term dynamic dependency to define the intertransaction dependency relationships among all the objects checked out from the public database. Consistency in multiple copies of the same object is achieved by a two-phase delta-merge protocol. Our model provides a synchronization of cooperative updates performed in several workspaces without using locking mechanisms.