A transparent selective undo algorithm for collaborative editing

Weiwei Cai, Fazhi He, Xiao Jun Lv, Yuan Hang Cheng · 2017

In collaborative editing environments, operations issued by a group of users may be duplicate and undesired. A selective undo mechanism allows collaborative users to undo any of mis-issued operations at any time and has become an indispensable facility for collaborative editing. However, supporting selective undo is a technical challenge. The traditional selective undo approach explicitly modifies the original consistency maintenance mechanism of do operations or presents a new algorithm with integrated do and undo operations. In additional, these do operations and undo operations interfere with each other, which complicates correctness proofs and causes a high time complexity. In this paper, we propose a novel selective undo algorithm T-UNDO (transparent selective undo). T-UNDO can be transparently integrated into the consistency maintenance algorithms of do operations that maintains insertions before deletions in the edit history. Moreover, T-UNDO can achieve correct undo effect. T-UNDO has a linear time complexity of O(|Hi|+log(|Hd|)), where |Hi| is the number of insertions and |Hd| is the number of deletions in the history.

Read the paper · More papers on PaperTik