~ne02ptzero/libfloat

c93ce23c — Louis Solofrizzo 7 days ago master
log: Add helpers for human readable consistency types

Patch: https://lists.sr.ht/~ne02ptzero/libfloat/patches/25297

Signed-off-by : Louis Solofrizzo <lsolofrizzo@scaleway.com>
Acked-by      : Patrik Cyvot <patrik@ptrk.io>
Acked-by      : Michael Bonfils <bonfils.michael@protonmail.com>
cb703146 — Michael Bonfils 11 days ago
Ignore snapshot log if it matches current snapshot

Signed-off-by: Michael Bonfils <mbonfils@scaleway.com>
Ack-by       : Louis Solofrizzo <lsolofrizzo@scaleway.com>
cf75af54 — Michael Bonfils 26 days ago
Few improvmements

- ACK manage logs
- Cleanup logs memory in reload_state
- Avoid to reload all logs on startup

Signed-off-by: Michael Bonfils <mbonfils@scaleway.com>
Ack-by       : Louis Solofrizzo <lsolofrizzo@scaleway.com>
3468b1f2 — Michael Bonfils 13 days ago
Update README.md

Signed-off-by: Michael Bonfils <mbonfils@scaleway.com>
Acked-by     : Louis Solofrizzo <louis@ne02ptzero.me>
raft: Add new election counter metric, and fix a possible weird case with leadership
log: Fix spamming heartbeats with entries when idle

Patch: https://lists.sr.ht/~ne02ptzero/libfloat/patches/24032

Signed-off-by: Louis Solofrizzo <lsolofrizzo@scaleway.com>
Acked-by: Michael Bonfils <mbonfils@scaleway.com>
8250ceed — Louis Solofrizzo 2 months ago
log: Add first patch of databases snapshots

This patch introduces a new snapshot logic in libfloat, which will copy
the database to a backup, and then empty the log database. On the
libfloat side, only the logic of it is implemented, with the actual
implementation is left to the caller.

This patch is missing (albeit, not much) snapshot sync logic between
cluster members, and is thus incomplete, but should me mergable in this
state. Just do not use it.

Signed-off-by : Louis Solofrizzo <lsolofrizzo@scaleway.com>
Acked-by      : Michael Bonfils <mbonfils@scaleway.com>
72167e62 — Michael Bonfils 3 months ago
log: avoid to send too much log

Co-authored-by: Louis Solofrizzo <lsolofrizzo@scaleway.com
Signed-off-by: Michael Bonfils <mbonfils@scaleway.com>
d8656dae — Michael Bonfils 3 months ago
election: allow a leader to leave cluster

Allow to resign from leader status and send a request
to warn followers to start a new election.

Signed-off-by : Michael Bonfils <mbonfils@scaleway.com>
Acked-by      : Louis Solofrizzo <lsolofrizzo@scaleway.com
51d41e6d — Louis Solofrizzo 3 months ago
election: Fix term issues on elections, and rollback term with leader

Patch: https://lists.mobley.ne02ptzero.me/~louis/libfloat/patches/10

Signed-off-by : Louis Solofrizzo <lsolofrizzo@scaleway.com>
Acked-by      : Michael Bonfils <mbonfils@scaleway.com>

 _______________________________
/ * UNIX is a Trademark of Bell \
\ Laboratories.                 /
 -------------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
9b3e93d8 — Louis Solofrizzo 3 months ago
raft: Fix compilation

Signed-off-by: Louis Solofrizzo <lsolofrizzo@scaleway.com>
4a855f7c — Louis Solofrizzo 3 months ago
raft: Change malloc to calloc for log reloading

Signed-off-by: Louis Solofrizzo <lsolofrizzo@scaleway.com>
5eee0ac3 — Louis Solofrizzo 3 months ago
log, election: Small integer fixes, and state-machine logic

Signed-off-by : Louis Solofrizzo <lsolofrizzo@scaleway.com>
Acked-by      : Michael Bonfils <mbonfils@scaleway.com>
Acked-by      : Florian Florensa <fflorensa@scaleway.com>

 _________________________________________
/ Ralph's Observation: It is a mistake to \
| let any mechanical object realise that  |
\ you are in a hurry.                     /
 -----------------------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
4f26ee4e — Michael Bonfils 4 months ago
logs: Implement timeout on commits

The timeout is 5 seconds, when a log with commit is still present
after this time, the callback will be called with LIBFLOAT_ENTRY_TIMEOUT

Also call callbacks that could remains when removing a cluster.

Reviewed-by: Louis Solofrizzo <lsolofrizzo@scaleway.com>
1c782736 — Louis Solofrizzo 4 months ago work/louis/fixes
log: Remove internal sanity check on log receive

Also adds new configuration for AE, new defaults, and a protection
against leader election when there is already a leader.

Signed-off-by: Louis Solofrizzo <lsolofrizzo@scaleway.com>
log: Fix minimal log_to_send

Signed-off-by: Louis Solofrizzo <lsolofrizzo@scaleway.com>
47f4297b — Louis Solofrizzo 5 months ago
log: Fix some failover log situation, and avoid triggering re-election on stepping down

Signed-off-by: Louis Solofrizzo <lsolofrizzo@scaleway.com>
Acked-by: Florian Florensa <fflorensa@scaleway.com>
Acked-by: Michael Bonfils <mbonfils@scaleway.com>
79e15430 — Louis Solofrizzo 5 months ago
election: Fix election granting on nodes that have more logs than us

Signed-off-by: Louis Solofrizzo <lsolofrizzo@scaleway.com>
Acked-by: Florian Florensa <fflorensa@scaleway.com>
Acked-by: Michael Bonfils <mbonfils@scaleway.com>
6a74872a — Louis Solofrizzo 5 months ago
log: Fallback on database when log is not found in state-machine

This patch adds a fallback to a consistent log state when a specific log
is not found in the state-machine. In case the log isn't in the
consistent state either, the node will demote itself to a follower.

Signed-off-by: Louis Solofrizzo <lsolofrizzo@scaleway.com>
Acked-by: Michael Bonfils <mbonfils@scaleway.com>
Acked-by: Florian Florensa <fflorensa@scaleway.com>
54ae6585 — Louis Solofrizzo 5 months ago
log: Fix crash on unknown leader AE

Signed-off-by: Louis Solofrizzo <lsolofrizzo@scaleway.com>
Next