Jing Yang
|
397c8aad63
Add fail no agree test.
|
5 rokov pred |
Jing Yang
|
451f9559be
Add fail agree test.
|
5 rokov pred |
Jing Yang
|
62a468ee3b
Add the basic agreement tests, fixed bugs.
|
5 rokov pred |
Jing Yang
|
f0c6126caa
Add a test for re_election.
|
5 rokov pred |
Jing Yang
|
58e20ae2d3
Add checks for same term.
|
5 rokov pred |
Jing Yang
|
0be0f031b1
Use client in client name.
|
5 rokov pred |
Jing Yang
|
6c6afbcde0
Fix step size overflow.
|
5 rokov pred |
Jing Yang
|
144224d107
Fix shutdown procedure.
|
5 rokov pred |
Jing Yang
|
b19e1a3905
Use the server name as-is at rpc utils.
|
5 rokov pred |
Jing Yang
|
ac213f6d53
Reserve vec with certain size instead of capacity.
|
5 rokov pred |
Jing Yang
|
b838091bd6
Do not delay if the last retry fails.
|
5 rokov pred |
Jing Yang
|
1f41b2dae0
Correct is_leader check in append_entries and heartbeat.
|
5 rokov pred |
Jing Yang
|
e7fa862b50
Fix the timer never fires bug.
|
5 rokov pred |
Jing Yang
|
94ce80a793
Allow debugging all structs.
|
5 rokov pred |
Jing Yang
|
d637710470
Check one leader fails at initial election test.
|
5 rokov pred |
Jing Yang
|
3975600a33
Initial election test skeleton.
|
5 rokov pred |
Jing Yang
|
163b55487d
Refactor: using drop instead of scope.
|
5 rokov pred |
Jing Yang
|
275d0bedda
More clippy changes.
|
5 rokov pred |
Jing Yang
|
22fc247173
Use WaitGroup instead of Barrier to implement shutdown.
|
5 rokov pred |
Jing Yang
|
8aee179c10
Add a stop barrier.
|
5 rokov pred |
Jing Yang
|
8fb61b2fd0
Implement start() and kill()
|
5 rokov pred |
Jing Yang
|
3c225e7891
Lots of clippy changes.
|
5 rokov pred |
Jing Yang
|
1ba58689f2
Cancel the election if timer was changed more than once.
|
5 rokov pred |
Jing Yang
|
25e1c30f5c
Remove timer once fired.
|
5 rokov pred |
Jing Yang
|
e10b6ce01f
More refactor and more comments.
|
5 rokov pred |
Jing Yang
|
75806c9ee0
Refactor the timer thread.
|
5 rokov pred |
Jing Yang
|
18a98f3c27
Implement a timer version number for consistency.
|
5 rokov pred |
Jing Yang
|
69653dc5c8
Implement an election timer.
|
5 rokov pred |
Jing Yang
|
297ef1a2cf
Implement the initialization logic.
|
5 rokov pred |
Jing Yang
|
cf6b4dd415
Fix a few unused warnings.
|
5 rokov pred |