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

fix(restore): do not retry restore proposal (#8058) #9017

Merged
merged 1 commit into from
Mar 13, 2024
Merged

Conversation

mangalaman93
Copy link
Contributor

Do not retry the restore proposal. It can cause issues in the edge case scenarios. Consider the following scenario:

  1. alpha-2 gets the restore request (leader is alpha-0)
  2. alpha-2 sends the request to alpha-0 (leader).
  3. alpha-0 called proposeAndWait which proposed the req (index 24) at time=15:56:10
  4. alpha-0 was still waiting for the proposal to be applied and RPC call for Restore by alpha-2 got "transport closing error" at time=15:59:08
  5. transport closing is a retriable error, so alpha-2 again tried to proposeoOrSend, this time leader was alpha-1, so it sent it to alpha-1
  6. alpha-1 proposed the restore request (index 28) at time=15:59:09

@CLAassistant
Copy link

CLAassistant commented Oct 17, 2023

CLA assistant check
All committers have signed the CLA.

Do not retry the restore proposal. It can cause issues in
the edge case scenarios. Consider the following scenario:
  1. alpha-2 gets the restore request (leader is alpha-0)
  2. alpha-2 sends the request to alpha-0 (leader).
  3. alpha-0 called proposeAndWait which proposed the req
      (index 24) at time=15:56:10
  4. alpha-0 was still waiting for the proposal to be applied
      and RPC call for `Restore` by alpha-2 got "transport
      closing error" at time=15:59:08
  5. transport closing is a retriable error, so alpha-2 again
      tried to proposeoOrSend, this time leader was alpha-1,
      so it sent it to alpha-1
  6. alpha-1 proposed the restore request (index 28) at time=15:59:09
@dgraph-bot dgraph-bot added area/core internal mechanisms go Pull requests that update Go code labels Oct 17, 2023
@harshil-goel
Copy link
Contributor

What is the problem in the scenario you mentioned?

@mangalaman93 mangalaman93 merged commit 9491911 into main Mar 13, 2024
10 checks passed
@mangalaman93 mangalaman93 deleted the aman/restore branch March 13, 2024 11:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/core internal mechanisms go Pull requests that update Go code
Development

Successfully merging this pull request may close these issues.

None yet

4 participants