Skip to content
This repository has been archived by the owner on Jun 1, 2021. It is now read-only.

Switch to pure operation-based CRDTs #301

Open
krasserm opened this issue Sep 1, 2016 · 0 comments
Open

Switch to pure operation-based CRDTs #301

krasserm opened this issue Sep 1, 2016 · 0 comments
Labels

Comments

@krasserm
Copy link
Contributor

krasserm commented Sep 1, 2016

The approach is described in Making Operation-based CRDTs Operation-based. At the moment, the implementation follows the approach from A comprehensive study of Convergent and Commutative Replicated Data Types which requires access to local CRDT state during the prepare phase.

Eventuate already provides a reliable causal broadcast via replicated event logs and additionally exposes causality information (vector timestamps) during event delivery. In other words, it provides the Tagged Reliable Causal Broadcast (TRCB) API as described in the paper. What is still missing is the causal stability part of the TRCB API but this should be a minor effort to implement.

Freeing CRDTs from local state access during the prepare phase allows for much more efficient batching of operations messages (i.e. events) being written to the event log, which will significantly increase write throughput.

@krasserm krasserm self-assigned this Sep 1, 2016
@krasserm krasserm changed the title Make all operation-based CRDTs pure Switch to pure operation-based CRDTs Sep 1, 2016
@krasserm krasserm removed their assignment Oct 5, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

1 participant