Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

server: Convert monitor_cb from prepare handle to raft_step callback #12

Merged
merged 3 commits into from
Nov 2, 2023

Conversation

freeekanayaka
Copy link
Member

Using a prepare handle is unreliable, since while the process is paused by a Jepsen nemesis there might be a lot of data being received by the kernel in the TCP buffer, and that data will be read eagerly by libuv, so the prepare handle callback will not get a chance to run and detect the leadership lost in a timely manner.

Using a prepare handle is unreliable, since while the process is paused by a
Jepsen nemesis there might be a lot of data being received by the kernel in the
TCP buffer, and that data will be read eagerly by libuv, so the prepare handle
callback will not get a chance to run and detect the leadership lost in a timely
manner.

Signed-off-by: Free Ekanayaka <free@ekanayaka.io>
Copy link

codecov bot commented Nov 2, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (a1d49d0) 60.46% compared to head (08eec58) 60.30%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #12      +/-   ##
==========================================
- Coverage   60.46%   60.30%   -0.17%     
==========================================
  Files          33       33              
  Lines        6137     6134       -3     
  Branches     1850     1850              
==========================================
- Hits         3711     3699      -12     
- Misses       1235     1243       +8     
- Partials     1191     1192       +1     
Files Coverage Δ
src/server.c 59.33% <100.00%> (-0.05%) ⬇️

... and 5 files with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

This mitigates test flakiness on slower hardware, since operations will fail
after a longer timeout.

Signed-off-by: Free Ekanayaka <free@ekanayaka.io>
Only run tests using gcc on latest Ubuntu.

Signed-off-by: Free Ekanayaka <free@ekanayaka.io>
@freeekanayaka freeekanayaka merged commit c8ed1be into cowsql:main Nov 2, 2023
3 of 4 checks passed
@freeekanayaka freeekanayaka deleted the fix-monitor-cb branch November 2, 2023 14:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant