Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(1804)

Issue 85710044: worker/upgrader: Refuse to downgrade

Can't Edit
Can't Publish+Mail
Start Review
Created:
9 years, 11 months ago by jameinel
Modified:
9 years, 11 months ago
Reviewers:
dimitern, mp+214878
Visibility:
Public.

Description

worker/upgrader: Refuse to downgrade We've always considered the possibility of rolling back an upgrade with "juju upgrade-juju --version=$OLD", however we never actually implemented downgrade logic. And the new upgrade steps aren't actually reversible. Bug #1299802 happened because 1.18 changes some state on disk vs 1.16. It also has a race condition during upgrade where a 1.16 Unit agent upgrades faster than its Machine agent. When the API server is 1.18, it will tell the Unit agent that it should actually match its Machine agent version, thereby causing it to try to downgrade back to 1.16. What that actually does is just roll back to the 1.16 tools which are now incompatible with the 1.18 agent.conf file. Since we don't actually support rollback of upgrades, this just changes the upgrader to refuse to change version to something older than version.Current. https://code.launchpad.net/~jameinel/juju-core/1.18-refuse-downgrade-1299802/+merge/214878 (do not edit description out of merge proposal)

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+36 lines, -1 line) Patch
A [revision details] View 1 chunk +2 lines, -0 lines 0 comments Download
M state/testing/agent.go View 1 chunk +2 lines, -0 lines 0 comments Download
M worker/upgrader/upgrader.go View 1 chunk +10 lines, -0 lines 0 comments Download
M worker/upgrader/upgrader_test.go View 1 chunk +22 lines, -1 line 0 comments Download

Messages

Total messages: 2
jameinel
Please take a look.
9 years, 11 months ago (2014-04-09 06:08:41 UTC) #1
dimitern
9 years, 11 months ago (2014-04-09 11:46:54 UTC) #2
LGTM
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b