Skip to content
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

admin: apply flow control via high/low watermarks #31087

Draft
wants to merge 6 commits into
base: main
Choose a base branch
from

Merge branch 'main' into admin-flow-control2

dbba968
Select commit
Loading
Failed to load commit list.
Draft

admin: apply flow control via high/low watermarks #31087

Merge branch 'main' into admin-flow-control2
dbba968
Select commit
Loading
Failed to load commit list.
CI (Envoy) / Envoy/Windows succeeded Feb 22, 2024 in 52m 57s

Envoy/Windows (success)

Check has finished

Details

Check run finished (success ✔️)

The check run can be viewed here:

Envoy/Windows (pr/31087/main@dbba968)

Check started by

Request (pr/31087/main@dbba968)

jmarantz @jmarantz dbba968 #31087 merge main@c82c083

admin: apply flow control via high/low watermarks

Commit Message: This builds on #19831 , adding an attempt to use http filter methods to deploy flow-control, so we can pause generation of admin output until clients are ready for it.

This is not ready yet -- @alyssawilk has explained to me how to get the flow-control to work

  • use high-watermark callback to set a bit in the filter to avoid sending more data
  • use low-watermark callback to clear the above bit and send another chunk, and then queue up a callback for the next chunk (assuming high-water callback is not called).

This pattern should also be in the http cache filter and also the Router, though the latter is a lot more complex.
Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Fixes commit #PR or SHA]
[Optional Deprecated:]
[Optional API Considerations:]

Environment

Request variables

Key Value
ref 3863e20ae1f2c43f465fd1d3e1b8c1a88ead8bd2
sha dbba968
pr 31087
base-sha c82c083
actor jmarantz @jmarantz
message admin: apply flow control via high/low watermarks...
started 1708613836.044857
target-branch main
trusted false
Build image

Container image/s (as used in this CI run)

Key Value
default envoyproxy/envoy-build-ubuntu:0ca52447572ee105a4730da5e76fe47c9c5a7c64
mobile envoyproxy/envoy-build-ubuntu:mobile-0ca52447572ee105a4730da5e76fe47c9c5a7c64
Version

Envoy version (as used in this CI run)

Key Value
major 1
minor 30
patch 0
dev true