-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Use hashing to compare deployment specs for equality #13552
Use hashing to compare deployment specs for equality #13552
Conversation
Welcome @SaschaSchwarze0! It looks like this is your first PR to knative/serving 🎉 |
Hi @SaschaSchwarze0. Thanks for your PR. I'm waiting for a knative 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. |
/ok-to-test |
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #13552 +/- ##
==========================================
- Coverage 86.16% 86.11% -0.06%
==========================================
Files 197 197
Lines 14790 14822 +32
==========================================
+ Hits 12744 12764 +20
- Misses 1743 1750 +7
- Partials 303 308 +5
☔ View full report in Codecov by Sentry. |
I'd need to think a bit to see if I have any strong opinions on what the best way to do this is... going to add this as an agenda item for the next working group call in case that's easier than discussing here |
/hold From: #13204 (comment)
|
dbda09e
to
aae2e70
Compare
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: SaschaSchwarze0 The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
PR needs rebase. 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. |
This Pull Request is stale because it has been open for 90 days with |
Going to close this out - I'm actually going to focus on server side apply now which should address this |
Fixes #13204
Proposed Changes
We are running Knative at scale with thousands of services. We observed that there are frequent updates of the Kubernetes Deployment related to a Knative Revision. Most of these update operations are no-ops caused by an incorrect assumption that a locally built Deployment spec can be compared with the latest spec from the server object. This does not work because the server object has defaulting applied.
The proposed change
serving.knative.dev/deployment-spec-hash
on the Deployment where the hash of the client-side created Deployment spec is stored.This saves us around 150k Update operations per day in our largest cluster.
Release Note