http: minor code clean up to the http filter manager#36027
http: minor code clean up to the http filter manager#36027ggreenway merged 3 commits intoenvoyproxy:mainfrom
Conversation
Signed-off-by: wangbaiping <wbphub@gmail.com>
Signed-off-by: wangbaiping <wbphub@gmail.com>
|
/assign-from @envoyproxy/senior-maintainers |
|
@envoyproxy/senior-maintainers assignee is @ggreenway |
ggreenway
left a comment
There was a problem hiding this comment.
Can you elaborate on the reasoning for this change? My understanding is that this will make some of the callbacks be called twice now for filters that are both an encoder and decoder. Was that protection unnecessary?
/wait-any
Long time ago, we only have decoder_filters_ and encoder_filters, this protection is necessary. But at #15172, we introduce a new containers to store the StreamFilterBase pointer for every unique filter. We can iterate the that container directly and needn't any additional branch.
I want to optimize the implementation of filter manager and reduce the scattered memory allocations of http filter chain creation. And this is a minor pre-PR to simplify that optimization PR. |
* upstream/main: (21 commits) Add a CPU utilization resource monitor for overload manager (envoyproxy#34713) jwks: Add UA string to headers (envoyproxy#35977) exceptions: cleaning up macros (envoyproxy#35694) coverage: ratcheting (envoyproxy#36058) runtime: load rtds bool correctly as true/false instead of 1/0 (envoyproxy#36044) Typo in documentation of http original_src filter (envoyproxy#36060) docs: updating meeting info (envoyproxy#36052) quic: removes more references to spdy::Http2HeaderBlock. (envoyproxy#36057) json: add null support to the streamer (envoyproxy#36051) json: make the streamer a template class (envoyproxy#36001) docs: Add `apt.envoyproxy.io` install information (envoyproxy#36050) ext_proc: elide redundant copy in ext_proc filter factory callback (envoyproxy#36015) build(deps): bump yarl from 1.11.0 to 1.11.1 in /tools/base (envoyproxy#36049) build(deps): bump multidict from 6.0.5 to 6.1.0 in /tools/base (envoyproxy#36048) quic: enable certificate compression/decompression (envoyproxy#35999) Geoip fix asan failure (envoyproxy#36043) mobile: Fix missing logging output in Swift integration tests (envoyproxy#36040) http: minor code clean up to the http filter manager (envoyproxy#36027) ci/example: Dont build/test the filter example in Envoy CI (envoyproxy#36038) ci/codeql: Fix build setup (envoyproxy#36021) ... Signed-off-by: Qiu Yu <qiuyu@apple.com>
Commit Message: http: minor code clean up to the http filter manager
Additional Description:
Risk Level: low.
Testing: n/a.
Docs Changes: n/a.
Release Notes: n/a.
Platform Specific Features: n/a.