Optimal locking integrated with operational transformation in distributed real-time group editors

Locking is a standard technique in traditional distributed computing and database systems to ensure data integrity by prohibiting concurrent conflicting updates on shared data objects. Operational transformation is an innovative technique invented by groupware research for consistency maintenance in real-time group editors. In this pa per, we will examine and explore the complementary roles of locking and operational transformation in consistency mai ntenance. A novel optional locking scheme is proposed and integrated with operation transformation to maintain both generic and context-specific consistency in a distributed, interactive, and collaborative environment. The integrated optional locking and operational transformation technique i s fully distributed, highly responsive, non-blocking, and c apable of avoiding locking overhead in the most common case of collaborative editing.

[1]  Chengzheng Sun,et al.  Operational transformation in real-time group editors: issues, algorithms, and achievements , 1998, CSCW '98.

[2]  Atul Prakash,et al.  Issues in the Design of a Toolkit for Supporting Multiple Group Editors , 1993, Comput. Syst..

[3]  Clarence A. Ellis,et al.  Concurrency control in groupware systems , 1989, SIGMOD '89.

[4]  Clarence A. Ellis,et al.  Groupware: some issues and experiences , 1991, CACM.

[5]  Michael Dixon,et al.  High-latency, low-bandwidth windowing in the Jupiter collaboration system , 1995, UIST '95.

[6]  Richard E. Newman,et al.  Implicit locking in the ensemble concurrent object-oriented graphics editor , 1992, CSCW '92.

[7]  P. Bernstein RRENCY CONTROL AND RECOVERY IN DATABASE SYSTEMS , 1998 .

[8]  Saul Greenberg,et al.  Real time groupware as a distributed system: concurrency control and its effect on the interface , 1994, CSCW '94.

[9]  Richard E. Newman,et al.  MACE: a fine grained concurrent editor , 1991, COCS '91.

[10]  Atul Prakash,et al.  A framework for undoing actions in collaborative systems , 1994, TCHI.

[11]  Mukesh Singhal,et al.  Logical Time: Capturing Causality in Distributed Systems , 1996, Computer.

[12]  Ronald Baecker,et al.  The user-centered iterative design of collaborative writing software , 1993, INTERCHI.

[13]  Matthias Ressel,et al.  An integrating, transformation-oriented approach to concurrency control and undo in group editors , 1996, CSCW '96.

[14]  Prasun Dewan,et al.  A concurrency control framework for collaborative systems , 1996, CSCW '96.

[15]  Yanchun Zhang,et al.  Achieving convergence, causality preservation, and intention preservation in real-time cooperative editing systems , 1998, TCHI.