- 16 Aug, 2022 2 commits
-
-
Ozan Tezcan authored
Leftover after #105
-
Ozan Tezcan authored
Delete stale HAVE_FUNC_LOG guard Log callback is already optional. Pre-processor guard is unnecessary.
-
- 08 Aug, 2022 1 commit
-
-
Ozan Tezcan authored
-
- 21 Jul, 2022 2 commits
-
-
Hanna Fadida authored
-
Hanna Fadida authored
- update .gitignore
-
- 07 Jul, 2022 2 commits
-
-
Ozan Tezcan authored
Throttle operations early not to block server Introduced throttling in #106. If execution of operations take as much as request-timeout, it means this server will not generate responses on time for the existing requests. This is causing extra elections. I've changed deadline as 'now + request_timeout / 2', giving server some room for other operations and enough time to send responses.
-
Ozan Tezcan authored
-
- 05 Jul, 2022 1 commit
-
-
Ozan Tezcan authored
Do not execute operations in periodic when auto_flush is off Introduced auto_flush config in #81. If auto_flush is off, application is supposed to call raft_flush() manually. This function increments commit index, applies entries and sends appendentries requests. Currently, we execute operations in raft_periodic() and raft_flush() both. When auto_flush is off, it makes sense to leave execution to raft_flush() to do it in a single place.
-
- 30 Jun, 2022 1 commit
-
-
Ozan Tezcan authored
-
- 19 Jun, 2022 1 commit
-
-
Ozan Tezcan authored
Throttle operations if it takes longer than request timeout
-
- 19 May, 2022 1 commit
-
-
Ozan Tezcan authored
Simplify read request processing
-
- 15 May, 2022 1 commit
-
-
Ozan Tezcan authored
Fix next_idx and next_msgid usages
-
- 02 May, 2022 1 commit
-
-
Ozan Tezcan authored
-
- 26 Apr, 2022 1 commit
-
-
Ozan Tezcan authored
Add raft_config() function for configuration
-
- 25 Apr, 2022 1 commit
-
-
Ozan Tezcan authored
-
- 18 Apr, 2022 1 commit
-
-
Ozan Tezcan authored
Refactor
-
- 06 Apr, 2022 1 commit
-
-
Ozan Tezcan authored
-
- 04 Apr, 2022 1 commit
-
-
Ozan Tezcan authored
-
- 03 Apr, 2022 1 commit
-
-
Ozan Tezcan authored
-
- 30 Mar, 2022 2 commits
-
-
Ozan Tezcan authored
-
Ozan Tezcan authored
-
- 24 Mar, 2022 1 commit
-
-
Ozan Tezcan authored
Delete private typedefs, use namespace raft_ for exported symbols
-
- 21 Mar, 2022 1 commit
-
-
Ozan Tezcan authored
-
- 13 Mar, 2022 5 commits
-
-
Ozan Tezcan authored
Enabled compiler warnings and fixed issues
-
Ozan Tezcan authored
-
Ozan Tezcan authored
-
Ozan Tezcan authored
-
Ozan Tezcan authored
-
- 08 Mar, 2022 1 commit
-
-
Ozan Tezcan authored
-
- 06 Mar, 2022 1 commit
-
-
Ozan Tezcan authored
-
- 15 Feb, 2022 1 commit
-
-
Ozan Tezcan authored
-
- 07 Feb, 2022 1 commit
-
-
Ozan Tezcan authored
Add support for async disk flush, backpressure and batching
-
- 07 Dec, 2021 1 commit
-
-
Shaya Potter authored
the only valid return values are 0 (success) or RAFT_ERR_SHUTDOWN. this is now enforced by an assert
-
- 17 Nov, 2021 1 commit
-
-
Yossi Gottlieb authored
* Build libraft_shared.so to support tests. * CMake target to create raft_cffi module. * CMake changes to handle LD_LIBRARY_PATH for libraft.so to be found. * raft_cffi_builder changes to support arbitrary include and library paths. Co-authored-by:
tezc <ozantezcan@gmail.com>
-
- 16 Nov, 2021 1 commit
-
-
Yossi Gottlieb authored
* Add COVERAGE=1 Makefile option to build libraft with coverage. * Refactor CFFI module to use the existing shared object in an out-of-line configuration, so there's no need to build and re-build it. * Makefile adjustments to build the module CFFI as needed. * Remove raft_get_snapshot_entry_idx, a prototype for an undefined function that breaks CFFI. * Add a gcov Makefile target to fetch both unit tests and integration test coverage in one shot.
-
- 15 Nov, 2021 1 commit
-
-
Ozan Tezcan authored
Added snapshot RPC to support large state machines.
-
- 14 Nov, 2021 1 commit
-
-
Yossi Gottlieb authored
A public repository does not require a token, so we get the benefit of being able to run coverage on PRs as well.
-
- 11 Nov, 2021 1 commit
-
-
Shaya Potter authored
* print out table with better labels * print out a nodes voting peers (can help debugging based on partitions) * fix node "status" (connected/connecting/disconnected...) in case of an entry pop of a remove entry
-
- 03 Nov, 2021 1 commit
-
-
Shaya Potter authored
this is to avoid sending duplicate entries each time raft_send_appendentries is called, just because they haven't been acked yet. it will still be reset backwards upon the leader receiving a raft_recv_appendentries_response() with a failure mode + a test for next_idx on append entry, which changes a number of tests which checked for this in order to do this, I had to modify the existing mock callback to return 0 instead of 1. this needs to be verified + fixes for raft tests that this change exposed 1) when we issues a sequence of entries, each was given an increasing term, so had entries whose term was higher than leaders term so had to fix that 2) by setting the term of appendentries_repsonse to not be equal to leaders term (because of fix above), we now fail on receiving them do all that by not allowing raft_append_entry to append an entry that break raft semantics (i.e. term of entry > log term), but this breaks many tests that don't set term, so set them
-
- 20 Oct, 2021 1 commit
-
-
Yossi Gottlieb authored
Also, remove the more detailed documentation and code samples which are no longer accurate/up-to-date and can be misleading.
-