Commit 12d73bb
committed
server: don't exit auto-upgrade if own node isn't live
The auto upgrade loop previously eagerly exited early if all
nodes were on the same version. This optimized for the common
case where we are not attempting an upgrade, and don't care
if a node is currently down.
However, we don't want to exit the auto upgrade process if we can't validate
our own version. Consider the case where the meta1 leaseholder is the first
node to restart to the new version but has transient liveness issues. If we skip
the check here, we will see all other nodes at the same (old) version and exit
the auto upgrade process with UpgradeAlreadyCompleted. Since the meta1 leaseholder
is the only node that can perform the upgrade, this indefinitely blocks the upgrade.
Fixes: #1553591 parent 3c76919 commit 12d73bb
1 file changed
+9
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
183 | 183 | | |
184 | 184 | | |
185 | 185 | | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
186 | 195 | | |
187 | 196 | | |
188 | 197 | | |
| |||
0 commit comments