Skip to content

Add backpressure mechanism for muxer

If enabled, this will adaptively increase the timeout by a factor when it detects that there is a high rate of data that is dropped (partial pulls). This could be due to a variety of issues upstream, but has the effect of potentially mitigating dropped data for e.g. intermittent latency spikes from a source. When it detects that dropped data has slowed down, it will switch back to the original timeout.

Add a variety of unit tests to cover various modes of operation and verify that it has the expected behavior.

Example of logs in action:

2025-08-12 11:32:55,367 | arrakis : INFO : Backpressure activated: 30.00% partial pulls (threshold: 30.00%)
2025-08-12 11:33:09,342 | arrakis : INFO : Backpressure deactivated: 10.00% partial pulls

Depends on !74 (merged).

Merge request reports

Loading