[WIP] Add command to restart all underlying pg #561
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #88
This PR is to restart the underlying postgres instances of all keepers
Reason
Few parameters like
max_connections
andshared_buffers
require restart of underlying postgres in each Keeper. We always had to run apg_ctl stop -m fast -W
on the node/pod to restart the postgres (keeper only does a reload)Approach
Keeper
schedulePgRestart
is set to truepgManager
CLI
stolonctl
has a subcommand calledpgrestart
schedulePgRestart
totrue
for all keepers (which would trigger a restart of all clusters)Objective
Initially, we wanted to achieve a restart with 0 downtime by promoting an existing slave as a master as present in #88 However, it takes 7 seconds to elect a new master. Simply triggering a fast restart of postgres only cause 1 second downtime.
Please share your comments and feedbacks.