HackerPapers

arXiv:1905.01302cs.DC

Real Differences between OT and CRDT in Correctness and Complexity for Consistency Maintenance in Co-Editors

David Sun, Chengzheng Sun, Agustina Ng, Weiwei Cai

Abstract

OT (Operational Transformation) was invented for supporting real-time co-editors in the late 1980s and has evolved to become core techniques widely used in today's working co-editors and adopted in 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 often portrayed OT as an incorrect and inefficient technique. Over one decade later, however, CRDT is rarely found in working co-editors; OT remains the choice for building the vast majority of today's co-editors. Contradictions between the reality and CRDT's purported advantages have been the source of much confusion and debate among co-editing researcher sand developers. To seek truth from facts, we set out to conduct a comprehensive and critical review on representative OT and CRDT solutions and 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. These discoveries help explain the underlying reasons for the choice between OT and CRDT in the real world. We report these results in a series of three articles. In the second article of this series, we reveal the differences between OT and CRDT in their basic approaches to realizing the same general transformation and how such differences had resulted in different challenges and consequential correctness and complexity issues. Moreover, we reveal hidden complexity and algorithmic flaws with representative CRDT solutions, and discuss common myths and facts related to correctness and complexity of OT and CRDT.

arXiv comments
30 pages. arXiv admin note: substantial text overlap with arXiv:1810.02137
Journal reference
PACMHCI Vol. 4, CSCW1, Article 21, May 2020
DOI
doi:10.1145/3392825
Subjects
cs.DCDistributed, Parallel, and Cluster Computing cs.HCHuman-Computer Interaction cs.SESoftware Engineering

On Hacker News

Linked by 4 identifiable commenters in 6 comments across 5 threads, from May 2019 to Jul 2023.

Comments linking this paper, per year.

Discussed in comments5 threads

    • A comment from "https://news.ycombinator.com/item?id=36208585" A Critical Examination of "The Art of the Fugue" Paper in Relation to OT The introductory paragraph of the paper's abstract states: "Existing algorithms for replicated lists, which are widely used in collaborative…

      shunzaView on HNParent context

    • A Critical Examination of "The Art of the Fugue" Paper in Relation to OT The introductory paragraph of the paper's abstract states: "Existing algorithms for replicated lists, which are widely used in collaborative text editors, suffer from a problem: when two users concurrently…

      czsunView on HNParent context

    • > Operational Transformation (OT) is one of those algorithms, which have been evolving over time, as versions of it have been proven incorrect. Source or explanation required. Also, this: https://arxiv.org/abs/1905.01302 I guess that you can argue for both sides :). But they are…

      scofalikView on HNParent context

    • > The general outlook is that, OT - while being simple, they have this classic TP2 problem that would make it harder to arrive at a consistent state eventually - without a help from a central server. The alternative is to have a complicated system, almost as complicated as…

      nusedView on HNParent context

    • BTW. there's also a more fresh paper from the same authors: https://arxiv.org/abs/1905.01302 I don't know how much they differ, though.

      scofalikView 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.