Skip to content

Conversation

@lucab
Copy link
Contributor

@lucab lucab commented Jul 1, 2019

This implements a new "assign_wariness" plugin, which is mainly meant
to be used on policy-engine side.

This plugin ensures that each request has an attached "wariness" score
for throttling purposes, which can be either provided by the client
or computed server-side based on some other client input paramenters.

Wariness value can be then used by other plugins to enact (static or dynamic)
throttling decisions. It has the property that a set of request parameters
will always result in the same wariness value, for stable/deterministic
bucketing.

/cc @steveej

@openshift-ci-robot openshift-ci-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Jul 1, 2019
@openshift-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: lucab

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

The pull request process is described here

Details 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

@openshift-ci-robot openshift-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 1, 2019
@lucab lucab force-pushed the ups/assign-throttle branch from d1a66a8 to 4068ab7 Compare July 1, 2019 12:33
@lucab
Copy link
Contributor Author

lucab commented Jul 1, 2019

/hold

This is temporarily based on #129, as it uses BoxedPlugin from there.

@openshift-ci-robot openshift-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jul 1, 2019
@lucab
Copy link
Contributor Author

lucab commented Jul 2, 2019

Out of band discussion: openshift systems uses floats from 0.0 to 1.0, it would be good to make the two compatible.

@lucab lucab force-pushed the ups/assign-throttle branch from 4068ab7 to 23ab8cd Compare July 25, 2019 11:57
@openshift-ci-robot openshift-ci-robot added size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Jul 25, 2019
@lucab
Copy link
Contributor Author

lucab commented Jul 25, 2019

@steveej I've updated this PR to use floats within the range (0.0, 1.0] as throttling scores, as discussed.

The overall algorithm that will consume this value is sketched at coreos/zincati#82 and aligns with the current draft of OpenShift "risk appetite" logic.

This implements a new "assign_wariness" plugin, which is mainly meant
to be used on policy-engine side.

This plugin ensures that each request has an attached "wariness" score
for throttling purposes, which can be either provided by the client
or computed server-side based on some other client input paramenters.

Wariness value can be then used by other plugins to enact (static or dynamic)
throttling decisions. It has the property that a set of request parameters
will always result in the same wariness value, for stable/deterministic
bucketing.
@lucab lucab force-pushed the ups/assign-throttle branch from 23ab8cd to 7668536 Compare September 3, 2019 11:46
@openshift-ci-robot openshift-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Sep 3, 2019
@lucab lucab changed the title cincinnati/plugins: add assign-throttle plugin cincinnati/plugins: add "assign_wariness" plugin Sep 3, 2019
@vrutkovs
Copy link
Contributor

vrutkovs commented Sep 3, 2019

/hold cancel

Testing permissions

@openshift-ci-robot openshift-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Sep 3, 2019
@squeed
Copy link

squeed commented Sep 3, 2019

/hold
because @lucab asked me to

@openshift-ci-robot openshift-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Sep 3, 2019
@openshift-ci-robot
Copy link

@lucab: PR needs rebase.

Details

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.

@openshift-ci-robot openshift-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 29, 2020
@openshift-ci-robot
Copy link

@lucab: The following tests failed, say /retest to rerun all failed tests:

Test name Commit Details Rerun command
ci/prow/images 7668536 link /test images
ci/prow/rustfmt-1.43.0 7668536 link /test rustfmt-1.43.0
ci/prow/rustfmt-1.45.0 7668536 link /test rustfmt-1.45.0
ci/prow/rustfmt-1.44.0 7668536 link /test rustfmt-1.44.0
ci/prow/rustfmt-1.40.0 7668536 link /test rustfmt-1.40.0
ci/prow/rustfmt-1.42.0 7668536 link /test rustfmt-1.42.0
ci/prow/rustfmt-1.41.0 7668536 link /test rustfmt-1.41.0
ci/prow/rustfmt-1.46.0 7668536 link /test rustfmt-1.46.0

Full PR test history. Your PR dashboard.

Details

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. I understand the commands that are listed here.

@openshift-merge-robot
Copy link
Contributor

@lucab: The following test failed, say /retest to rerun all failed tests:

Test name Commit Details Rerun command
ci/prow/build-only 7668536 link /test build-only

Full PR test history. Your PR dashboard.

Details

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. I understand the commands that are listed here.

@openshift-bot
Copy link

Issues go stale after 90d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle stale

@openshift-ci-robot openshift-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jan 26, 2021
@openshift-bot
Copy link

Stale issues rot after 30d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle rotten
/remove-lifecycle stale

@openshift-ci-robot openshift-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Feb 25, 2021
@openshift-bot
Copy link

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

@openshift-ci-robot
Copy link

@openshift-bot: Closed this PR.

Details

In response to this:

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

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

approved Indicates a PR has been approved by an approver from all required OWNERS files. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants