Skip to content

Prevent exponential workqueue backoff from resetting after 64 failures - #4987

Draft
brendandburns with Copilot wants to merge 2 commits into
masterfrom
copilot/fix-exponential-backoff-reset
Draft

brendandburns with Copilot wants to merge 2 commits into
masterfrom
copilot/fix-exponential-backoff-reset

Conversation

Copilot AI commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Java masks long shift distances, causing repeated failures to reset capped backoff on call 65. Millisecond conversion also overflows for large custom durations.

  • Safe saturation: Replace shifts with guarded Duration doubling, preserving exponential growth without overflowing or exceeding the maximum.
  • Compatibility: Preserve negative-duration behavior and forget/numRequeues semantics.
  • Regression coverage: Check every result through 1,024 calls, including calls 63–66 and 127–129, across default, large, submillisecond, and zero-duration settings.

@kubernetes-prow kubernetes-prow Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Nov 4, 2026
@linux-foundation-easycla

linux-foundation-easycla Bot commented Nov 4, 2026 •

Copy link
Copy Markdown

CLA Not Signed

@kubernetes-prow kubernetes-prow Bot added the cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. label Nov 4, 2026
@kubernetes-prow kubernetes-prow Bot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label Nov 4, 2026
Co-authored-by: brendandburns <5751682+brendandburns@users.noreply.github.com>
@kubernetes-prow kubernetes-prow Bot added the do-not-merge/invalid-commit-message Indicates that a PR should not merge because it has an invalid commit message. label Nov 4, 2026
@kubernetes-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: Copilot
Once this PR has been reviewed and has the lgtm label, please ask for approval from brendandburns. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found 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

@kubernetes-prow kubernetes-prow Bot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Nov 4, 2026
Copilot AI changed the title [WIP] Fix exponential workqueue backoff reset after 64 failures Prevent exponential workqueue backoff from resetting after 64 failures Nov 4, 2026
@kubernetes-prow

Copy link
Copy Markdown
Contributor

Invalid commit message issues detected

Invalid commit messages

Keywords which can automatically close issues and hashtag(#) mentions are not allowed.

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. do-not-merge/invalid-commit-message Indicates that a PR should not merge because it has an invalid commit message. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Exponential workqueue backoff resets after 64 failures due to Java shift masking

2 participants