Details
-
Bug
-
Status: In Review (View Workflow)
-
Major
-
Resolution: Unresolved
-
23.02.19, 23.08.15, 24.02.11, 25.01.8, 25.10.4
-
None
-
MXS-SPRINT-282
Description
If the tee filter's branch target ends up being so slow that network data is buffered on it, the backend connection puts backpressure on the client connection that blocks reads until the network buffers have been flushed. This results in the tee filter blocking the client even when sync=false is used.
The solution would be to allow the behavior to be changed so that the branch target has a few modes:
- wait: wait until the network buffers are flushed (current behavior)
- error: generate an error if a query would fill up the network buffer, effectively dropping it
- kill: kill the branch connection as soon as the network buffer fills up
It would also be beneficial to have a configurable delay after which the action is taken. This way, a short burst of data is still allowed to pass but a longer, sustained slowdown would be handled gracefully.
Attachments
Issue Links
- is blocked by
-
MXS-7715 DCB callbacks for the write queue water marks should be usable by several routers of a session
-
- In Progress
-