Ring agnostic, Consistent, C Raft implementation
74103f55 — Louis Solofrizzo 2 hours ago
raft: Slight rework of replication internals
abe2121d — Louis Solofrizzo 5 hours ago
raft: Optimistic replication, better leader failover
86186dd1 — Louis Solofrizzo a day ago
libfloat: Fix crash when node is unknown on AE

refs

master
browse log

clone

read-only
https://git.mobley.ne02ptzero.me/~louis/libfloat
read/write
git@git.mobley.ne02ptzero.me:~louis/libfloat

libfloat

Ring agnostic, Consistent, C Raft implementation

Table of Contents

About the project

libfloat is an effort to propose a very simple RAFT library, focusing on consistent data replication (eg; databases). It can be runned with or without an userspace, and does not implement networking or writes, leaving the implementation a lot of room for specific use cases.

This implementation is based on the RAFT paper, but does not implement FSM consistency.

Getting Started

Compilation

In order to compile, you will need the following programs:

  • A C Compiler gcc / clang
  • cmake

Clone the repository:

git clone https://git.mobley.ne02ptzero.me/~louis/libfloat

cd & create the build directory:

cd libfloat && mkdir -p build && cd build && cmake ..

Compile everything:

make

Contributing

If you want to contribute, please send your patches to ~louis/libfloat@lists.mobley.ne02ptzero.me You can look at git-send-email.io if you need to setup your mail client.

Bug Report

Please report your bugs at todo/~louis/libfloat You can also send an email to ~louis/libfloat@todo.mobley.ne02ptzero.me