-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Report StatusConflict on Pod opt partial failures #9188
Conversation
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jwhonce The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
code and idea LGTM, legit test failures |
bbcf771
to
03216d0
Compare
- When one or more containers in the Pod reports an error on an operation report StatusConflict and report the error(s) - jsoniter type encoding used to marshal error as string using error.Error() - Update test framework to allow setting any flag when creating pods - Fix test_resize() result check Fixes containers#8865 Signed-off-by: Jhon Honce <jhonce@redhat.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code LGTM but I don't have enough knowledge judging whether 409 Conflict
is valid in all cases.
MDN states: "Conflicts are most likely to occur in response to a PUT request. For example, you may get a 409 response when uploading a file which is older than the one already on the server resulting in a version control conflict."
Does that include transient errors of pod start
?
@vrothberg The handler already used 409, I simply documented that fact and expanded it's usage to all instances of this condition. I believe 409 is more useful than 500 (that was returned in some cases) since a retry may resolve the issue, which is not implied by 500. |
/lgtm |
When one or more containers in the Pod reports an error on an operation
report
StatusConflict
and report the error(s)jsoniter.RegisterTypeEncoderFunc()
used to marshal error as string usingerror.Error()
. This picks up any other places in API whereerror
has been used.Update test framework to allow setting any flag when creating pods
Fixes #8865
Signed-off-by: Jhon Honce jhonce@redhat.com