Bugfix: skip upgrade when failed annotation should happen after recheck version #2755
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.
When operator (re)-start,
c.currentMajorVersion
will be 0. This value will be updated only if we executemajorVersionUpgrade
until the part where we get the current version from the Patroni. In #2727, we skipped the part where we do update this value when a cluster havelast-major-upgrade-failure
annotation. Hence, this cluster will never update itsc.currentMajorVersion
after operator restarts and will always be 0. Our e2e test couldn't catch this as we test thelast-major-upgrade-failure
after doing some upgrades.Solution
We should only skip the upgrade of the failure upgrade only after we make sure that the recheck is done.