This repository is a stripped-down version of the brilliant DistributedClocks/GoVector
library.
Unfortunately, the original library is outdated and has a few bugs that make its use impossible.
This library is created as a drop-in replacement for github.com/DistributedClocks/GoVector/govec/vclock
.
Other functionality of the package is not implemented.
As of now, these are the major changes:
- include a working
go.mod
file with a specific tag - fix a bug where
ReturnVCString
is non-deterministic (see this PR) - fix a subtle bug in the vector clock comparison function (see this issue)
- introduce an
Order()
function that returns the relationship of two vector clocks, based on the Voldemort implementation of vector clocks - improve documentation
To use this package in your code, download the latest version:
go get git.tu-berlin.de/mcc-fred/vclock
Then replace your import directives from
import (
"github.com/DistributedClocks/GoVector/govec/vclock"
)
to
import (
"git.tu-berlin.de/mcc-fred/vclock"
)
All code continues to be licensed under the MIT license.
Note that most development is done on the TU Berlin GitLab instance. A GitHub mirror is provided for convenience.