Skip to content

tcp_proxy: Add max_downstream_connection_duration_jitter_percentage#40999

Merged
phlax merged 10 commits intoenvoyproxy:mainfrom
lucaschimweg:tcp_jitter
Sep 24, 2025
Merged

tcp_proxy: Add max_downstream_connection_duration_jitter_percentage#40999
phlax merged 10 commits intoenvoyproxy:mainfrom
lucaschimweg:tcp_jitter

Conversation

@lucaschimweg
Copy link
Copy Markdown
Contributor

@lucaschimweg lucaschimweg commented Sep 5, 2025

Commit Message: tcp_proxy: Add max_downstream_connection_duration_jitter_percentage
Additional Description: Adds proto for a new field that can be used to add a jitter to the max_downstream_connection_duration. This allows to prevent thundering herd problems.
Risk Level: Low (adds new feature not enabled by default)
Testing: Unit tests & Integration tests added, Functionality manually verified locally
Docs Changes: Added API docs
Release Notes: Added
Platform Specific Features: n/a
Fixes #40686
Optional API Considerations: Considered

@lucaschimweg
Copy link
Copy Markdown
Contributor Author

There are (seemingly) unrelated tests failing in the CI. Can we re-run them?

@kyessenov
Copy link
Copy Markdown
Contributor

Please merge main, there was a flakey test added and then reverted.

@lucaschimweg
Copy link
Copy Markdown
Contributor Author

Had to force push to add sign-off.

zuercher
zuercher previously approved these changes Sep 11, 2025
Copy link
Copy Markdown
Member

@zuercher zuercher left a comment

Choose a reason for hiding this comment

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

lgtm

@repokitteh-read-only
Copy link
Copy Markdown

CC @envoyproxy/api-shepherds: Your approval is needed for changes made to (api/envoy/|docs/root/api-docs/).
envoyproxy/api-shepherds assignee is @adisuissa
CC @envoyproxy/api-watchers: FYI only for changes made to (api/envoy/|docs/root/api-docs/).

🐱

Caused by: #40999 was synchronize by lucaschimweg.

see: more, trace.

@lucaschimweg
Copy link
Copy Markdown
Contributor Author

Had to merge main, could I ret a re-review?


// Percentage-based jitter for max_downstream_connection_duration. The jitter will be added
// randomly to the max_downstream_connection_duration.
// This field is ignored if max_downstream_connection_duration is not set.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

OOC what are the tradeoffs of ignoring the field vs. rejecting the config (invalid configuration)?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

No real huge down or upside really, just wanted to avoid rejecting the config unnecessarily.

Copy link
Copy Markdown
Contributor

@adisuissa adisuissa left a comment

Choose a reason for hiding this comment

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

/lgtm api

@repokitteh-read-only repokitteh-read-only bot added api deps Approval required for changes to Envoy's external dependencies labels Sep 23, 2025
@repokitteh-read-only
Copy link
Copy Markdown

CC @envoyproxy/runtime-guard-changes: FYI only for changes made to (source/common/runtime/runtime_features.cc).
CC @envoyproxy/dependency-shepherds: Your approval is needed for changes made to (bazel/.*repos.*\.bzl)|(bazel/dependency_imports\.bzl)|(api/bazel/.*\.bzl)|(.*/requirements\.txt)|(.*\.patch).
envoyproxy/dependency-shepherds assignee is @agrawroh

🐱

Caused by: #40999 was synchronize by lucaschimweg.

see: more, trace.

lucaschimweg and others added 8 commits September 23, 2025 19:20
Signed-off-by: lucaschimweg <schimweg@uber.com>
Signed-off-by: lucaschimweg <schimweg@uber.com>
Signed-off-by: lucaschimweg <schimweg@uber.com>
Signed-off-by: lucaschimweg <schimweg@uber.com>
Co-authored-by: Adi (Suissa) Peleg <adip@google.com>
Signed-off-by: Luca Schimweg <luca@schimweg.net>
Co-authored-by: Adi (Suissa) Peleg <adip@google.com>
Signed-off-by: Luca Schimweg <luca@schimweg.net>
Signed-off-by: lucaschimweg <schimweg@uber.com>
Signed-off-by: lucaschimweg <schimweg@uber.com>
Signed-off-by: lucaschimweg <schimweg@uber.com>
@lucaschimweg
Copy link
Copy Markdown
Contributor Author

Sorry for force push, had to sign-off a previous commit after merging main which caused issues

@agrawroh
Copy link
Copy Markdown
Member

agrawroh commented Sep 23, 2025

I don't see any changes in the deps so singing-off.

/lgtm deps

@repokitteh-read-only
Copy link
Copy Markdown

no relevant owners for "deps"

🐱

Caused by: a #40999 (comment) was created by @agrawroh.

see: more, trace.

@agrawroh agrawroh removed the deps Approval required for changes to Envoy's external dependencies label Sep 23, 2025
@lucaschimweg
Copy link
Copy Markdown
Contributor Author

CI for Envoy/Prechecks and Mobile/CC seems to be stuck (running for 24h now), anything we can do about that?

@zuercher
Copy link
Copy Markdown
Member

/retest

@phlax
Copy link
Copy Markdown
Member

phlax commented Sep 24, 2025

looks like some github issue - i think you will need to merge main or similar to kick it

@zuercher
Copy link
Copy Markdown
Member

Hm. That doesn't seem to have done anything. I'd try adding an empty commit to see if it triggers.

Signed-off-by: lucaschimweg <schimweg@uber.com>
@lucaschimweg
Copy link
Copy Markdown
Contributor Author

It's ready to merge, but I don't have write access. Can someone with access merge?

@phlax phlax merged commit d223795 into envoyproxy:main Sep 24, 2025
25 checks passed
@lucaschimweg lucaschimweg deleted the tcp_jitter branch September 24, 2025 23:22
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.

Jitter for tcp proxy max_downstream_connection_duration

6 participants