HackerPapers

arXiv:1905.01518cs.DC

Real Differences between OT and CRDT under a General Transformation Framework for Consistency Maintenance in Co-Editors

Chengzheng Sun, David Sun, Agustina, Weiwei Cai

Abstract

OT (Operational Transformation) was invented for supporting real-time co-editors in the late 1980s and has evolved to become a core technique used in today's working co-editors and adopted in major industrial products. CRDT (Commutative Replicated Data Type) for co-editors was first proposed around 2006, under the name of WOOT (WithOut Operational Transformation). Follow-up CRDT variations are commonly labeled as "post-OT" techniques capable of making concurrent operations natively commutative in co-editors. On top of that, CRDT solutions have made broad claims of superiority over OT solutions, and routinely portrayed OT as an incorrect, complex and inefficient technique. Over one decade later, however, OT remains the choice for building the vast majority of co-editors, whereas CRDT is rarely found in working co-editors. Contradictions between the reality and CRDT's purported advantages have been the source of much confusion and debate in co-editing communities. Have the vast majority of co-editors been unfortunate in choosing the faulty and inferior OT, or those CRDT claims are false? What are the real differences between OT and CRDT for co-editors? What are the key factors and underlying reasons behind the choices between OT and CRDT in the real world? To seek truth from facts, we set out to conduct a comprehensive and critical review on representative OT and CRDT solutions and working co-editors based on them. From this work, we have made important discoveries about OT and CRDT, and revealed facts and evidences that refute CRDT claims over OT on all accounts. We report our discoveries in a series of three articles and the current article is the first one in this series. We hope the discoveries from this work help clear up common misconceptions and confusions surrounding OT and CRDT, and accelerate progress in co-editing technology for real world applications.

arXiv comments
25 pages. This is the author's version of the revised and published article at PACMHCI, Vol.4. GROUP, Article 6, January 2020: https://doi.org/10.1145/3375186. arXiv admin note: substantial text overlap with arXiv:1810.02137, arXiv:1905.01302, arXiv:1905.01517
Journal reference
DOI
Subjects
cs.DCDistributed, Parallel, and Cluster Computing cs.HCHuman-Computer Interaction cs.SESoftware Engineering

On Hacker News

Linked by 2 identifiable commenters in 3 comments across 3 threads, from May 2019 to Aug 2021. Found in 1 HN submission from Jul 2020 to Jul 2020. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments3 threads

    • I like this one out of a series of similar papers: https://arxiv.org/abs/1905.01518 Maybe not light reading?, but accessible still.

      AnthonBergView on HNParent context

    • In this context, I’ve enjoyed a series of papers on CRTDs and Operational Transformation. The differences and similarities. The similarities might be greater than most are aware, and the differences more specific. This is the latest paper: https://arxiv.org/pdf/1905.01518.pdf…

      AnthonBergView on HNParent context

    • Thanks for the mention. We've re-organized the material and updated the submissions by splitting into three parts. We wanted to extend the content but felt that in its original form the article was too dense. The new structure consists of three related but more self-contained…

      nusedView on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.