Skip to content

feat: add support for retry budget in BackendTrafficPolicy#8457

Open
zirain wants to merge 9 commits intoenvoyproxy:mainfrom
zirain:retry-budget
Open

feat: add support for retry budget in BackendTrafficPolicy#8457
zirain wants to merge 9 commits intoenvoyproxy:mainfrom
zirain:retry-budget

Conversation

@zirain
Copy link
Member

@zirain zirain commented Mar 9, 2026

Add retry budget support in BackendTrafficPolicy to represent retry circuit breakers as a percent of active traffic instead of a static maxRetries circuit breaker values.

@netlify
Copy link

netlify bot commented Mar 9, 2026

Deploy Preview for cerulean-figolla-1f9435 ready!

Name Link
🔨 Latest commit b8ca17c
🔍 Latest deploy log https://app.netlify.com/projects/cerulean-figolla-1f9435/deploys/69b3ab9dd6c0110008de7870
😎 Deploy Preview https://deploy-preview-8457--cerulean-figolla-1f9435.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@codecov
Copy link

codecov bot commented Mar 9, 2026

Codecov Report

❌ Patch coverage is 86.11111% with 15 lines in your changes missing coverage. Please review.
✅ Project coverage is 74.10%. Comparing base (01f43e3) to head (b8ca17c).

Files with missing lines Patch % Lines
internal/gatewayapi/clustersettings.go 71.42% 8 Missing and 4 partials ⚠️
.../xds/utils/fractionalpercent/fractional_percent.go 60.00% 1 Missing and 1 partial ⚠️
internal/xds/translator/accesslog.go 94.11% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #8457      +/-   ##
==========================================
- Coverage   74.16%   74.10%   -0.07%     
==========================================
  Files         242      242              
  Lines       37603    37573      -30     
==========================================
- Hits        27889    27842      -47     
- Misses       7773     7786      +13     
- Partials     1941     1945       +4     

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@zirain zirain marked this pull request as ready for review March 10, 2026 06:15
@zirain zirain requested a review from a team as a code owner March 10, 2026 06:15
@zirain zirain added this to the v1.8.0-rc.1 Release milestone Mar 11, 2026

// RetryBudget provides settings for retry budget, which limits the number of retries in a given percentage.
// +optional
RetryBudget *RetryBudget `json:"retryBudget,omitempty"`
Copy link
Member

Choose a reason for hiding this comment

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

Should RetryBudget and MaxParallelRetries be mutually exclusive?

Copy link
Member Author

@zirain zirain Mar 12, 2026

Choose a reason for hiding this comment

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

Envoy doesn't reject the configuration, but RetryBudget take precedence.

Copy link
Member Author

Choose a reason for hiding this comment

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

MaxParallelRetries have default value of 1024:

	// The maximum number of parallel retries that Envoy will make to the referenced backend defined within a xRoute rule.
	//
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=4294967295
	// +kubebuilder:default=1024
	// +optional
	MaxParallelRetries *int64 `json:"maxParallelRetries,omitempty"`

Maybe we should just add notes on RetryBudget?

zirain added 8 commits March 13, 2026 13:09
Signed-off-by: zirain <[email protected]>
Signed-off-by: zirain <[email protected]>
Signed-off-by: zirain <[email protected]>
Signed-off-by: zirain <[email protected]>
Signed-off-by: zirain <[email protected]>
Signed-off-by: zirain <[email protected]>
Signed-off-by: zirain <[email protected]>
Signed-off-by: zirain <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants