Commit Graph

82 Commits

Author SHA1 Message Date
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