-
Notifications
You must be signed in to change notification settings - Fork 883
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
fix: keep rs informer updated #3091
Conversation
Signed-off-by: zachaller <[email protected]>
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## master #3091 +/- ##
==========================================
- Coverage 81.71% 81.70% -0.02%
==========================================
Files 134 134
Lines 20416 20426 +10
==========================================
+ Hits 16683 16689 +6
- Misses 2873 2876 +3
- Partials 860 861 +1
☔ View full report in Codecov by Sentry. |
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.
This adds informer writeback for ReplicaSets, but the screenshot in #3080 shows an Istio VirtualService in the logs.
I always thought the ReplicaSets error was an annoying error that we've lived with for years, and is only cosmetic in nature (and caused noise in the logs / unnecessary reconciliations), but I did not think it could fail a Rollout.
Although I think this change is welcomed, I question if it would fix any functional user-perceived problems.
@jessesuen I see that, the images is all VirtualService the log in the text was
I agree this is probably unlikely to fix any issues with VirtualServices failing to reconcile due to other updates. |
Signed-off-by: zachaller <[email protected]>
Also pre this PR the behavior would have been to always update the rollouts informer even after any kind of error returned from the reconciler, after that PR we now do not write rollout objects back to the informer if there is errors such as the replicaset failing to update it's revision. |
Ah. I see the other PR now and the reason behind it. It makes sense.
Regarding the above code comment, maybe we should remember a |
Yea, I like the updatedRollout idea, it allows separation of concerns on in memory state vs informer/k8s state. |
Signed-off-by: zachaller <[email protected]>
Kudos, SonarCloud Quality Gate passed! 0 Bugs No Coverage information |
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
* keep rs informer updated Signed-off-by: zachaller <[email protected]> * correct bad log Signed-off-by: zachaller <[email protected]> * add error context Signed-off-by: zachaller <[email protected]> --------- Signed-off-by: zachaller <[email protected]> Signed-off-by: Philip Clark <[email protected]>
* keep rs informer updated Signed-off-by: zachaller <[email protected]> * correct bad log Signed-off-by: zachaller <[email protected]> * add error context Signed-off-by: zachaller <[email protected]> --------- Signed-off-by: zachaller <[email protected]> Signed-off-by: Philip Clark <[email protected]>
* keep rs informer updated Signed-off-by: zachaller <[email protected]> * correct bad log Signed-off-by: zachaller <[email protected]> * add error context Signed-off-by: zachaller <[email protected]> --------- Signed-off-by: zachaller <[email protected]>
This PR fixes an issue where we race on updating revisions on replicasets, this causes a bunch of extra reconciles and logs that are noisy.
https://github.com/argoproj/argo-rollouts/blob/master/rollout/context.go#L72