LP #1735312: information_schema crashes server

Description

**Reported in Launchpad by Arman Jakupovic last update 01-12-2017 20:51:11

I'm sorry if I'm not providing enough information. I'm new to all this.
A couple of days ago we upgraded our mysql5.5 server to percona-server-5.7. We didn't really do an upgrade more like taking a dump of all databases and then deleting the old server, followed by install of percona server 5.7 and then import of big database file.
Today I was doing some tweaking and needed to query the information_schema. So I did a SELECT * FROM information_schema.tables and this caused the server to crash. I tried selecting the table columns aswell and this also crashes the server each and every time. This is the error message I got.

22:56:31 UTC - mysqld got signal 11 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
Attempting to collect some information that could help diagnose the problem.
As this is a crash and something is definitely wrong, the information
collection process might fail.
Please help us make Percona Server better by reporting any
bugs at http://bugs.percona.com/

key_buffer_size=16777216
read_buffer_size=131072
max_used_connections=2
max_threads=526
thread_count=2
connection_count=2
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 2241389 K bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

Thread pointer: 0x7f4b10000b30
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 7f4b725b8e40 thread_stack 0x40000
/usr/sbin/mysqld(my_print_stacktrace+0x2c)[0xed2d0c]
/usr/sbin/mysqld(handle_fatal_signal+0x461)[0x7a0bc1]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x10330)[0x7f537d580330]
/usr/sbin/mysqld(_Z29page_find_rec_max_not_deletedPKh+0xb0)[0xfed9a0]
/usr/sbin/mysqld(_Z22row_search_max_autoincP12dict_index_tPKcPm+0x25f)[0x1059aaf]
/usr/sbin/mysqld(_ZN11ha_innobase27innobase_initialize_autoincEv+0xc9)[0xf495a9]
/usr/sbin/mysqld(_ZN11ha_innobase4openEPKcij+0xc14)[0xf56414]
/usr/sbin/mysqld(_ZN7handler7ha_openEP5TABLEPKcii+0x33)[0x803593]
/usr/sbin/mysqld(_Z21open_table_from_shareP3THDP11TABLE_SHAREPKcjjjP5TABLEb+0x766)[0xd4b876]
/usr/sbin/mysqld(_Z10open_tableP3THDP10TABLE_LISTP18Open_table_context+0xf91)[0xc512b1]
/usr/sbin/mysqld(_Z11open_tablesP3THDPP10TABLE_LISTPjjP19Prelocking_strategy+0x5f2)[0xc57f12]
/usr/sbin/mysqld(_Z21open_tables_for_queryP3THDP10TABLE_LISTj+0x4b)[0xc5882b]
/usr/sbin/mysqld[0xd0b72d]
/usr/sbin/mysqld(_Z14get_all_tablesP3THDP10TABLE_LISTP4Item+0x6e2)[0xd0c022]
/usr/sbin/mysqld[0xcf500c]
/usr/sbin/mysqld(_Z24get_schema_tables_resultP4JOIN23enum_schema_table_state+0x1e1)[0xd07e51]
/usr/sbin/mysqld(_ZN4JOIN14prepare_resultEv+0x6d)[0xceae4d]
/usr/sbin/mysqld(_ZN4JOIN4execEv+0x80)[0xc7bf90]
/usr/sbin/mysqld(_Z12handle_queryP3THDP3LEXP12Query_resultyy+0x17d)[0xceb77d]
/usr/sbin/mysqld[0x760753]
/usr/sbin/mysqld(_Z21mysql_execute_commandP3THDb+0x4816)[0xcaee36]
/usr/sbin/mysqld(_Z11mysql_parseP3THDP12Parser_state+0x5c5)[0xcb2055]
/usr/sbin/mysqld(_Z16dispatch_commandP3THDPK8COM_DATA19enum_server_command+0xaba)[0xcb2b9a]
/usr/sbin/mysqld(_Z10do_commandP3THD+0x1b7)[0xcb45e7]
/usr/sbin/mysqld(handle_connection+0x2a0)[0xd789b0]
/usr/sbin/mysqld(pfs_spawn_thread+0x1b4)[0x1252ac4]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x8184)[0x7f537d578184]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7f537ca84ffd]

Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (7f4b10005850): SELECT * FROM INFORMATION_SCHEMA.TABLES
Connection ID (thread ID): 4
Status: NOT_KILLED

You may download the Percona Server operations manual by visiting
http://www.percona.com/software/percona-server/. You may find information
in the manual which will help you identify the cause of the crash.

my.cnf
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /mnt/disk1/mysql
tmpdir = /mnt/disk1/tmp
lc-messages-dir = /usr/share/mysql
explicit_defaults_for_timestamp

log-error = /var/log/mysql/error.log

  1. Recommended in standard MySQL setup
    sql_mode=""

  1. Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    skip-external-locking
    binlog_format = ROW
    innodb_buffer_pool_size = 30G
    innodb_flush_method = O_DIRECT
    max_connections = 525
    thread_cache_size = 550
    sort_buffer_size = 4194304
    join_buffer_size = 1048576
    interactive_timeout = 300
    wait_timeout = 300
    table_definition_cache = 1500
    table_open_cache = 3000
    max_heap_table_size = 33554432
    tmp_table_size = 33554432

bind-address = 127.0.0.1

query_cache_type = 0
query_cache_limit = 1M
query_cache_size = 0
query_cache_min_res_unit = 1024

max_allowed_packet = 16M
key_buffer_size = 16M

server_id = 1
log_bin = /mnt/disk1/mysql-bin-logs/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 70M

innodb_log_buffer_size = 33554432
innodb_log_file_size = 3840M
innodb_buffer_pool_instances = 30

MYSQL VERSION
mysqladmin Ver 8.42 Distrib 5.7.19-17, for debian-linux-gnu on x86_64

Environment

None

Smart Checklist

Activity

Show:

lpjirasync January 24, 2018 at 11:47 AM

**Comment from Launchpad by: Sveta Smirnova on: 01-12-2017 20:51:02

Thank you for the update.

Since this crash is due to corruption I am closing this report as "Invalid". You can read how to deal with corrupted InnoDB tables at https://dev.mysql.com/doc/refman/5.7/en/innodb-troubleshooting-datadict.html and https://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html (just make sure you have a copy of datadir before trying innodb_force_recovery > 4)

lpjirasync January 24, 2018 at 11:47 AM

**Comment from Launchpad by: Arman Jakupovic on: 30-11-2017 12:17:54

Okey, so this is most likely not a bug. It seems like a table is corrupt and when I try to drop it the server crashes. If i try to show table status it crashes. I assume this is why information_schema also crashes the server. How can I drop a database that is corrupt? All tables use innodb engine.

Done

Details

Assignee

Reporter

Priority

Smart Checklist

Created January 24, 2018 at 11:47 AM
Updated December 19, 2023 at 7:58 AM
Resolved January 24, 2018 at 11:47 AM