-
Notifications
You must be signed in to change notification settings - Fork 38.7k
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
Bump k8s.io/kube-openapi to commit ee342a809c29 #106181
Bump k8s.io/kube-openapi to commit ee342a809c29 #106181
Conversation
Welcome @ulucinar! |
Hi @ulucinar. Thanks for your PR. I'm waiting for a kubernetes member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Hi @DangerOnTheRanger, @apelisse, I'd also like to gain experience on contributing to upstream Kubernetes so any guidance is very much appreciated :) |
/ok-to-test |
We have quite a few things to get from kube-openapi before the release, I'm not opposed to merging this, but we'll have to bump it again soon anyway. |
I have run the following command to see whether the failing
Trying the bot's suggestion: |
Hi @apelisse, How do we move on with the cherry-picks to the active release branches 1.20-22? How is kube-openapi consumed in a monthly patch release? If I'm not mistaken, the deadline for the cherry-picks is November 12, 2021. Is a cherry-pick to respective release branches ( Sorry for asking lots of questions. I'm trying to better understand our plan. |
Updates to consume the aggregated OpenAPI spec lazy-marshaling behaviour introduced with: kubernetes/kube-openapi#251 Signed-off-by: Alper Rifat Ulucinar <ulucinar@users.noreply.github.com>
2bb6c9b
to
38f888b
Compare
Squashed the commits into a single one. Again looks like a unit test has failed. Gave it a try in my development environment:
/test pull-kubernetes-unit |
We have given a try for bringing lazy OpenAPI spec marshaling changes to the active release branches However, for the prospective For
Do you think this is the preferred way to proceed to bring these changes into the release branches? |
yes. we've created branches in kube-openapi before to pick targeted fixes |
/triage accepted |
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.
/lgtm
/approve
c.bytes = bytes | ||
c.etag = computeETag(c.bytes) |
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.
It's pretty twisty that Get() mutates *cache, and that calls to Get() from getSwaggerBytes() and getSwaggerPbBytes() are only protected by a read-lock.
It's not clear from the outside that cache#Get() and cache#New() are unsafe to call concurrently... and the calls to Get and New only happen to be safe because they're guarded by locks (which were primarily intended to protect reads/writes to the fields in OpenAPIService).
Not blocking for this PR, but probably worth a follow-up in kube-openapi master to clarify/clean that up
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.
Good catch! Let's fix that up.
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: liggitt, ulucinar 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 |
What type of PR is this?
/kind bug
What this PR does / why we need it:
Updates
kube-openapi
dependency to consume the aggregated OpenAPI spec lazy-marshaling behavior introduced with:kubernetes/kube-openapi#251
Looks like lazy-marshaling introduced with kubernetes/kube-openapi#251 enables us to better scale in the #-of-CRDs-per-cluster dimension.
Which issue(s) this PR fixes:
Fixes #101755
Fixes #105932
Does this PR introduce a user-facing change?