Skip to content
This repository has been archived by the owner on Apr 4, 2022. It is now read-only.

helium/plumtree

Repository files navigation

Plumtree

Build Status

Plumtree is an implementation of Plumtree, the epidemic broadcast protocol. It is extracted from the implementation in Riak Core. Instead of the riak_core ring and riak's ring gossip protocol, it includes a standalone membership gossip, built around the Riak DT ORSWOT.

More information on the plumtree protocol and it's history we encourage you to watch Jordan West's RICON West 2013 talk and Joao Leitao & Jordan West's RICON 2014 talk.

A special thanks to Jordan, Joao and the team at Basho for providing much of the code contained in this library.

Build

$ make

Testing

$ make test
$ make xref
$ make dialyzer

Contributing

Contributions from the community are encouraged. This project follows the git-flow workflow. If you want to contribute:

  • Fork this repository
  • Make your changes and run the full test suite
  • Please include any additional tests for any additional code added
  • Commit your changes and push them to your fork
  • Open a pull request

We will review your changes, make appropriate suggestions and/or provide feedback, and merge your changes when ready.