Bug #39599 alter table ... enable keys crashes mysqld
Submitted: 23 Sep 2008 11:11 Modified: 23 Sep 2008 11:37
Reporter: Michael Rack Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server Severity:S1 (Critical)
Version:mysql-5.1.28-rc OS:Linux
Assigned to: CPU Architecture:Any
Tags: ALTER TABLE, crash, mysqld

[23 Sep 2008 11:11] Michael Rack
Description:
This is a crosspost to the solved bug #27029.

I have installed mysql-5.1.28-rc by source-compilation and upgrading from MySQL 5.0.51a to 5.1.28-rc.

At the old server i did a mysqldump to dump all databases to a SQL-File. I've activated the option --disable-keys to speedup the inserts into the new mysql-database server.

MySQL Crashes while restore the original SQL-File in the first few lines:
/usr/bin/mysql -uroot --socket /tmp/mysql.sock < mysql.2008-09-22.sql

> 080923 12:49:17  InnoDB: Started; log sequence number 0 46430
> 080923 12:49:17 [ERROR] Failed to open the relay log './mysql-relay-bin.000001' (relay_log_pos 4)
> 080923 12:49:17 [ERROR] Could not find target log during relay log initialization
> 080923 12:49:17 [ERROR] Failed to initialize the master info structure
> 080923 12:49:17 [Note] Event Scheduler: Loaded 0 events
> 080923 12:49:17 [Note] /opt/mysql/libexec/mysqld: ready for connections.
> Version: '5.1.28-rcyes-log'  socket: '/tmp/mysql.sock'  port: 3306  yes
> 080923 12:50:16 - 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=8388608
> read_buffer_size=2097152
> max_used_connections=1
> max_threads=30
> threads_connected=1
> It is possible that mysqld could use up to
> key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 131375 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
> /opt/mysql/libexec/mysqld(my_print_stacktrace+0x24) [0x962d54]
> /opt/mysql/libexec/mysqld(handle_segfault+0x320) [0x618b00]
> /lib64/libpthread.so.0 [0x2ad4bc8f75b0]
> /opt/mysql/libexec/mysqld(tree_insert+0xe0) [0x956b30]
> /opt/mysql/libexec/mysqld [0x8a01fd]
> /opt/mysql/libexec/mysqld [0x8a0476]
> /opt/mysql/libexec/mysqld(ft_parse+0x42) [0x89fef2]
> /opt/mysql/libexec/mysqld(_mi_ft_parserecord+0x19a) [0x8cca0a]
> /opt/mysql/libexec/mysqld [0x8c4496]
> /opt/mysql/libexec/mysqld(thr_find_all_keys+0x452) [0x8ce492]
> /lib64/libpthread.so.0 [0x2ad4bc8ef0a7]
> /lib64/libc.so.6(clone+0x6d) [0x2ad4be186dbd]
> ... last line repeat 80 times ...

What can i do to make my inserts get work?

Thank you,
Michael Rack

How to repeat:
I will post the necessary files to this error-report.
[23 Sep 2008 11:17] MySQL Verification Team
Michael, please send us SHOW CREATE TABLE output. Also, are you using myisam_repair_threads > 1 ( see bug #37756 )
[23 Sep 2008 11:21] Michael Rack
My MySQL Configuration-File

Attachment: mysql.conf (application/octet-stream, text), 2.69 KiB.

[23 Sep 2008 11:22] Michael Rack
All relevant data including CREATE TABLE, ALTER TABLE and INSERT INTO ... code is stripped in cases of personal data security

Attachment: mysql.log (application/octet-stream, text), 4.28 KiB.

[23 Sep 2008 11:24] Michael Rack
Hi Shane Bester,

i will try to disable myisam_repair_threads.

Thanks.
[23 Sep 2008 11:34] Michael Rack
Very interesting!

After disabling the option inserts went well.

Thank you for your help :)

Many thanks,
Michael Rack.
[23 Sep 2008 11:37] MySQL Verification Team
you're welcome!, so it's a duplicate of bug #37756