This repository was archived by the owner on Nov 15, 2023. It is now read-only.
This repository was archived by the owner on Nov 15, 2023. It is now read-only.
Backpressure for the request-response protocol doesn't work correctly #14138
Closed
Description
Here the code calls try_send()
to try and send the request to the installed request handler and the idea is that the if the channel is full, the request is dropped. But it doesn't work correctly as try_send()
always returns Ok(())
because resp_builder
is cloned here every time a request is received from remote which adds a new slot to the channel.
The code should check the channel size before creating the MessageRequest
object and drop the request in case the channel is full.
Metadata
Metadata
Assignees
Type
Projects
Status
Done ✅