Ring agnostic, Consistent, C Raft implementation
87cb99dc — Louis Solofrizzo 3 months ago
log: Apply deep-sleep state from heartbeats / leaders instead of computing locally
65f9f585 — Louis Solofrizzo 6 months ago
log: Only ERROR log on smaller commit_id when it is problematic
77f3b3c9 — Louis Solofrizzo 7 months ago
periodic: Change log level from ERROR to DEBUG on gray-failure checks


browse  log 



You can also use your local clone with git send-email.


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


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

  • A C Compiler gcc / clang
  • cmake

Clone the repository:

git clone https://git.sr.ht/~ne02ptzero/libfloat

cd & create the build directory:

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

Compile everything:



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

#Bug Report

Please report your bugs by email at ~ne02ptzero/libfloat@lists.sr.ht