[MDEV-30129] MySQL 5.7 --> MariaDB 10.8 switch: mysqlcheck --check --extended hangs on table Created: 2022-11-29 Updated: 2023-02-05 Resolved: 2023-02-02 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Documentation, Scripts & Clients, Server |
| Affects Version/s: | 10.8.6 |
| Fix Version/s: | 10.6.11, 10.7.7, 10.8.6, 10.9.4 |
| Type: | Bug | Priority: | Minor |
| Reporter: | AJ Livingston | Assignee: | Daniel Black |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Environment: |
Ubuntu 18.04.6 x86_64 |
||
| Attachments: |
|
||||||||
| Issue Links: |
|
||||||||
| Description |
|
This was originally posted as a question at Recently I switched from MySQL 5.7 to MariaDB 10.8 and it's been generally great as a drop-in replacement, but I've run into a problem: the process for a cron job that daily runs
hangs indefinitely on one of the larger tables (981 MB). Here's the relevant output from showing the process list after four days since server restart (there's one process for each day the cron job runs):
Nothing about this appears in /var/log/mysql/ error logs. I am working on getting a backtrace, but this is a bit tricky as it's a production server and I haven't had to do that before. A commenter thought that I should post it now anyway since the table structure alone might provide a clue. Note that this db started life as a mysql 5.7 db and was not upgraded from an early mysql version prior to the mariadb switch. Create table:
|
| Comments |
| Comment by AJ Livingston [ 2022-11-30 ] |
|
I attached three stacktraces from during a run of the mysqlcheck command:
|
| Comment by Marko Mäkelä [ 2023-01-30 ] |
|
All three stack traces show only one active InnoDB thread, executing CHECK TABLE. Previously, CHECK TABLE ignored the EXTENDED keyword for InnoDB tables. |
| Comment by Marko Mäkelä [ 2023-01-30 ] |
|
livingston@msp.org, does the command complete faster if you omit the parameter --extended? |
| Comment by AJ Livingston [ 2023-01-31 ] |
|
Yes, omitting --extended made the command complete in just a few minutes |
| Comment by Marko Mäkelä [ 2023-02-01 ] |
|
Thank you. I’m assigning this to danblack to decide what we should do. Possibly, update some documentation to say that CHECK TABLE…EXTENDED really performs an extended check for InnoDB tables. |
| Comment by Daniel Black [ 2023-02-02 ] |
|
https://mariadb.com/kb/en/check-table/ updated. Appoligies for not finding |
| Comment by AJ Livingston [ 2023-02-05 ] |
|
Sorry, could someone clarify what’s going on here? Was the extended flag not doing anything on MySQL 5.7? Is that why the query didn’t hang? |
| Comment by Marko Mäkelä [ 2023-02-05 ] |
|
livingston@msp.org, Like I wrote, CHECK TABLE…EXTENDED used to do the same as plain CHECK TABLE. |