Open adamzhoul opened 1 year ago
What happened: yurtappdaemon_controlle fall in infinite loop reconciles unchanged yurtappdaemon resource.
yurtappdaemon
What you expected to happen:
reconcile only one time
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
reason:
But the reconciler creates new controllerrevisions when the hash is updated.
controllerrevisions
https://github.com/openyurtio/yurt-app-manager/blob/0b378c527513ff74357f40a1fe3cb7e4c84734bc/pkg/yurtappmanager/controller/yurtappdaemon/revision.go#L126-L129
https://github.com/openyurtio/yurt-app-manager/blob/0b378c527513ff74357f40a1fe3cb7e4c84734bc/pkg/yurtappmanager/controller/yurtappdaemon/yurtappdaemon_controller.go#L255-L259
https://github.com/openyurtio/yurt-app-manager/blob/0b378c527513ff74357f40a1fe3cb7e4c84734bc/pkg/yurtappmanager/controller/yurtappdaemon/yurtappdaemon_controller.go#L240-L248
https://github.com/openyurtio/yurt-app-manager/blob/0b378c527513ff74357f40a1fe3cb7e4c84734bc/pkg/yurtappmanager/controller/yurtappdaemon/yurtappdaemon_controller.go#L201-L210
we check:reflect.DeepEqual(oldStatus.NodePools, newStatus.NodePools) but nodepools come from a map. orders can not be made sure https://github.com/openyurtio/yurt-app-manager/blob/0b378c527513ff74357f40a1fe3cb7e4c84734bc/pkg/yurtappmanager/controller/yurtappdaemon/yurtappdaemon_controller.go#L261-L264
Environment:
/kind bug
What happened: yurtappdaemon_controlle fall in infinite loop reconciles unchanged
yurtappdaemon
resource.What you expected to happen:
reconcile only one time
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
reason:
But the reconciler creates new
controllerrevisions
when the hash is updated.https://github.com/openyurtio/yurt-app-manager/blob/0b378c527513ff74357f40a1fe3cb7e4c84734bc/pkg/yurtappmanager/controller/yurtappdaemon/revision.go#L126-L129
https://github.com/openyurtio/yurt-app-manager/blob/0b378c527513ff74357f40a1fe3cb7e4c84734bc/pkg/yurtappmanager/controller/yurtappdaemon/yurtappdaemon_controller.go#L255-L259
https://github.com/openyurtio/yurt-app-manager/blob/0b378c527513ff74357f40a1fe3cb7e4c84734bc/pkg/yurtappmanager/controller/yurtappdaemon/yurtappdaemon_controller.go#L240-L248
https://github.com/openyurtio/yurt-app-manager/blob/0b378c527513ff74357f40a1fe3cb7e4c84734bc/pkg/yurtappmanager/controller/yurtappdaemon/yurtappdaemon_controller.go#L201-L210
we check:reflect.DeepEqual(oldStatus.NodePools, newStatus.NodePools) but nodepools come from a map. orders can not be made sure https://github.com/openyurtio/yurt-app-manager/blob/0b378c527513ff74357f40a1fe3cb7e4c84734bc/pkg/yurtappmanager/controller/yurtappdaemon/yurtappdaemon_controller.go#L261-L264
Environment:
/kind bug