-
Notifications
You must be signed in to change notification settings - Fork 4.5k
grpc: introduce new DialOption and ServerOption to configure initial window size without disabling BDP estimation. #8283
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
base: master
Are you sure you want to change the base?
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #8283 +/- ##
==========================================
- Coverage 82.25% 82.15% -0.10%
==========================================
Files 417 419 +2
Lines 41356 42014 +658
==========================================
+ Hits 34017 34517 +500
- Misses 5923 6024 +101
- Partials 1416 1473 +57
🚀 New features to boost your workflow:
|
Is this the same as #8279? Should the original PR be closed? |
@dfawley Can you please review this when you get a chance? |
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.
This PR should implement just (1) from #7923.
It should not mark the old options as deprecated.
- Please improve the PR title ("the size"?)
- Please write release notes
Thanks!
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.
And please update the first comment and release notes in this PR accordingly.
// TestJoinDialOption_StaticConnAndStreamWindowSizes verifies that both static | ||
// stream and connection window sizes set via joined dial options are correctly | ||
// applied. |
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.
Is there some special interaction here with these and Join? I don't think there's much need for this test, since it just tests Join
, but we already have a test for that.
// WithStaticStreamWindowSize returns a DialOption to set the static initial | ||
// stream window size. |
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.
// WithStaticStreamWindowSize returns a DialOption to set the static initial | |
// stream window size. | |
// WithStaticStreamWindowSize returns a DialOption which sets the initial | |
// stream window size to the value provided and prevents dynamic flow control | |
// from adjusting it. |
StatsHandlers []stats.Handler | ||
KeepaliveParams keepalive.ServerParameters | ||
KeepalivePolicy keepalive.EnforcementPolicy | ||
InitialWindowSize int32 |
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.
I think it would help things for this change if we were to delete the Initial
things from our internals for now. Conceptually, the current settings are just renamed to Static
.
Fixes: #7923
Added new
DialOption
s to configure static window sizes without disabling BDP estimation:WithStaticStreamWindowSize(int32)
— sets the initial stream window sizeWithStaticConnWindowSize(int32)
— sets the initial connection window sizeAdded new
ServerOption
s to configure static window sizes without disabling BDP estimation:StaticStreamWindowSize(int32)
— sets the initial stream window sizeStaticConnWindowSize(int32)
— sets the initial connection window sizeThese options mirror the behavior of
WithInitialWindowSize
andInitialConnWindowSize
,. The original options will continue to disable BDP estimation as before.RELEASE NOTES: