Skip to content

Fix the data model inconsistency that breaks upgrade to 1.14-dev#1620

Merged
mavenugo merged 1 commit intomoby:masterfrom
sanimej:extdns
Jan 23, 2017
Merged

Fix the data model inconsistency that breaks upgrade to 1.14-dev#1620
mavenugo merged 1 commit intomoby:masterfrom
sanimej:extdns

Conversation

@sanimej
Copy link
Copy Markdown

@sanimej sanimej commented Jan 19, 2017

#1595 introduced a change to the sandbox state that is persisted in boltdb. This results in container start failing when upgrading from 1.12.x to 1.14-dev. This error is seen on task/container start..

ERRO[0283] fatal task error                              error="starting container failed: failed to update the store state of sandbox: failed to update store for object type *libnetwork.sbState: json: cannot unmarshal string into Go value of type libnetwork.extDNSEntry" module="node/agent/taskmanager" task.id=6zenzorwcsjftn5clzdg4vw9e

This PR adds the required reconciliation to handle the data model change between the versions. Verified that 1.12.x to 1.14-dev and also 1.14-dev to 1.12 works (downgrade not supported in swarm mode though)

Signed-off-by: Santhosh Manohar santhosh@docker.com

Signed-off-by: Santhosh Manohar <santhosh@docker.com>
@aboch
Copy link
Copy Markdown
Contributor

aboch commented Jan 21, 2017

LGTM

@sanimej
Copy link
Copy Markdown
Author

sanimej commented Jan 23, 2017

@mavenugo PTAL. We need this in docker master to fix the upgrade case.

@mavenugo
Copy link
Copy Markdown
Contributor

@sanimej the Changes LGTM. But I have a question wrt upgrades from current 1.14.0-dev HEAD -> a docker version after this patch. Will it break such an upgrade (since ExtDNS has again gone back to slice of string). The only legitimate reason we have to be worried about is the Docker-for-mac/windows beta channel which could have been released from master. Can you pls confirm ?

@sanimej
Copy link
Copy Markdown
Author

sanimej commented Jan 23, 2017

@mavenugo Yes, upgrade from current 1.14.0-dev HEAD to a newer master HEAD may not work. But 1.14.0-dev is an active development branch now. We shouldn't be releasing from the HEAD of a development branch. If it was done it has to be updated to a version with the fix.

@mavenugo
Copy link
Copy Markdown
Contributor

@justincormack can you pls confirm if this will cause any harm for D4mac ?

@justincormack
Copy link
Copy Markdown
Contributor

justincormack commented Jan 23, 2017 via email

@mavenugo
Copy link
Copy Markdown
Contributor

Thanks @justincormack .

LGTM

@mavenugo
Copy link
Copy Markdown
Contributor

@sanimej when will this be vendored in to docker master ?

@sanimej
Copy link
Copy Markdown
Author

sanimej commented Jan 27, 2017

@mavenugo moby/moby#30493

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants