[MXS-4063] Add support for limiting the amount of data read. Created: 2022-03-25  Updated: 2022-05-23  Resolved: 2022-05-23

Status: Closed
Project: MariaDB MaxScale
Component/s: Core
Affects Version/s: None
Fix Version/s: 22.08.0

Type: Task Priority: Major
Reporter: Johan Wikman Assignee: Johan Wikman
Resolution: Fixed Votes: 0
Labels: None

Sprint: MXS-SPRINT-154, MXS-SPRINT-155, MXS-SPRINT-156, MXS-SPRINT-157

 Description   

MaxScale uses epoll together with non-blocking socket descriptors. When MaxScale is notified there is something to read on a socket, it will read and handle the data until EAGAIN is returned. That is necessary as the sockets are added to epoll in edge-triggered mode. Now, if a client is capable of writing so fast that MaxScale never is able to empty the socket, then that client will be able to monopolize the thread handling that particular socket. Thus, it should be possible to not ready everything before returning to epoll and checking for sockets ready to be read.


Generated at Thu Feb 08 04:25:56 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.