Bug 1431782

Summary: kubelet status manager does not always report correct status
Product: OpenShift Container Platform Reporter: Derek Carr <decarr>
Component: NodeAssignee: Derek Carr <decarr>
Status: CLOSED ERRATA QA Contact: Weihua Meng <wmeng>
Severity: high Docs Contact:
Priority: high    
Version: 3.5.0CC: aos-bugs, decarr, eparis, jokerman, mmccomas, tdawson
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: No Doc Update
Doc Text:
undefined
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-04-12 19:14: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 Derek Carr 2017-03-13 18:03:02 UTC
Description of problem:

This is a tracking bug to handle the back-port of the following:
https://github.com/kubernetes/kubernetes/pull/41436

In TerminatePod, we previously pass pod.Status to updateStatusInternal. This is a bug, since it is the original status that we are given. Not only does it skip updates made to container statuses, but in some cases it reverted the pod's status to an earlier version, since it was being passed a stale status initially.

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Derek Carr 2017-03-13 18:03:56 UTC
1.5 PR posted for Origin here:
https://github.com/openshift/origin/pull/13377

Comment 2 Weihua Meng 2017-03-16 09:42:09 UTC
Derek, could you provide reproduce steps?
Thanks.

Comment 3 Derek Carr 2017-03-16 14:45:18 UTC
There is no clear reproduction procedure to follow for this.  We just need to ensure that the basic lifecycle of a pod continues to function when verifying this fix.

Comment 4 Weihua Meng 2017-03-17 10:42:01 UTC
Verified on openshift v3.5.0.54.
No issue found.
Fixed. 
Steps:
try pods with status runing, completed and Error, pod/container state is correct.
1. oc create -f https://raw.githubusercontent.com/mdshuai/testfile-openshift/master/k8s/terminatedpods/emtydir-host.yaml
2. oc create -f https://raw.githubusercontent.com/openshift-qe/v3-testfiles/master/pods/graceful-delete/default.json
3. oc get pod -o yaml,  and check all pod/container state

Comment 6 errata-xmlrpc 2017-04-12 19:14: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://access.redhat.com/errata/RHBA-2017:0884