listener: add an option to continue on listener filters timeout#7859
listener: add an option to continue on listener filters timeout#7859lizan merged 10 commits intoenvoyproxy:masterfrom
Conversation
Signed-off-by: Lizan Zhou <lizan@tetrate.io>
|
no test yet, cc @silentdai |
Signed-off-by: Lizan Zhou <lizan@tetrate.io>
Signed-off-by: Lizan Zhou <lizan@tetrate.io>
Signed-off-by: Lizan Zhou <lizan@tetrate.io>
Signed-off-by: Lizan Zhou <lizan@tetrate.io>
|
This is ready to review, PTAL |
|
If listener option is the solution, can you add the document that a listener with That is the initial motivation of the my PR: It's harmless for the listener to decide to close the socket, but only listener filter itself can decide whether it's appropriate to continue. LGTM if the above case is omitted |
mattklein123
left a comment
There was a problem hiding this comment.
Thanks, LGTM with some small nits.
/wait
mattklein123
left a comment
There was a problem hiding this comment.
LGTM, also needs a format fix.
/wait
Signed-off-by: Lizan Zhou <lizan@tetrate.io> Co-Authored-By: Matt Klein <mattklein123@gmail.com>
| * @return std::chrono::milliseconds the time to wait for all listener filters to complete | ||
| * operation. If the timeout is reached, the accepted socket is closed without a | ||
| * connection being created. 0 specifies a disabled timeout. | ||
| * connection being created unless continueOnListenerFiltersTimeout() returns true. |
There was a problem hiding this comment.
One random thought, thinking about the use case that @silentdai had, would it make sense to have a timeout in the listener filter config as well to enable override on a per-filter basis? In theory you might want to have different timeouts for TLS vs. some other filter. I think the point is probably moot right now, because folks have shallow (maybe typically 1 deep) filter chains, but just a consideration for future.
There was a problem hiding this comment.
A listener filter can still do their own timeout, to continue or fail, from their opaque config, such as @silentdai did in #7853. This option applies only to when listener level timeout happens.
lambdai
left a comment
There was a problem hiding this comment.
Thank you for the update!
/approve
Signed-off-by: Lizan Zhou lizan@tetrate.io
Description:
Add an option to continue on listener filters timeout.
Risk Level: Med (mostly guarded by config)
Testing: unittest
Docs Changes: Added
Release Notes: Added
Fixes #7195