You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently some of the options in Controller of manager.Options does not take effect as a global configuration for all controllers of the manager, such as MaxConcurrentReconciles and NeedLeaderElection.
For example, if we do the below configuration on new manager:
We would expect the max concurrent reconciles of every controller managed by this manager would be 8 if not specified in GroupKindConcurrency. But in reality, this configuration takes no effect and the max concurrent reconciles of controllers are still defaulted to 1.
After some code digging, I found the global configuration of controllers under the manager is somehow confusing - some of them are set in controller.NewUnmanaged (such as RecoverPanic), some are set in doController of builder.Builder (such as GroupKindConcurrency and CacheSyncTimeout), others are just ignored, as the MaxConcurrentReconciles and NeedLeaderElection mentioned above.
I think that we should unify the setting of global controller configurations, either in controller.NewUnmanaged or doController, or maybe other place that is more suitable. WDYT? @vincepri
The text was updated successfully, but these errors were encountered:
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.
Currently some of the options in
Controller
ofmanager.Options
does not take effect as a global configuration for all controllers of the manager, such asMaxConcurrentReconciles
andNeedLeaderElection
.For example, if we do the below configuration on new manager:
We would expect the max concurrent reconciles of every controller managed by this manager would be 8 if not specified in
GroupKindConcurrency
. But in reality, this configuration takes no effect and the max concurrent reconciles of controllers are still defaulted to 1.After some code digging, I found the global configuration of controllers under the manager is somehow confusing - some of them are set in
controller.NewUnmanaged
(such asRecoverPanic
), some are set indoController
ofbuilder.Builder
(such asGroupKindConcurrency
andCacheSyncTimeout
), others are just ignored, as theMaxConcurrentReconciles
andNeedLeaderElection
mentioned above.I think that we should unify the setting of global controller configurations, either in
controller.NewUnmanaged
ordoController
, or maybe other place that is more suitable. WDYT? @vincepriThe text was updated successfully, but these errors were encountered: