mysqld: ma_write.c:2065: _ma_log_split: Assertion `offset <= org_length - diff' failed.

Bug #624567 reported by Philip Stoev
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MariaDB
Fix Released
High
Michael Widenius

Bug Description

When executing a DML workload involving many indexes, Aria asserted as follows:

mysqld: ma_write.c:2065: _ma_log_split: Assertion `offset <= org_length - diff' failed.

backtrace:

#2 0x000000000066ccc7 in handle_segfault (sig=6) at mysqld.cc:2698
#3 <signal handler called>
#4 0x000000307b6329c5 in raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#5 0x000000307b6341a5 in abort () at abort.c:92
#6 0x000000307b62b945 in __assert_fail (
    assertion=0xd5a359 "offset <= org_length - diff",
    file=<value optimized out>, line=2065, function=<value optimized out>)
    at assert.c:81
#7 0x000000000099fe31 in _ma_log_split (ma_page=0x7ff4fc04d660,
    org_length=3721, new_length=1701, key_pos=0x7ff4fc04c144 "\001\251",
    key_length=438, move_length=435, prefix_or_suffix=KEY_OP_NONE, data=0x0,
    data_length=0, changed_length=0) at ma_write.c:2065
#8 0x000000000099cb58 in _ma_split_page (info=0x45bd8c8, key=0x7ff4fc050210,
    split_page=0x7ff4fc04d660, org_split_length=3721,
    inserted_key_pos=0x7ff4fc04c144 "\001\251", changed_length=438,
    move_length=435, key_buff=0x7ff4fc04d6a0 "\001(",
    insert_last_key=0 '\000') at ma_write.c:1048
#9 0x000000000099c44c in _ma_insert (info=0x45bd8c8, key=0x7ff4fc050210,
    anc_page=0x7ff4fc04d660, key_pos=0x7ff4fc04c144 "\001\251",
    key_buff=0x7ff4fc04d6a0 "\001(", father_page=0x7ff4fc04f5f0,
    father_key_pos=0x7ff4fc04dbf7 "", insert_last=0 '\000') at ma_write.c:914
#10 0x000000000099b99f in w_search (info=0x45bd8c8, comp_flag=0, key=0x75,
    page_pos=117, father_page=0x7ff45c013090,
    father_keypos=0x7ff4fc04b758 "\254\253\231", insert_last=48 '0')
    at ma_write.c:711
#11 0x000000000099b94b in w_search (info=0x45bd8c8, comp_flag=395,
    key=0x7ff4fc04d670, page_pos=2814766959140278,
    father_page=0x7ff4fc050210,
    father_keypos=0x5000 <Address 0x5000 out of bounds>,
    insert_last=-12 '\364') at ma_write.c:708
#12 0x000000000099afe4 in _ma_ck_real_write_btree (info=0x45bd8c8,
    key=0x7ff4fc050210, root=0x7ff4fc050100, comp_flag=655364)
    at ma_write.c:514
#13 0x000000000099ae8b in _ma_ck_write_btree_with_log (info=0x45bd8c8,
    key=0x7ff4fc050210, root=0x7ff478075948, comp_flag=655364)
    at ma_write.c:480
#14 0x000000000099ace6 in _ma_ck_write_btree (info=0x45bd8c8,
    key=0x7ff4fc050210) at ma_write.c:440
#15 0x000000000099ac5e in _ma_ck_write (info=0x45bd8c8, key=0x7ff4fc050210)
    at ma_write.c:425
#16 0x000000000099a489 in maria_write (info=0x45bd8c8,
    record=0x45bb010 "\357\372\377") at ma_write.c:180
#17 0x0000000000951f68 in ha_maria::write_row (this=0x461c370,
    buf=0x45bb010 "\357\372\377") at ha_maria.cc:1037
#18 0x00000000007c0f22 in handler::ha_write_row (this=0x461c370,
    buf=0x45bb010 "\357\372\377") at handler.cc:4655
#19 0x0000000000722992 in write_record (thd=0x461c370, table=0x45bb010,
    info=0x951f68) at sql_insert.cc:1632
#20 0x0000000000720821 in mysql_insert (thd=0x451c108,
    table_list=0x7ff45c014be0, fields=..., values_list=...,
    update_fields=..., update_values=..., duplic=DUP_ERROR, ignore=false)
    at sql_insert.cc:860
#21 0x000000000068353d in mysql_execute_command (thd=0x451c108)
    at sql_parse.cc:3287
#22 0x000000000068beca in mysql_parse (thd=0x451c108,
    inBuf=0x7ff45c014910 "INSERT INTO `table100_maria_int_autoinc` ( `col_char_255_ucs2_key` , `col_enum_ucs2` , `col_char_255_utf8` ) VALUES ( REPEAT( _LATIN1 0x254 , 106 ) , REPEAT( _UCS2 0xB8 , 239 ) , CONVERT( 'have' USING UCS2 ) )", length=209, found_semicolon=0x7ff4fc051c70) at sql_parse.cc:6081
#23 0x000000000067e0bf in dispatch_command (command=COM_QUERY, thd=0x451c108,
    packet=0x451f399 "INSERT INTO `table100_maria_int_autoinc` ( `col_char_255_ucs2_key` , `col_enum_ucs2` , `col_char_255_utf8` ) VALUES ( REPEAT( _LATIN1 0x254 , 106 ) , REPEAT( _UCS2 0xB8 , 239 ) , CONVERT( 'have' USING UCS2 ) )",
    packet_length=209) at sql_parse.cc:1268
#24 0x000000000067d0d6 in do_command (thd=0x451c108) at sql_parse.cc:894
#25 0x000000000067a101 in handle_one_connection (arg=0x451c108)
    at sql_connect.cc:1138
#26 0x000000307ba07761 in start_thread (arg=0x7ff4fc052710)
    at pthread_create.c:301

bzr version-info:

revision-id: <email address hidden>
date: 2010-08-25 01:43:26 +0300
build-date: 2010-08-26 13:41:34 +0300
revno: 2917
branch-nick: 5.1

rqg command line:

/home/buildbot/randgen/runall.pl \
--queries=1M \
--engine=Maria \
--mysqld=--log-output=file \
--reporters=ErrorLog,Backtrace,Recovery,Shutdown \
--duration=240 \
--threads=20 \
--rows=1000 \
--mask-level=0 \
--mysqld=--loose-maria-group-commit=hard \
--mysqld=--loose-maria_group_commit_interval=100 \
--mysqld=--maria-checkpoint-interval=0 \
--mysqld=--maria-block-size=4K \
--grammar=conf/engines/many_indexes.yy \
--gendata=conf/engines/many_indexes.zz \
--mask=23736 \
--queries=100000000 \
--basedir=. \
--seed=1282818570

Revision history for this message
Philip Stoev (pstoev-askmonty) wrote :
Changed in maria:
importance: Undecided → High
assignee: nobody → Michael Widenius (monty)
Michael Widenius (monty)
Changed in maria:
status: New → Fix Committed
Michael Widenius (monty)
Changed in maria:
milestone: none → 5.1
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.