-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
add http1-safe max_connection_duration for http connection manager #35209
Conversation
Signed-off-by: antoniovleonti <[email protected]>
CC @envoyproxy/api-shepherds: Your approval is needed for changes made to |
/assign @KBaichoo |
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
/retest |
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
/retest |
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
@KBaichoo CI errors fixed, PTAL |
Thanks @antoniovleonti , will give a pass later today! |
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.
/wait
Thank you for working on this
api/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto
Show resolved
Hide resolved
api/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto
Outdated
Show resolved
Hide resolved
Signed-off-by: antoniovleonti <[email protected]>
…to soft-mcd Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
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.
Otherwise lgtm. Can you also update the description (or the issue) to better capture the end behavior since we iterated on it? Thank you
api/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto
Outdated
Show resolved
Hide resolved
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
The description has been updated. 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.
Thank you
/assign @yanavlasov |
Needs main merge to fix coverage build error. |
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.
LGTM,. See if you can replace the check for log message with the check for stat value.
/wait-any
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
Signed-off-by: antoniovleonti <[email protected]>
…nvoyproxy#35209) This PR adds an option to change the http connection manager's draining behavior for max_connection_duration for http1. The new behavior is that envoy will wait indefinitely for one more request, add connection:close to the response headers, then close the connection once the stream ends. This is to avoid a networking race condition which results in the client not receiving a response to their last request if they send it right when envoy is closing the connection. Fixes envoyproxy#34356 (check for context) --------- Signed-off-by: antoniovleonti <[email protected]> Signed-off-by: Martin Duke <[email protected]>
Commit Message: test: update a broken test due to PRs race Additional Description: PR #35568 used an old `setup()` method call which was modified by PR #35209 that was merged just before it, causing a build failure. This PR update the test and fixes the build failure. Risk Level: low Testing: N/A Docs Changes: N/A Release Notes: N/A Platform Specific Features: N/A Signed-off-by: Adi Suissa-Peleg <[email protected]>
…nvoyproxy#35209) This PR adds an option to change the http connection manager's draining behavior for max_connection_duration for http1. The new behavior is that envoy will wait indefinitely for one more request, add connection:close to the response headers, then close the connection once the stream ends. This is to avoid a networking race condition which results in the client not receiving a response to their last request if they send it right when envoy is closing the connection. Fixes envoyproxy#34356 (check for context) --------- Signed-off-by: antoniovleonti <[email protected]> Signed-off-by: asingh-g <[email protected]>
Commit Message: test: update a broken test due to PRs race Additional Description: PR envoyproxy#35568 used an old `setup()` method call which was modified by PR envoyproxy#35209 that was merged just before it, causing a build failure. This PR update the test and fixes the build failure. Risk Level: low Testing: N/A Docs Changes: N/A Release Notes: N/A Platform Specific Features: N/A Signed-off-by: Adi Suissa-Peleg <[email protected]> Signed-off-by: asingh-g <[email protected]>
Commit Message: add http1-safe max_connection_duration for http connection manager
This PR adds an option to change the http connection manager's draining behavior for max_connection_duration for http1. The new behavior is that envoy will wait indefinitely for one more request, add connection:close to the response headers, then close the connection once the stream ends.
This is to avoid a networking race condition which results in the client not receiving a response to their last request if they send it right when envoy is closing the connection.
Fixes #34356 (check for context)