[MDEV-22535] TABLE::initialize_quick_structures() takes 0.5% in oltp_read_only Created: 2020-05-12 Updated: 2020-07-04 Resolved: 2020-07-03 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Optimizer |
| Affects Version/s: | 10.1, 10.2, 10.3, 10.4, 10.5 |
| Fix Version/s: | 10.3.24, 10.4.14, 10.5.5 |
| Type: | Bug | Priority: | Major |
| Reporter: | Sergey Vojtovich | Assignee: | Michael Widenius |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Epic Link: | Performance: micro optimizations | ||||||||
| Description |
|
1. These members consume 1536 of 3520 bytes (44%) of TABLE for no good reason. |
| Comments |
| Comment by Varun Gupta (Inactive) [ 2020-05-13 ] |
|
@Monty suggested to remove the initialisation and always check first if quick_keys is set only then use the quick |
| Comment by Varun Gupta (Inactive) [ 2020-06-18 ] |
|
Patch The patch currently just moves the initialisation from TABLE::init to test_quick_select where we run the range optimizer. |
| Comment by Michael Widenius [ 2020-06-24 ] |
|
I am working on a fix for this in 10.6; Let see how it looks when I am done if we should backport it to earlier versions. |
| Comment by Michael Widenius [ 2020-06-30 ] |
|
Fix for 10.5 done and tested. |
| Comment by Michael Widenius [ 2020-07-03 ] |
|
Testing, merging, testing etc (Lot's of valgrind run's to verify that the change is safe) 10.3 & 10.4 fixed by not doing the initialization at all. |