Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.5, 10.6, 10.11, 11.4
Description
Each time a listener socket becomes ready, MariaDB calls accept() ten times (MAX_ACCEPT_RETRY), even if all but the first one return EAGAIN because there are no more connections.
This causes unnecessary CPU usage - on our server, the CPU load of that thread, which does nothing but accept(), saturates one CPU core by ~45%.
The loop should stop after the first EAGAIN.
Attachments
Activity
Field | Original Value | New Value |
---|---|---|
Priority | Trivial [ 5 ] | Major [ 3 ] |
Affects Version/s | 10.5 [ 23123 ] | |
Affects Version/s | 10.6 [ 24028 ] | |
Affects Version/s | 10.11 [ 27614 ] | |
Affects Version/s | 11.4 [ 29301 ] |
Fix Version/s | 10.6 [ 24028 ] | |
Fix Version/s | 10.11 [ 27614 ] | |
Fix Version/s | 11.4 [ 29301 ] |
Assignee | Sergei Golubchik [ serg ] |
Status | Open [ 1 ] | In Progress [ 3 ] |
Assignee | Sergei Golubchik [ serg ] | Vladislav Vaintroub [ wlad ] |
Status | In Progress [ 3 ] | In Review [ 10002 ] |
Status | In Review [ 10002 ] | Stalled [ 10000 ] |
issue.field.resolutiondate | 2024-09-24 19:45:12.0 | 2024-09-24 19:45:12.279 |
Fix Version/s | 10.5.27 [ 29902 ] | |
Fix Version/s | 10.6 [ 24028 ] | |
Fix Version/s | 10.11 [ 27614 ] | |
Fix Version/s | 11.4 [ 29301 ] | |
Resolution | Fixed [ 1 ] | |
Status | Stalled [ 10000 ] | Closed [ 6 ] |
Fix Version/s | 10.6.20 [ 29903 ] | |
Fix Version/s | 10.11.10 [ 29904 ] | |
Fix Version/s | 11.2.6 [ 29906 ] | |
Fix Version/s | 11.4.4 [ 29907 ] |
Labels | performance |
https://github.com/MariaDB/server/pull/3546