-
Notifications
You must be signed in to change notification settings - Fork 573
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
raft: amend error code when leadership transfer can't proceed due to recovery #7297
raft: amend error code when leadership transfer can't proceed due to recovery #7297
Conversation
When do_transfer_leadersip(), if a follower is still not caught up after prepare_transfer_leadership() is done, a `timeout` was returned. However it's not really a timeout, it's a flap (we thought recovery was done but it's not). This commit changes it to `exponential_backoff` so that admin API would return a 503 (plz retry) for that rather than a 504 (we couldn't do it in time).
I amended the title to be a bit more succinct. Did you mean to mark this as |
I was looking into the failure of |
/backport v22.3.x |
/backport v22.2.x |
fyi i changed the release notes section of the pr body from |
/backport v22.1.x |
Cover letter
When do_transfer_leadersip(), if a follower is still not caught up after prepare_transfer_leadership() is done, a
timeout
was returned. However it's not really a timeout, it's a flap (we thought recovery was done but it's not). This commit changes it toexponential_backoff
so that admin API would return a 503 (plz retry) for that rather thana 504 (we couldn't do it in time).
Fixes #6902
This not a fix for the root cause of the issue, only a change of interpretation of the error.
Backport Required
UX changes
Release notes
Improvements