A CRDT Supporting Selective Undo for Collaborative Text Editing

  • Weihai Yu
  • Luc André
  • Claudia-Lavinia Ignat
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9038)


Undo is an important feature of editors. However, even after over two decades of active research and development, support of undo for real-time collaborative editing is still very limited. We examine issues concerning undo in collaborative text editing and present an approach using a layered commutative replicated data type (CRDT). Our performance study shows that it provides sufficient responsiveness to the end users.


Local Operation Model Operation Editing Operation Remote Operation Concurrent Operation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Seifried, T., Rendl, C., Haller, M., Scott, S.D.: Regional undo/redo techniques for large interactive surfaces. In: CHI, pp. 2855–2864 (2012)Google Scholar
  2. 2.
    Ferrié, J., Vidot, N., Cart, M.: Concurrent undo operations in collaborative environments using operational transformation. In: CoopIS/DOA/ODBASE (1), pp. 155–173 (2004)Google Scholar
  3. 3.
    Prakash, A., Knister, M.J.: A framework for undoing actions in collaborative systems. ACM Trans. Comput.-Hum. Interact. 1(4), 295–330 (1994)CrossRefGoogle Scholar
  4. 4.
    Ressel, M., Gunzenhäuser, R.: Reducing the problems of group undo. In: GROUP, pp. 131–139. ACM (1999)Google Scholar
  5. 5.
    Shao, B., Li, D., Gu, N.: An algorithm for selective undo of any operation in collaborative applications. In: GROUP, pp. 131–140. ACM (2010)Google Scholar
  6. 6.
    Sun, C., Jia, X., Zhang, Y., Yang, Y., Chen, D.: Achieving convergence, causality preservation, and intention preservation in real-time cooperative editing systems. ACM Trans. Comput.-Hum. Interact. 5(1), 63–108 (1998)CrossRefGoogle Scholar
  7. 7.
    Sun, D., Sun, C.: Context-based operational transformation in distributed collaborative editing systems. IEEE Trans. Parallel Distrib. Syst. 20(10), 1454–1470 (2009)CrossRefGoogle Scholar
  8. 8.
    Weiss, S., Urso, P., Molli, P.: Logoot-undo: Distributed collaborative editing system on P2P networks. IEEE Trans. Parallel Distrib. Syst. 21(8), 1162–1174 (2010)CrossRefGoogle Scholar
  9. 9.
    Yu, W.: Supporting string-wise operations andselective undo for peer-to-peer group editing. In: GROUP. ACM (2014)Google Scholar
  10. 10.
    Ellis, C.A., Gibbs, S.J.: Concurrency control in groupware systems. In: SIGMOD, pp. 399–407. ACM (1989)Google Scholar
  11. 11.
    André, L., Martin, S., Oster, G., Ignat, C.-L.: Supporting adaptable granularity of changes for massive-scale collaborative editing. In: CollaborateCom. IEEE (2013)Google Scholar
  12. 12.
    Oster, G., Urso, P., Molli, P., Imine, A.: Data consistency for P2P collaborative editing. In: CSCW, pp. 259–268. ACM (2006)Google Scholar
  13. 13.
    Preguiça, N.M., Marquès, J.M., Shapiro, M., Letia, M.: A commutative replicated data type for cooperative editing. In: ICDCS, pp. 395–403. IEEE Computer Society (2009)Google Scholar
  14. 14.
    Roh, H.-G., Jeon, M., Kim, J., Lee, J.: Replicated abstract data types: Building blocks for collaborative applications. J. Parallel Distrib. Comput. 71(3), 354–368 (2011)CrossRefzbMATHGoogle Scholar
  15. 15.
    Imine, A., Molli, P., Oster, G., Rusinowitch, M.: Proving correctness of transformation functions functions in real-time groupware. In: ECSCW, pp. 277–293 (2003)Google Scholar
  16. 16.
    Ahmed-Nacer, M., Ignat, C.-L., Oster, G., Roh, H.-G., Urso, P.: Evaluating CRDTs for real-time document editing. In: DocEng, pp. 103–112. ACM (2011)Google Scholar

Copyright information

© IFIP International Federation for Information Processing 2015

Authors and Affiliations

  • Weihai Yu
    • 1
  • Luc André
    • 2
    • 3
    • 4
  • Claudia-Lavinia Ignat
    • 2
    • 3
    • 4
  1. 1.Department of Computer ScienceUiT - The Arctic University of NorwayTromsøNorway
  2. 2.InriaVillers-lès-NancyFrance
  3. 3.Université de Lorraine, LORIA, UMR 7503Vandoeuvre-lès-NancyFrance
  4. 4.CNRS, LORIA, UMR 7503Vandoeuvre-lès-NancyFrance

Personalised recommendations