Bug #54142 InnoDB: Assertion failure in file row0mysql.c line 1534
Submitted: 1 Jun 2010 13:18 Modified: 1 Jun 2010 13:35
Reporter: b before Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server: InnoDB storage engine Severity:S1 (Critical)
Version:5.1.36 OS:Linux (openSuSe)
Assigned to: CPU Architecture:Any
Tags: assertion failure

[1 Jun 2010 13:18] b before
Description:
100601 16:43:33  InnoDB: Started; log sequence number 0 81234679
100601 16:43:33 [Note] Event Scheduler: Loaded 0 events
100601 16:43:33 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.1.36-log'  socket: '/var/run/mysql/mysql.sock'  port: 3306  SUSE MySQL RPM
100601 16:48:43  InnoDB: Assertion failure in thread 2994867056 in file ../../../storage/innobase/row/row0mysql.c line 1534
InnoDB: Failing assertion: index->type & DICT_CLUSTERED
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.1/en/forcing-recovery.html
InnoDB: about forcing recovery.
100601 16:48:43 - 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=262144
max_used_connections=1
max_threads=151
threads_connected=1
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 133307 K
bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

thd: 0x8c686a8
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 = 0xb282036c thread_stack 0x30000
/usr/sbin/mysqld(my_print_stacktrace+0x29) [0x85a8ef9]
/usr/sbin/mysqld(handle_segfault+0x494) [0x8241014]
[0xffffe400]
[0xffffe424]
/lib/libc.so.6(gsignal+0x4f) [0xb73b70cf]
/lib/libc.so.6(abort+0x187) [0xb73b89e7]
/usr/sbin/mysqld(row_unlock_for_mysql+0x385) [0x8471825]
/usr/sbin/mysqld(row_search_for_mysql+0x17e9) [0x847f889]
/usr/sbin/mysqld(ha_innobase::index_read(unsigned char*, unsigned char const*, unsigned int, ha_rkey_function)+0x169) [0x83f1be9]
/usr/sbin/mysqld(handler::index_read_map(unsigned char*, unsigned char const*, unsigned long, ha_rkey_function)+0x66) [0x832f9e6]
/usr/sbin/mysqld(handler::read_range_first(st_key_range const*, st_key_range const*, bool, bool)+0xc0) [0x8329b30]
/usr/sbin/mysqld(handler::read_multi_range_first(st_key_multi_range**, st_key_multi_range*, unsigned int, bool, st_handler_buffer*)+0xc7) [0x8329c57]
/usr/sbin/mysqld(QUICK_RANGE_SELECT::get_next()+0x164) [0x830fbf4]
/usr/sbin/mysqld [0x83247c5]
/usr/sbin/mysqld(mysql_delete(THD*, TABLE_LIST*, Item*, st_sql_list*, unsigned long, unsigned long long, bool)+0xa03) [0x82d5ef3]
/usr/sbin/mysqld(mysql_execute_command(THD*)+0x47da) [0x8252c6a]
/usr/sbin/mysqld(mysql_parse(THD*, char const*, unsigned int, char const**)+0x248) [0x8255978]
/usr/sbin/mysqld(dispatch_command(enum_server_command, THD*, char*, unsigned int)+0xbb3) [0x8256a23]
/usr/sbin/mysqld(do_command(THD*)+0x100) [0x82575f0]
/usr/sbin/mysqld(handle_one_connection+0x271) [0x82480b1]
/lib/libpthread.so.0 [0xb78496e5]
/lib/libpthread.so.0 [0xb7849600]
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort...
thd->query at 0x8cae300 = delete from `blog_message`
where `root`='7219' and `parent`='7241'
thd->thread_id=4
thd->killed=NOT_KILLED

How to repeat:
CREATE TABLE `blog_message` (
  `entry` int(11) NOT NULL AUTO_INCREMENT,
  `root` int(11) NOT NULL,
  `parent` int(11) NOT NULL,
  PRIMARY KEY (`entry`),
  KEY `root_parent` (`root`,`parent`)
) ENGINE=InnoDB

5-10 times repeat 
delete from blog_message where entry=?

delete from `blog_message` where `root`='?' and `parent`='?'

mysqld crushed sometime
[1 Jun 2010 13:35] MySQL Verification Team
duplicate of bug #45357
please upgrade to 5.1.47