[MDEV-26756] ANALYZE TABLE prints EITS statistics collected while it has not done it Created: 2021-10-04 Updated: 2023-10-03 |
|
| Status: | Open |
| Project: | MariaDB Server |
| Component/s: | Optimizer |
| Affects Version/s: | 10.3, 10.4, 10.5, 10.6 |
| Fix Version/s: | 10.4, 10.5, 10.6 |
| Type: | Bug | Priority: | Major |
| Reporter: | Sergei Petrunia | Assignee: | Sergei Petrunia |
| Resolution: | Unresolved | Votes: | 1 |
| Labels: | eits | ||
| Description |
|
ANALYZE TABLE code ignores any (or some?) errors it gets from updating stats tables. As a result, One may get Engine-independent statistics collected message, while statistics has not been updated. Example: a read-only setting prevents a non-root user from updating the stats, while the message is printed that stats were updated: (a question whether one should be allowed to update EITS stats when read_only=1 is a separate question):
prints on current 10.6:
|
| Comments |
| Comment by Sergei Petrunia [ 2021-10-04 ] | |||||||||||||||||||||
|
Another testcase: it shows how wrong definition of mysql.column_stats causes
In the server stderr, one can see this:
And nothing was written into the stat tables:
| |||||||||||||||||||||
| Comment by Sergei Petrunia [ 2021-10-04 ] | |||||||||||||||||||||
|
I've attempted to fix this in 10.7 with this:
It has caused a failure in binlog.read_only (see exchange on Slack). |