Commit Graph

46 Commits

Author SHA1 Message Date
Raycho Mukelov 7509976cdd fix 2023-10-20 09:31:58 +03:00
Raycho Mukelov 98f0683654 Simulate Network delay in the basic cluster tests 2023-10-20 07:51:37 +03:00
Raycho Mukelov 892d48db16 Fix handling of heart beat bug 2023-10-20 07:22:11 +03:00
Raycho Mukelov 1e30a2db8b Heart beats success bugfix. 2023-10-20 06:56:02 +03:00
Raycho Mukelov 755f358dfa Fix 2023-10-20 04:41:10 +03:00
Raycho Mukelov 1643a8e2c0 Fix 2023-10-20 04:20:44 +03:00
Raycho Mukelov 4e129930ea Basic replication implementation. 2023-10-20 03:35:42 +03:00
Raycho Mukelov dfaf67f9ef fix 2023-10-20 01:36:40 +03:00
Raycho Mukelov 14d49d5737 Voting timeout fixes 2023-10-15 22:33:03 +03:00
Raycho Mukelov be86b1d185 Fix voting timeout handling 2023-10-15 22:09:23 +03:00
Raycho Mukelov 5bd50081da Fix compilation 2023-10-13 09:03:42 +03:00
Raycho Mukelov ca099c6132 Fix function names 2023-10-13 07:24:35 +03:00
Raycho Mukelov ba1fdafdd4 fixes 2023-09-23 04:26:45 +03:00
Raycho Mukelov 117d59ea2f Fix 2023-09-22 04:34:44 +03:00
Raycho Mukelov b950cf289d Fix 2023-09-22 04:07:41 +03:00
Raycho Mukelov 6c92519a87 Refactor the Raft Protocol with variants. Removed python test server. etc. 2023-09-17 03:47:29 +03:00
Raycho Mukelov 1f683dd2a7 Fix 2023-09-12 02:49:21 +03:00
Raycho Mukelov fe5c069ac7 Fixes 2023-09-11 19:55:30 +03:00
Raycho Mukelov 1de2422cde Fixes 2023-09-09 21:07:12 +03:00
Raycho Mukelov fba4ac836f Fix Cluster Test random hanging issue 2023-09-07 06:56:35 +03:00
Raycho Mukelov d11190bc5d Get rid of useless forward declarations + more refactoring 2023-09-07 05:41:05 +03:00
Raycho Mukelov 615db86c52 Implement functioning elections / voting / heart-beats 2023-09-07 05:04:27 +03:00
Raycho Mukelov ca4041e4e6 Change Lock to RLock 2023-09-06 22:27:22 +03:00
Raycho Mukelov 3380c83bde More consesus voting / heart beat work 2023-09-06 20:52:57 +03:00
Raycho Mukelov e333d6e7c0 Various fixes 2023-09-04 12:47:27 +03:00
Raycho Mukelov f1d558cae5 Refactor some stuff. Add Key-Value DB support (MDBX) 2023-09-03 20:52:35 +03:00
Raycho Mukelov 07d87c896f Started writing election/voting 2023-09-03 06:47:29 +03:00
Raycho Mukelov 66a6d7bc33 Add more consensus code etc. 2023-09-03 05:41:09 +03:00
Raycho Mukelov 31a3ae1078 Fix some problems with function imports etc. Started implementing the consensus algo. 2023-09-03 01:59:35 +03:00
Raycho Mukelov 949c594c6a Update 2023-09-03 00:17:44 +03:00
Raycho Mukelov 1f4af32358 Refactor consensus module scaffold 2023-09-01 06:31:42 +03:00
Raycho Mukelov f95937107a Introduce async messaging 2023-09-01 06:11:53 +03:00
Raycho Mukelov ad5dd67560 Add DefaultUUID(00000000-0000-0000-0000-000000000000) etc. 2023-09-01 03:58:37 +03:00
Raycho Mukelov 634094f766 Add basic Raft Cluster test 2023-09-01 00:43:22 +03:00
Raycho Mukelov 45523fd60d Change raft_api and types 2023-08-31 18:52:09 +03:00
Raycho Mukelov 7017e9fc69 Add basic state machine test etc. 2023-08-31 15:36:58 +03:00
Raycho Mukelov 0f5ce4687b Use uuids 2023-08-29 12:20:40 +03:00
Raycho Mukelov 93fa2d632c Timers + tests 2023-08-25 12:06:51 +03:00
Raycho Mukelov 833cc236a3 Add (basic) timer implementation to use for testing 2023-08-22 07:59:11 +03:00
Raycho Mukelov e1df04eb53 Make better Raft Protocol Definition 2023-08-17 21:27:45 +03:00
Raycho Mukelov 361c67803d Change timer create duration variable name to timerInterval 2023-08-13 00:15:22 +03:00
Raycho Mukelov 9cae024e30 Fix coding style 2023-08-10 11:38:15 +03:00
Raycho Mukelov 85e4d19e59 Add template to check if a timer is expired 2023-08-10 11:36:13 +03:00
Raycho Mukelov 4e333f32b4 Delegate timers creation/execution/cancelation to a 3-rd party user supplied library 2023-08-10 10:24:38 +03:00
Raycho Mukelov 236e5f32ea fix raft node access callback type 2023-08-10 01:08:22 +03:00
Raycho Mukelov 4fa562c4a1
Add preliminary API definitions and project roadmap 2023-08-09 13:06:34 +03:00