Description:
mysql crashed while running, and fails to come up. The error message in the error log is
111004 22:01:46 - 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.
We will try our best to scrape up some info that will hopefully help diagnose
the problem, but since we have already crashed, something is definitely wrong
and this may fail.
key_buffer_size=1073741824
read_buffer_size=33554432
max_used_connections=601
max_threads=600
threads_connected=75
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 40376382 K
bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
thd: 0x0
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 = (nil) thread_stack 0x20000
/usr/sbin/mysqld(my_print_stacktrace+0x2e)[0x85599e]
/usr/sbin/mysqld(handle_segfault+0x322)[0x5c3572]
/lib64/libpthread.so.0[0x377700eb10]
/usr/lib64/mysql/plugin/ha_innodb_plugin.so[0x2aaaf3ed956a]
/usr/lib64/mysql/plugin/ha_innodb_plugin.so[0x2aaaf3ed81ca]
/usr/lib64/mysql/plugin/ha_innodb_plugin.so[0x2aaaf3ec311a]
/usr/lib64/mysql/plugin/ha_innodb_plugin.so[0x2aaaf3ef408c]
/usr/lib64/mysql/plugin/ha_innodb_plugin.so[0x2aaaf3eecf2e]
/lib64/libpthread.so.0[0x377700673d]
/lib64/libc.so.6(clone+0x6d)[0x37768d3f6d]
The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
information that should help you find out what is causing the crash.
Some slaves of this server failed with a similar issue:
InnoDB: Apply batch completed
InnoDB: Last MySQL binlog file position 0 76443675, file name /mysql/logs/bin/mysql-binlog.001288
InnoDB: Starting in background the rollback of uncommitted transactions
111005 2:45:08 InnoDB: Rolling back trx with id 16DC2B01, 8750 rows to undo
InnoDB: Progress in percents: 1111005 2:45:08 InnoDB Plugin 1.0.13 started; log sequence number 4483002836418
111005 2:45:08 [Note] Recovering after a crash using /mysql/logs/bin/mysql-binlog
111005 2:45:08 [Note] Starting crash recovery...
111005 2:45:08 [Note] Crash recovery finished.
111005 2:45:08 [Note] Event Scheduler: Loaded 0 events
111005 2:45:08 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.1.53-community-log' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Server (GPL)
111005 2:45:08 [Note] Slave SQL thread initialized, starting replication in log 'mysql-binlog.003770' at position 76522258, relay log '/mysql/logs/relay/mysqld-relay-bin.000895' position: 76522406
111005 2:45:08 [ERROR] Slave I/O: error connecting to master 'replicate@master:3306' - retry-time: 60 retries: 86400, Error_code: 2013
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
InnoDB: Rolling back of trx id 16DC2B01 completed
111005 2:45:08 InnoDB: Rollback of non-prepared transactions completed
111005 2:45:18 - 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.
We will try our best to scrape up some info that will hopefully help diagnose
the problem, but since we have already crashed, something is definitely wrong
and this may fail.
key_buffer_size=1073741824
read_buffer_size=33554432
max_used_connections=1
max_threads=600
threads_connected=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 40376382 K
bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
thd: 0x0
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 = (nil) thread_stack 0x20000
/usr/sbin/mysqld(my_print_stacktrace+0x2e)[0x85599e]
/usr/sbin/mysqld(handle_segfault+0x322)[0x5c3572]
/lib64/libpthread.so.0[0x386560eb10]
/usr/lib64/mysql/plugin/ha_innodb_plugin.so[0x2aaaf2daf56a]
/usr/lib64/mysql/plugin/ha_innodb_plugin.so[0x2aaaf2dae1ca]
/usr/lib64/mysql/plugin/ha_innodb_plugin.so[0x2aaaf2d9911a]
/usr/lib64/mysql/plugin/ha_innodb_plugin.so[0x2aaaf2dca08c]
/usr/lib64/mysql/plugin/ha_innodb_plugin.so[0x2aaaf2dc2f2e]
/lib64/libpthread.so.0[0x386560673d]
/lib64/libc.so.6(clone+0x6d)[0x3864ed3d1d]
The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
information that should help you find out what is causing the crash.
111005 02:45:18 mysqld_safe Number of processes running now: 0
111005 02:45:18 mysqld_safe mysqld restarted
A few minutes before the crash, the offending table had been shrunk from ~ 7million records to just a few thousand. After the shrinking of the table, there was an
ALTER TABLE foo ADD INDEX (ts_field)
the alter table completed without any issues
How to repeat:
Haven't been able to replicate. Also, not all of the slaves experienced the same behavior, though they all had the same innodb settings. On a slave that did fail, if I remove the offending table's ibd and rfm files, the server starts up without a problem
the innodb settings file is
innodb_thread_concurrency = 32
innodb_data_home_dir = /mysql/data
innodb_data_file_path = ibdata1:10M:autoextend
innodb_file_per_table = 1
innodb_log_group_home_dir = /mysql/logs
innodb_buffer_pool_size = 20GB
innodb_additional_mem_pool_size = 64M
innodb_log_file_size = 1GB
innodb_log_files_in_group = 3
innodb_log_buffer_size = 64M
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DSYNC
innodb_adaptive_hash_index = 0
innodb_support_xa = 0
# plugin stuff
ignore_builtin_innodb
plugin-load=innodb=ha_innodb_plugin.so
innodb_file_format=Barracuda