Still send 100 Continue given null MinRequestBodyDataRate#31284
Merged
Conversation
|
Hello human! Please make sure you've included the Shiproom Template in a comment or (preferably) the PR description. Also, make sure this PR is not marked as a draft and is ready-to-merge. |
davidfowl
approved these changes
Mar 26, 2021
jkotalik
approved these changes
Mar 29, 2021
Tratcher
approved these changes
Mar 29, 2021
Member
|
@halter73 / @davidfowl can one of you fill out the Ask Mode template so we can talk about this at Tactics today? |
Member
Author
|
@Pilchie I've updated the description. |
Member
|
Thanks - we missed Tactics this morning, but we'll talk about it on Tuesday. |
Member
|
@halter73 any chance we get get the internal customer to verify the fix with a private before we merge, or at least before we ship? Also, do we need a port of this to 5.0? |
Member
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This fixes a bug in Kestrel where a non-default configuration
MinRequestBodyDataRate = nullcauses Kestrel not to send a "100 Continue" response given a "Expect: 100-continue" request header.Customer impact
This was found (and eventually debugged) by an internal customer.
And it was also reported externally: #21502.
This shows up as a performance regression rather than failed request because clients will eventually start uploading the request body without a "100 Continue" response from Kestrel, but it will wait for a timeout causing increased latency.
Not all clients use "Expect: 100-continue" request header, but older .NET Framework clients do.
Regresssion
Yes. This was a regression introduced in 3.0.
Risk
Low. MinRequestBodyDataRate should have never had any impact on whether or not Kestrel sends a "100 Continue" response.
Fixes #30449