-
Notifications
You must be signed in to change notification settings - Fork 254
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
saveHostStatus
triggers even on unchanged object
#1253
Comments
@dtantsur What do you think? |
From a quick look at the source code, we do seem to only call |
@Rozzii What information is needed? |
It affected me noticeably during the pre-provision phase (in big cluster), when machines are getting linked with hosts, host where changing constantly. |
@s3rj1k I would like to have steps to reproduce the issue, as far as I understand from your description this happens when there are a lot of new machines are getting registered but from that I can't tell what exactly is causing the issue. |
I am not sure what extra steps you need to reproduce this, the issue of NOP updates is there all the time, just check the code, updates are unconditional, every reconcile (in not provisioned states) time is getting updated. |
/triage accepted |
I don't have experience or time to deal wit this issue but if it is visible from the code for someone with the experience then I am fine accepting this as a bug. |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with /lifecycle stale |
I will go ahead and accept this, although I am not that familiar with this part of the code, the issue makes sense to me and no one else have reacted. |
/assign @troy0820 |
This is referring to https://github.com/metal3-io/baremetal-operator/blob/release-0.3/controllers/metal3.io/baremetalhost_controller.go#L1538-L1541 However, I checked the code and as Dmitry said, we only call this if something else had changed: https://github.com/metal3-io/baremetal-operator/blob/release-0.3/controllers/metal3.io/baremetalhost_controller.go#L235-L245 Without even a single example of this NOP update happening - even a log would be helpful, we always log when we update the Status - there's no way for us to tell if any change has actually had any effect. |
This issue is currently awaiting triage. 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-sigs/prow repository. |
@zaneb, @dtantsur #1253 (comment) Do you agree that this specific function is updating status disregarding if the actual change is happening? |
I don't disagree with that. |
Issue is exclusively about that piece if code.
Feel free to close the issue. |
OK, thanks. Feel free to open a new issue if you see writes in the logs that don't correspond to any change in the status. |
@zaneb: Closing this issue. In response to this:
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-sigs/prow repository. |
There is an edge case when
saveHostStatus
is triggered even when no actual objects changes are made, the only change to object is updatingLastUpdated
filed.It would be better to have this field updated only if something in status was actually changed.
Current behavior adds unneeded reconciles for external watchers that follow BMH changes, this becomes noticeable on big clusters with lots for BMH.
The text was updated successfully, but these errors were encountered: