Bug 1304038

Summary: docker-1.9 is unstable when used with openshift-3.1.
Product: Red Hat Enterprise Linux 7 Reporter: Jeremy Eder <jeder>
Component: dockerAssignee: Lokesh Mandvekar <lsm5>
Status: CLOSED ERRATA QA Contact: atomic-bugs <atomic-bugs>
Severity: urgent Docs Contact: Yoana Ruseva <yruseva>
Priority: urgent    
Version: 7.2CC: lfriedma, lsm5, lsu, sdodson, sghosh, yruseva
Target Milestone: rcKeywords: Extras, ZStream
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: docker-1.9.1-17.el7 Doc Type: Known Issue
Doc Text:
docker 1.9 is unstable when used with OpenShift 3.1 If docker 1.9 and atomic-openshift 3.1 / origin 1.1 are installed simultaneously, it causes stability issues. Customers should wait until atomic-openshift 3.2 / origin 1.2 are released before upgrading to docker 1.9. To ensure this, docker 1.9 has been packaged to conflict with atomic-openshift versions older than 3.2 and origin versions older than 1.2. OpenShift customers doing a "yum update" will get the docker-1.9 package *only if* they have atomic-openshift 3.2 / origin 1.2 or newer installed. Simultaneous installation of docker 1.9 with older versions of atomic-openshift or origin will not be allowed.
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-03-31 23:23:50 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jeremy Eder 2016-02-02 17:53:19 UTC
Whole thread is here:
http://post-office.corp.redhat.com/archives/packaging-team/2016-February/msg00001.html

Original bug report and root cause is here:
https://bugzilla.redhat.com/show_bug.cgi?id=1302408#c10

We have 2 channels, that are released at different times.

1) RHEL Extras -- on the RHEL schedule and includes docker.  This is set to
release a new version of docker-1.9 in a few weeks.
2) OpenShift -- on their own schedule, but they rely on docker.
However...version 1.9 of docker has issues with the version of OpenShift,
which will come out after RHEL Extras ships docker-1.9.

We want to avoid openshift customers doing a 'yum update', and getting the
new version of docker ... ONLY IF ... they have openshift 3.1 installed.
We would like that to cause an error.

We want to somehow enforce that openshift customers avoid
docker-1.9+openshift-3.1.  We want customers to wait until openshift-3.2 in
order to use docker-1.9.
But we can't line up their release schedules.

We also want people without docker installed (or without openshift
installed at all), to be able to upgrade or install docker-1.9.

Jan Zelený from packaging-team suggests using 
Conflicts: openshift <= 3.1

Comment 2 Lokesh Mandvekar 2016-03-08 15:53:41 UTC
Scott, as per your suggestions, I have in the upcoming rpm:

Conflicts: atomic-openshift < 3.2
Conflicts: origin < 1.2

PTAL and let me know if any changes.

Comment 4 Scott Dodson 2016-03-08 20:31:42 UTC
(In reply to Lokesh Mandvekar from comment #2)
> Scott, as per your suggestions, I have in the upcoming rpm:
> 
> Conflicts: atomic-openshift < 3.2
> Conflicts: origin < 1.2
> 
> PTAL and let me know if any changes.

Looks good, thanks.

Comment 5 Jeremy Eder 2016-03-09 18:18:16 UTC
Hey I guess it works:

# rpm -qa|egrep 'openshift|docker'|sort
atomic-openshift-3.1.1.911-1.git.0.14f4c71.el7.x86_64
atomic-openshift-clients-3.1.1.911-1.git.0.14f4c71.el7.x86_64
atomic-openshift-master-3.1.1.911-1.git.0.14f4c71.el7.x86_64
atomic-openshift-node-3.1.1.911-1.git.0.14f4c71.el7.x86_64
atomic-openshift-sdn-ovs-3.1.1.911-1.git.0.14f4c71.el7.x86_64
docker-1.9.1-16.el7.x86_64
docker-selinux-1.9.1-16.el7.x86_64
tuned-profiles-atomic-openshift-node-3.1.1.911-1.git.0.14f4c71.el7.x86_64
root@dell-r620-01: ~/svt/openshift_scalability # yum update 
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager

Resolving Dependencies
--> Running transaction check
---> Package docker.x86_64 0:1.9.1-16.el7 will be updated
---> Package docker.x86_64 0:1.9.1-18.el7 will be an update
--> Processing Dependency: docker-forward-journald = 1.9.1-18.el7 for package: docker-1.9.1-18.el7.x86_64
---> Package docker-selinux.x86_64 0:1.9.1-16.el7 will be updated
---> Package docker-selinux.x86_64 0:1.9.1-18.el7 will be an update
--> Running transaction check
---> Package docker-forward-journald.x86_64 0:1.9.1-18.el7 will be installed
--> Processing Conflict: docker-1.9.1-18.el7.x86_64 conflicts atomic-openshift < 3.2
--> Finished Dependency Resolution
Error: docker conflicts with atomic-openshift-3.1.1.911-1.git.0.14f4c71.el7.x86_64
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Comment 6 Scott Dodson 2016-03-09 18:27:48 UTC
^^^ is the exact same thing someone installing OSE 3.1.1.6 after this package ships will run into. I think this is undesirable and the wrong thing to do unless we have evidence that the problem manifests itself with default maxPods.

Comment 7 Luwen Su 2016-03-17 15:32:12 UTC
In spec file in docker-1.9.1-22.el7.x86_64
# rhbz#1304038
Conflicts: atomic-openshift < 3.2
Conflicts: origin < 1.2

Move to verified

Comment 9 errata-xmlrpc 2016-03-31 23:23:50 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-0536.html