Details
-
Bug
-
Status: Closed (View Workflow)
-
Minor
-
Resolution: Fixed
-
5.5.28a
-
5.5.47-1
Description
Version: '5.5.19-debug-log'
120113 21:55:09 InnoDB: Assertion failure in thread 2810686320 in file rem0rec.ic line 973
InnoDB: Failing assertion: (ulint) index == offsets[3]
#2 0x084939f4 in my_write_core (sig=6) at /home/elenst/Percona-Server-5.5.19-src/mysys/stacktrace.c:423
#3 0x0818ea21 in handle_segfault (sig=6) at /home/elenst/Percona-Server-5.5.19-src/sql/mysqld.cc:2600
#4 <signal handler called>
#5 0xffffe430 in __kernel_vsyscall ()
#6 0xb75607af in raise () from /lib/libc.so.6
#7 0xb75620f0 in abort () from /lib/libc.so.6
#8 0x0864d173 in rec_offs_validate (rec=0xb68944ec "\200", index=0x919cd88, offsets=0xa78796d4)
at /home/elenst/Percona-Server-5.5.19-src/storage/innobase/include/rem0rec.ic:973
#9 0x0865681a in lock_rec_queue_validate (block=0xaeaf0968, rec=0xb68944ec "\200", index=0x919cd88, offsets=0xa78796d4)
at /home/elenst/Percona-Server-5.5.19-src/storage/innobase/lock/lock0lock.c:4753
#10 0x08656fe9 in lock_rec_validate_page (block=0xaeaf0968) at /home/elenst/Percona-Server-5.5.19-src/storage/innobase/lock/lock0lock.c:4962
#11 0x08657256 in lock_validate () at /home/elenst/Percona-Server-5.5.19-src/storage/innobase/lock/lock0lock.c:5068
#12 0x08656242 in lock_print_info_all_transactions (file=0x8e45708)
at /home/elenst/Percona-Server-5.5.19-src/storage/innobase/lock/lock0lock.c:4577
#13 0x0856f2d2 in srv_printf_innodb_monitor (file=0x8e45708, nowait=1, trx_start=0x0, trx_end=0x0)
at /home/elenst/Percona-Server-5.5.19-src/storage/innobase/srv/srv0srv.c:2243
#14 0x0856fc7e in srv_monitor_thread (arg=0x0) at /home/elenst/Percona-Server-5.5.19-src/storage/innobase/srv/srv0srv.c:2560
#15 0xb7838b25 in start_thread () from /lib/libpthread.so.0
RQG test (run on a debug version of the server):
perl runall.pl \
--queries=10M \
--duration=300 \
-mysqld=-loose-innodb-flush-log-at-trx-commit=0 \
--threads=2 \
--grammar=assert.yy \
--gendata=assert.zz \
--engine=InnoDB \
--basedir=<path to the debug server> \
--vardir=<path to vardir>
- assert.yy
query:
UPDATE _table SET _field_no_pk = _digit ;
- end of assert.yy
- assert.zz
$tables = {
partitions => [ 'KEY (pk) PARTITIONS 2' ],
rows => [ 10, 100 ]
};
$fields = {
types => [ 'int' ],
indexes => [ 'key' ],
charsets => ['latin1']
};
$data = {
numbers => [ 'digit' ],
}
- end of assert.zz