[MDEV-29091] Wait events do not distinguish waiting-for-I/O and waiting-for-locks Created: 2022-07-12 Updated: 2023-11-28 |
|
| Status: | Open |
| Project: | MariaDB Server |
| Component/s: | Locking, Performance Schema, Server, Storage Engine - InnoDB |
| Affects Version/s: | 10.6.8, 10.7.3, 10.7.4, 10.8.2, 10.8.3, 10.9.1 |
| Fix Version/s: | 10.5, 10.6, 10.11, 11.0, 11.1, 11.2 |
| Type: | Bug | Priority: | Major |
| Reporter: | Haidong Ji | Assignee: | Unassigned |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Description |
|
In MariaDB (as well as in MySQL 8), we have no wait event instrumentation for record locks and for table locks. As such, table and row lock waits are reported incorrectly as "wait/io/table/sql/handler". This makes performance troubleshooting impossible for customers.
Table and row lock instrumentation maybe too resource intensive. In the meantime, the fix in https://github.com/MariaDB/server/pull/2206 marks this kind of wait as wait/lock/table/sql/handler Steps to reproduce:
I'm working on a fix. |
| Comments |
| Comment by Daniel Black [ 2022-07-28 ] |
|
vlad.lesin can you review pr 2206 please. |
| Comment by Haidong Ji [ 2022-08-04 ] |
|
Hi Vladislav Lesin, Daniel Black has reviewed and provided comments. I've since addressed them. I believe this fix will mitigate the exaggerated `wait/io/table/sql/handler` wait time issue. Appreciate your feedback/approval. Thanks! |
| Comment by Sergei Golubchik [ 2023-10-14 ] |
|
The fix was incorrect and caused sporadic failures in buildbot. Reverted. See also #2206 |