Skip to content
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

Some stateful PA attributes cannot be refreshed in reconcile #410

Closed
kr11 opened this issue Nov 20, 2024 · 0 comments · Fixed by #437
Closed

Some stateful PA attributes cannot be refreshed in reconcile #410

kr11 opened this issue Nov 20, 2024 · 0 comments · Fixed by #437
Assignees
Labels
area/autoscaling kind/enhancement New feature or request priority/critical-urgent Highest priority. Must be actively worked on as someone's top priority right now.
Milestone

Comments

@kr11
Copy link
Collaborator

kr11 commented Nov 20, 2024

🐛 Describe the bug

Related to #406 and #409

We discovered that some parameters in KPA are stateful, such as the three parts of KPAScaler: panic_window, stable_window, and delay_windows. These three parts are initialized in newReconciler only once, and won't be changed in reconcile.

The reconcile() function updates the KpaScalingContext periodically but does not refresh these three parts. As a result, apply -f pa.yaml may fail to take effect on these stateful parameters.

Let's think a complex situation:

  1. Bob creates KPA with stable_duration of 30s. So controller will maintain the past 30s metrics.
  2. Bob changes the kpa.yaml by setting stable_duration to 10s and apply it again, should controller discard the extra metrics?
  3. Bob reset stable_duration to 60s, and so on...

Steps to Reproduce

No response

Expected behavior

No response

Environment

No response

@Jeffwan Jeffwan added this to the v0.2.0 milestone Nov 21, 2024
@Jeffwan Jeffwan added area/autoscaling priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. kind/enhancement New feature or request priority/critical-urgent Highest priority. Must be actively worked on as someone's top priority right now. and removed priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. labels Nov 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/autoscaling kind/enhancement New feature or request priority/critical-urgent Highest priority. Must be actively worked on as someone's top priority right now.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants