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

add a feature-gate for Lazy Reconcile feature #4564

Closed
wants to merge 1 commit into from

Conversation

chaosi-zju
Copy link
Member

@chaosi-zju chaosi-zju commented Jan 19, 2024

What type of PR is this?

/kind feature

What this PR does / why we need it:

Small-step commit related code implementation for Policy Lazy Reconcile feature.

This PR only handle: add a feature-gate for Lazy Reconcile feature

More info refer to #4563

add a feature-gate for Lazy Reconcile feature

Which issue(s) this PR fixes:

Fixes part of #4563

Special notes for your reviewer:

Does this PR introduce a user-facing change?:

add a feature-gate for Policy Lazy Reconcile feature

@karmada-bot karmada-bot added the kind/feature Categorizes issue or PR as related to a new feature. label Jan 19, 2024
@karmada-bot
Copy link
Collaborator

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
To complete the pull request process, please assign rainbowmango after the PR has been reviewed.
You can assign the PR to them by writing /assign @rainbowmango in a comment when ready.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@karmada-bot karmada-bot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label Jan 19, 2024
@codecov-commenter
Copy link

codecov-commenter commented Jan 19, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (0e501b6) 51.82% compared to head (0914915) 51.90%.
Report is 3 commits behind head on master.

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #4564      +/-   ##
==========================================
+ Coverage   51.82%   51.90%   +0.07%     
==========================================
  Files         244      246       +2     
  Lines       24234    24328      +94     
==========================================
+ Hits        12560    12627      +67     
- Misses      10993    11015      +22     
- Partials      681      686       +5     
Flag Coverage Δ
unittests 51.90% <ø> (+0.07%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@zhzhuang-zju
Copy link
Contributor

Hi~ Do this pr need to add a release note?
others LGTM

@karmada-bot karmada-bot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Jan 21, 2024
Signed-off-by: chaosi-zju <chaosi@zju.edu.cn>
@karmada-bot karmada-bot added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Jan 21, 2024
@@ -54,6 +58,7 @@ var (
CustomizedClusterResourceModeling: {Default: true, PreRelease: featuregate.Beta},
PolicyPreemption: {Default: false, PreRelease: featuregate.Alpha},
MultiClusterService: {Default: false, PreRelease: featuregate.Alpha},
PolicyLazyReconcile: {Default: false, PreRelease: featuregate.Alpha},
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is there only one global switch? Will you also introduce related fields in PP next?

What I mean is, can the system have both an immediately effective PP and a Lazy Reconcile PP at the same time?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because if there's only one of two options, then assuming all future defaults are Lazy Reconcile, most users would refuse to upgrade due to their lack of experience with Lazy Reconcile.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1
lazy should not be the default behavior.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lazy is not the default behavior as PolicyLazyReconcile{Default: false}

What chaunceyjiang mean is that it is better to add a filed to Policy to control the the effect strategy.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What I mean is: It would be best if these two behaviors could coexist in the karmada.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I still have one question I don't fully understand, which is: if a resource has not changed but the PP has changed, then this resource will continue to use the old PP. If a rescheduling happens at this time, should the scheduler use the old PP or the new PP? If it uses the new PP, then that behavior would be somewhat inconsistent with our expected behavior.
Our expectation is that the new PP would only be applied if the resource itself has changed.

@chaosi-zju
Copy link
Member Author

/close

this feature-gate is depracated, replaced by Policy field, refer to #4577.

@karmada-bot
Copy link
Collaborator

@chaosi-zju: Closed this PR.

In response to this:

/close

this feature-gate is depracated, replaced by Policy field, refer to #4577.

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants