-
Notifications
You must be signed in to change notification settings - Fork 600
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
Refactor Retry-After backoff tests #5981
Refactor Retry-After backoff tests #5981
Conversation
Codecov Report
@@ Coverage Diff @@
## main #5981 +/- ##
==========================================
- Coverage 82.33% 82.31% -0.03%
==========================================
Files 220 220
Lines 7564 7564
==========================================
- Hits 6228 6226 -2
- Misses 902 903 +1
- Partials 434 435 +1
Continue to review full report at Codecov.
|
/test all |
The following is the coverage report on the affected files.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
/approve
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: matzew, travis-minke-sap The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
that is a flake from @gabo1208 's PR /retest |
/retest
On Wed 8. Dec 2021 at 13:09, Knative Prow Robot ***@***.***> wrote:
@travis-minke-sap <https://github.com/travis-minke-sap>: The following
test *failed*, say /retest to rerun all failed tests or /retest-required
to rerun all mandatory failed tests:
Test name Commit Details Required Rerun command
pull-knative-eventing-reconciler-tests 49e0ad3
<49e0ad3>
link
<https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative_eventing/5981/pull-knative-eventing-reconciler-tests/1468544366963331072>
true /test pull-knative-eventing-reconciler-tests
Full PR test history
<https://gubernator.knative.dev/pr/knative_eventing/5981>. Your PR
dashboard <https://gubernator.knative.dev/pr/travis-minke-sap>.
Instructions for interacting with me using PR comments are available here
<https://git.k8s.io/community/contributors/guide/pull-requests.md>. If
you have questions or suggestions related to my behavior, please file an
issue against the kubernetes/test-infra
<https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:>
repository. I understand the commands that are listed here
<https://go.k8s.io/bot-commands>.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
<#5981 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AABGPTQUTMZBITMAGD35V4TUP5DIHANCNFSM5JSICVVA>
.
--
Sent from Gmail Mobile
|
Fixes #5967 #5968 #5969
The original implementation used a test http server to validate the timing between successive requests in order to validate the correct backoff calculation. This is rather heavy-weight, and as we've seen is very timing dependent. Overall the test is sound and on consistent/fast hardware runs reliably, but was complicated to understand and brittle on slower/inconsistent hardware.
This most recent flakiness could easily be resolved by adjusting the test's timings to provide a larger buffer to allow for slower runtimes, but there will always be an inherent "limit" at which test slowness will cause a failure. Further this results in the tests themselves taking longer.
Therefore, I am rewriting the test in a (hopefully) simpler fashion. The new test is directly verifying the backoff calculation and skips the eventing sending aspect. This should make them easier to understand and maintain, faster to execute, and no longer subject to slow execution failures (flaky-ness)
The diff is a confusing mess due to overlap with old implementation and I would recommend reviewing the new test on it's own - up to you though ; )
Proposed Changes
Pre-review Checklist
Release Note
Docs