A conflict-free replicated data type
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
integrate
.gitignore
.travis.yml
LICENSE
README.md
lww.go
lww_test.go
redis.go
redis_test.go
set.go
set_test.go

README.md

A conflict-free replicated data type.

Go Lang GoDoc Build Status Coverage Status Go Report Card

What is it

In distributed computing, a conflict-free replicated data type (CRDT) is a type of specially-designed data structure used to achieve strong eventual consistency (SEC) and monotonicity (absence of rollbacks).

One type of data structure used in implementing CRDT is LWW-element-set.

LWW-element-set is a set that its elements have timestamp. Add and remove will save the timestamp along with data in two different sets for each element.

Queries over LWW-set will check both add and remove timestamps to decide about state of each element is being existed to removed from the list.