Bug #45566 falcon_bug_22154-big fails with assertion in SerialLogControl::nextRecord
Submitted: 17 Jun 2009 17:46 Modified: 26 May 2010 17:45
Reporter: John Embretsen Email Updates:
Status: Unsupported Impact on me:
None 
Category:MySQL Server: Falcon storage engine Severity:S2 (Serious)
Version:6.0.12-alpha-bzr OS:Any (Unix)
Assigned to: Kevin Lewis CPU Architecture:Any
Tags: F_GOPHER
Triage: Triaged: D1 (Critical)

[17 Jun 2009 17:46] John Embretsen
Description:
The test falcon_bug_22154-big fails often with the following error:

falcon.falcon_bug_22154-big              [ fail ]
        Test ended at 2009-06-15 16:58:16

CURRENT_TEST: falcon.falcon_bug_22154-big
mysqltest: At line 50: query 'call pj9()' failed: 2013: Lost connection to MySQL server during query

MTR reports that the following assertion is being hit in SerialLogControl::nextRecord:

"*input >= (LOW_BYTE_FLAG | srlEnd) && *input < (LOW_BYTE_FLAG | srlMax)"

with the following stack trace:

Program terminated with signal 6, Aborted.
#0  0x0000003f1100b122 in pthread_kill () from /lib64/libpthread.so.0
#0  0x0000003f1100b122 in pthread_kill () from /lib64/libpthread.so.0
#1  0x0000000000c8a492 in my_write_core (sig=6) at stacktrace.c:309
#2  0x00000000006c4b2f in handle_segfault (sig=6) at mysqld.cc:2711
#3  <signal handler called>
#4  0x0000003f1100dd3d in raise () from /lib64/libpthread.so.0
#5  0x00000000009f6228 in Error::debugBreak () at Error.cpp:94
#6  0x00000000009f6359 in Error::error (string=0xe8a1d0 "assertion (%s) failed at line %d
in file %s\n") at Error.cpp:71
#7  0x00000000009f63f7 in Error::assertionFailed (text=0xe941d0 "*input >= (LOW_BYTE_FLAG
| srlEnd) && *input < (LOW_BYTE_FLAG | srlMax)",
    fileName=0xe93f48 "SerialLogControl.cpp", line=322) at Error.cpp:78
#8  0x0000000000a4ea9c in SerialLogControl::nextRecord (this=0x465fd600) at
SerialLogControl.cpp:322
#9  0x0000000000a5b2d0 in SerialLogTransaction::commit (this=0xee7fb30) at
SerialLogTransaction.cpp:88
#10 0x0000000000a5b3ba in SerialLogTransaction::doAction (this=0xee7fb30) at
SerialLogTransaction.cpp:158
#11 0x0000000000a98f25 in Gopher::gopherThread (this=0x2aaab0343ee0) at Gopher.cpp:71
#12 0x0000000000a9909f in Gopher::gopherThread (arg=0x2aaab0343ee0) at Gopher.cpp:37
#13 0x00000000009ae0ef in Thread::thread (this=0x2aaab034ded0) at Thread.cpp:167
#14 0x00000000009ae317 in Thread::thread (parameter=0x2aaab034ded0) at Thread.cpp:146
#15 0x0000003f110062e7 in start_thread () from /lib64/libpthread.so.0
#16 0x0000003f104ce3bd in clone () from /lib64/libc.so.6

Observed against up-to-date mysql-6.0-falcon-team branch at 2009-06-16, on both a 4-core Linux Red Hat host and an 8-core Solaris 10 x86_64 host.

This bug is tightly related to Bug#36631 (Assertion in SerialLogControl::nextRecord).

How to repeat:
Branch mysql-6.0-falcon-team or some other recent bzr branch containing Falcon code and tests.

cd mysql-test
perl mysql-test-run.pl --suite=falcon --big-test --suite-timeout=1440 --testcase-timeout=120 falcon_bug_22154-big