envoy icon indicating copy to clipboard operation
envoy copied to clipboard

flow control: side stream flow control part 1

Open tyxia opened this issue 1 year ago • 5 comments

Description: This PR implements flow control (part 1) : side stream applies back pressure to downstream. It hooks up the watermark callbacks and registration in envoy-gRPC. When it is above buffer watermark, the high watermark callback will fire; watermark event will be populated and eventually inform the downstream (data source) stop sending the data.

Tests: Envoy-gRPC test: Verifies that expected high/low watermark callbacks are triggered when large request is sent. ext_proc test: Verifies that expected flow control stats are triggered (by watermark callbacks and events) when large request is sent.

tyxia avatar Jun 16 '24 20:06 tyxia

As a reminder, PRs marked as draft will not be automatically assigned reviewers, or be handled by maintainer-oncall triage.

Please mark your PR as ready when you want it to be reviewed!

:cat:

Caused by: https://github.com/envoyproxy/envoy/pull/34769 was opened by tyxia.

see: more, trace.

/assign @yanavlasov @htuch @alyssawilk

PTAL, Thanks!

tyxia avatar Jun 25 '24 19:06 tyxia

/retest

tyxia avatar Jun 27 '24 17:06 tyxia

CC @envoyproxy/runtime-guard-changes: FYI only for changes made to (source/common/runtime/runtime_features.cc).

:cat:

Caused by: https://github.com/envoyproxy/envoy/pull/34769 was synchronize by tyxia.

see: more, trace.

/retest

tyxia avatar Jun 28 '24 21:06 tyxia

/retest

tyxia avatar Jul 01 '24 15:07 tyxia

adding cross-company reviewer for at least the first PR in the series - I'll assume LGTM here is LGTM for the four-fold flow control integration unless otherwise specified.

alyssawilk avatar Jul 02 '24 14:07 alyssawilk