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

Remove slow operations from critical path #3788

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

bfish713
Copy link
Collaborator

@bfish713 bfish713 commented Oct 23, 2024

Closes #<ISSUE_NUMBER>

This PR:

Moves 2 things off the critical path

  • Storing the proposal
  • Fetching a previous proposal

For storing the proposal we just do this at the end of the voting procedure before sending a vote. This only blocks sending a vote
For fetching past proposal there was already logic to do this in both the voting and proposing code path after the other dependencies are fulfilled. We still spawn a task to do the fetch so we can vote on future proposals referencing that view, this is critical for cases where all nodes restart.

I want to make a larger fix where handle_quorum_proposal_recv is moved to a separate task I'll follow up with that. In the meantime this should significantly improve the Decaf situation

This PR does not:

Key places to review:

@bfish713 bfish713 changed the title Move storage to end of proposal processing Remove slow operations from critical path Oct 23, 2024
@bfish713 bfish713 marked this pull request as ready for review October 23, 2024 02:57
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.

3 participants