Skip to content

Retry transient informer failures - #3034

Open
brendandburns wants to merge 1 commit into
kubernetes-client:mainfrom
brendandburns:fix-informer-retryable-errors
Open

Retry transient informer failures#3034
brendandburns wants to merge 1 commit into
kubernetes-client:mainfrom
brendandburns:fix-informer-retryable-errors

Conversation

@brendandburns

Copy link
Copy Markdown
Contributor

Summary

  • retry transient informer LIST and WATCH failures instead of terminating the informer
  • classify network errors, HTTP 408, 429, and 5xx responses as retryable while preserving terminal behavior for other 4xx errors
  • reuse the existing client-go-inspired exponential jittered backoff and preserve timeout, 410 Gone, and explicit-stop behavior
  • add deterministic regression coverage for retryable LIST/WATCH failures and clean informer shutdown

This addresses the P0 informer recovery gap identified in the client-go gap analysis.

Testing

  • npm run build
  • node --test --test-reporter=spec --import tsx src/cache_test.ts
  • full repository test suite: 361 passed, 0 failed
  • repository push hooks

@kubernetes-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: brendandburns

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

@kubernetes-prow kubernetes-prow Bot added approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Sep 2, 2026
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. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. 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.

1 participant