Introducing RecoverNonWriteableMaster flag#1332
Conversation
…ysis and recovery Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
…tion treating it as error Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
|
Fixes #865 |
|
@shlomi-noach thanks a lot for this. |
|
@liortamari I estimate a week or so. There's no blockers per-se, just getting feedback from users. Were you able to try it out? |
|
@shlomi-noach yes it does work on my env.
but i do have
|
|
@liortamari is that question specific to this PR/change? I expect it is not because the hooks logic is generic for all recovery types. If you can confirm that, then please open a new issue with said question. While we're here, check your |
|
@shlomi-noach I believe it is specific to this case, but if I am mistaken let me know, and I will open a new issue.
This is the output I got:
|
|
@liortamari I appreciate your analysis of the flow. You are of course correct. |
Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
…hestrator into recover-non-writeable-master
|
|
|
Tested the updated branch. |
We have done the following tests:
|
|
@llintes thank you for the feedback! I read that as good results. In the mixed |
|
@shlomi-noach Hi. Could you please describe when it planning for this feature get in release? Thanks. |
|
Good reminder, I should publish a release! |
Fixes #1328
Replaces #1330
This PR introduces
RecoverNonWriteableMaster,bool, defaultsfalsefor backward compatibility. If enabled, then a scenario where a cluster's primary is found to beread-onlyis treated as a failure analysis: we reuseNoWriteableMasterStructureWarninggiven some additional constraints.Furthermore, when
RecoverNonWriteableMasteris enabled, thenNoWriteableMasterStructureWarningis an actionable failure, andorchestratorproceeds to run a recovery. The recovery is to disableread_only(andsuper_read_only, assumingUseSuperReadOnlyis also enabled).Note
masterterminology is subject to change in a future major release.