https://github.com/ericentin/caspax
An Elixir implementation of the CASPaxos distributed compare-and-set KV store.
https://github.com/ericentin/caspax
Last synced: 4 months ago
JSON representation
An Elixir implementation of the CASPaxos distributed compare-and-set KV store.
- Host: GitHub
- URL: https://github.com/ericentin/caspax
- Owner: ericentin
- Created: 2018-03-15T20:34:50.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-10-30T16:18:34.000Z (over 7 years ago)
- Last Synced: 2025-10-31T22:04:29.794Z (8 months ago)
- Language: Elixir
- Homepage:
- Size: 15.6 KB
- Stars: 6
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Caspax
An Elixir implementation of the CASPaxos distributed compare-and-set KV.
Currently incomplete, but the main portion of the protocol is implemented for erlang nodes. Test with `mix run test.exs`.
Still to do: deletion, GC
Related reading:
* https://arxiv.org/abs/1802.07000
* https://github.com/peterbourgon/caspaxos
* https://github.com/tschottdorf/caspaxos-tla
## Installation
If [available in Hex](https://hex.pm/docs/publish), the package can be installed
by adding `caspax` to your list of dependencies in `mix.exs`:
```elixir
def deps do
[
{:caspax, "~> 0.1.0"}
]
end
```
Documentation can be generated with [ExDoc](https://github.com/elixir-lang/ex_doc)
and published on [HexDocs](https://hexdocs.pm). Once published, the docs can
be found at [https://hexdocs.pm/caspax](https://hexdocs.pm/caspax).