Repository logo
 

The Art of the Fugue: Minimizing Interleaving in Collaborative Text Editing

Accepted version
Peer-reviewed

Loading...
Thumbnail Image

Change log

Abstract

Most existing algorithms for replicated lists, which are widely used in collaborative text editors, suffer from a problem: when two users concurrently insert text at the same position in the document, the merged outcome may interleave the inserted text passages, resulting in corrupted and potentially unreadable text. The problem has gone unnoticed for decades, and it affects both CRDTs and Operational Transformation. This paper defines maximal non-interleaving, our new correctness property for replicated lists. We introduce two related CRDT algorithms, Fugue and FugueMax, and prove that FugueMax satisfies maximal non-interleaving. We also implement our algorithms and demonstrate that Fugue offers performance comparable to state-of-the-art CRDT libraries for text editing.

Description

Journal Title

IEEE Transactions on Parallel and Distributed Systems

Conference Name

Journal ISSN

1045-9219
1558-2183

Volume Title

Publisher

Institute of Electrical and Electronics Engineers (IEEE)

Rights and licensing

Except where otherwised noted, this item's license is described as Attribution 4.0 International
Sponsorship
Matthew Weidner was supported by an NDSEG Fellowship sponsored by the US Office of Naval Research. Martin Kleppmann's work was funded by the Volkswagen Foundation and crowdfunding supporters including SoftwareMill.