[debian-mysql] Bug#768489: mysql-server ADD CONSTRAINT crashes mysql and table disappears

Bud bud at computerwizards.com
Fri Nov 7 16:36:23 UTC 2014


Package: mysql-server
Version: 5.5.40-0+wheezy1
Severity: important
Tags: upstream


Dear Maintainer,

Since the upgrade to the security release of 5.5.40-0+wheezy1 mysqld has been crashing and we have been losing tables when eclipselink runs certain add constraingt commands to deploy our java apps.  This problem does not exist in 5.5.38-0+wheezy1 or earlier versions.  I have tried running all the commands by hand on multiple systems and multiple databases with the same result.

One example:
ALTER TABLE contract ADD CONSTRAINT FK_contract_campaign_estimate FOREIGN KEY (campaign_estimate) REFERENCES campaign_estimate (id)

Causes a crash of mysql and I am unable to use the contract table in any way until I drop the database and recreate it.  Running that command again against the new db will have the same effect.

The log shows:
141107 10:44:39  InnoDB: Assertion failure in thread 140571090040576 in file di
ct0dict.c line 2573
 InnoDB: Failing assertion: UT_LIST_GET_LEN(table->referenced_list) == rbt_size(
table->referenced_rbt)
 InnoDB: We intentionally generate a memory trap.
 InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
 InnoDB: If you get repeated assertion failures or crashes, even
 InnoDB: immediately after the mysqld startup, there may be
 InnoDB: corruption in the InnoDB tablespace. Please refer to
 InnoDB: http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html
 InnoDB: about forcing recovery.
 15:44:39 UTC - mysqld got signal 6 ;
 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=16777216
 read_buffer_size=131072
 max_used_connections=1
 max_threads=151
 thread_count=1
 connection_count=1
 It is possible that mysqld could use up to
 key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 346700 K
 bytes of memory
 Hope that's ok; if not, decrease some variables in the equation.
 
 Thread pointer: 0x7fd944fdbdd0
 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 = 7fd941e32e80 thread_stack 0x30000
/usr/sbin/mysqld(my_print_stacktrace+0x29)[0x7fd9423bf0b9]
 /usr/sbin/mysqld(handle_fatal_signal+0x3d8)[0x7fd9422a6418]
 /lib/x86_64-linux-gnu/libpthread.so.0(+0xf0a0)[0x7fd941a540a0]
 /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x35)[0x7fd9402e5165]
 /lib/x86_64-linux-gnu/libc.so.6(abort+0x180)[0x7fd9402e83e0]
 /usr/sbin/mysqld(+0x5d6323)[0x7fd942459323]
 /usr/sbin/mysqld(+0x5dea90)[0x7fd942461a90]
 /usr/sbin/mysqld(+0x5e1bcd)[0x7fd942464bcd]
 /usr/sbin/mysqld(+0x56c5d6)[0x7fd9423ef5d6]
 /usr/sbin/mysqld(+0x550416)[0x7fd9423d3416]
 /usr/sbin/mysqld(_Z18mysql_rename_tableP10handlertonPKcS2_S2_S2_j+0x136)[0x7fd9
4220f6c6]
 /usr/sbin/mysqld(_Z17mysql_alter_tableP3THDPcS1_P24st_ha_create_informationP10T
ABLE_LISTP10Alter_infojP8st_orderb+0x2a0b)[0x7fd9422140fb]
 /usr/sbin/mysqld(_ZN21Alter_table_statement7executeEP3THD+0x486)[0x7fd9423a2ff6
]
 /usr/sbin/mysqld(_Z21mysql_execute_commandP3THD+0x1740)[0x7fd9421acaf0]
 /usr/sbin/mysqld(+0x32cd8e)[0x7fd9421afd8e]
 /usr/sbin/mysqld(_Z16dispatch_command19enum_server_commandP3THDPcj+0x1824)[0x7f
d9421b1e14]
 /usr/sbin/mysqld(_Z24do_handle_one_connectionP3THD+0x105)[0x7fd94224d385]
 /usr/sbin/mysqld(handle_one_connection+0x50)[0x7fd94224d4a0]
 /lib/x86_64-linux-gnu/libpthread.so.0(+0x6b50)[0x7fd941a4bb50]
 /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7fd94038f7bd]
 
 Trying to get some variables.
 Some pointers may be invalid and cause the dump to abort.
 Query (7fd945ba8440): ALTER TABLE contract ADD CONSTRAINT FK_contract_campaign_
estimate FOREIGN KEY (campaign_estimate) REFERENCES campaign_estimate (id)
 Connection ID (thread ID): 198
 Status: NOT_KILLED
 
 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.



Please let me know if you need any more information.

Thanks!


-- System Information:
Debian Release: 7.7
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'stable-updates'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.2.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)
Shell: /bin/sh linked to /bin/dash

Versions of packages mysql-server depends on:
ii  mysql-server-5.5  5.5.40-0+wheezy1

mysql-server recommends no packages.

mysql-server suggests no packages.

-- no debconf information



More information about the pkg-mysql-maint mailing list