mysqld: ma_pagecache.c:2103: find_block: Assertion `block->rlocks == 0' failed with Aria on INSERT/REPLACE
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MariaDB |
Fix Released
|
Undecided
|
Michael Widenius |
Bug Description
When executing the following RQG workload, Aria asserted as follows within 20 seconds:
mysqld: ma_pagecache.
# 2011-03-02T12:51:24 #5 0x00000035a6e340d5 in abort () from /lib64/libc.so.6
# 2011-03-02T12:51:24 #6 0x00000035a6e2b8b5 in __assert_fail () from /lib64/libc.so.6
# 2011-03-02T12:51:24 #7 0x00000000009d115e in find_block (pagecache=
# 2011-03-02T12:51:24 reg_req=1 '\001', page_st=
# 2011-03-02T12:51:24 #8 0x00000000009d52a8 in pagecache_read (pagecache=
# 2011-03-02T12:51:24 lock=PAGECACHE_
# 2011-03-02T12:51:24 #9 0x0000000000950543 in get_head_
# 2011-03-02T12:51:24 buff=0x7f4e1000e698 "\245\245\
# 2011-03-02T12:51:24 page_type=1, lock=PAGECACHE_
# 2011-03-02T12:51:24 #10 0x0000000000955448 in allocate_
# 2011-03-02T12:51:24 at ma_blockrec.c:3494
# 2011-03-02T12:51:24 #11 0x00000000009556e3 in _ma_write_
# 2011-03-02T12:51:24 #12 0x0000000000996d18 in maria_write (info=0x7f4e100
# 2011-03-02T12:51:24 #13 0x000000000093c246 in ha_maria::write_row (this=0x7f4e100
# 2011-03-02T12:51:24 #14 0x00000000007cddae in handler:
# 2011-03-02T12:51:24 #15 0x000000000072d580 in write_record (thd=0x7f4e1002
# 2011-03-02T12:51:24 #16 0x000000000072b4e6 in mysql_insert (thd=0x4b8c928, table_list=
# 2011-03-02T12:51:24 duplic=DUP_REPLACE, ignore=false) at sql_insert.cc:860
# 2011-03-02T12:51:24 #17 0x000000000068c8df in mysql_execute_
# 2011-03-02T12:51:24 #18 0x000000000069580d in mysql_parse (thd=0x4b8c928,
# 2011-03-02T12:51:24 rawbuf=
# 2011-03-02T12:51:24 at sql_parse.cc:6163
# 2011-03-02T12:51:24 #19 0x0000000000687600 in dispatch_command (command=COM_QUERY, thd=0x4b8c928,
# 2011-03-02T12:51:24 packet=0x4b8fbf9 "REPLACE INTO smf_log_boards (`id_msg`
# 2011-03-02T12:51:24 #20 0x0000000000686620 in do_command (thd=0x4b8c928) at sql_parse.cc:899
# 2011-03-02T12:51:24 #21 0x000000000068360f in handle_
RQG command line:
perl runall.pl \
--queries=1M \
--engine=Maria \
--mysqld=
--mysqld=
--mysqld=
--mysqld=
--mysqld=
--mysqld=
--reporters=
--duration=480 \
--threads=20 \
--rows=10 \
--mask-level=2 \
--mysqld=
--mysqld=
--mysqld=
--mysqld=
--mysqld=
--mysqld=
--mysqld=
--queries=100000000 \
--mask=62144 \
--seed=1299063053 \
--basedir=
--mysqld=
--grammar=
bzr version-info:
revision-id: <email address hidden>
date: 2011-02-25 17:45:53 +0200
build-date: 2011-03-02 18:18:38 +0200
revno: 3043
branch-nick: maria-5.1-merge
Changed in maria: | |
status: | New → In Progress |
Changed in maria: | |
status: | Fix Committed → Fix Released |
Another backtrace:
# 2011-03-03T03:38:29 #5 0x00000035a6e340d5 in abort () from /lib64/libc.so.6 0x1a38b60, file=0x7f095c12 91c8, pageno=4, init_hits_left=3, wrmode=1 '\001', block_is_copied=1 '\001', 0x7f09d41ea21c) at ma_pagecache.c:2103 0x1a38b60, file=0x7f095c12 91c8, pageno=4, level=3, buff=0x7f09d41ea390 "\001", type=PAGECACHE_ LSN_PAGE, LOCK_WRITE, page_link= 0x7f09d41ea330) at ma_pagecache.c:3383 f2db0, info=0x7f094c06 9578, keyinfo= 0x7f095c129788, pos=131072, lock=PAGECACHE_ LOCK_WRITE, 69578, comp_flag=0, key=0x0, page_pos=0, father_page=0x0, father_keypos=0x0, insert_last=0 '\000') 69578, comp_flag=402, key=0x7f09d41f2dc0, page_pos= 281502895234483 8, father_ page=0x7f09d41f c970, keypos= 0x20000 <Address 0x20000 out of bounds>, insert_last=9 '\t') at ma_write.c:711 real_write_ btree (info=0x7f094c0 69578, key=0x7f09d41fc970, root=0x7f09d41f c860, comp_flag=655425) at ma_write.c:512 write_btree_ with_log (info=0x7f094c0 69578, key=0x7f09d41fc970, root=0x7f095c12 9a38, comp_flag=655425) at ma_write.c:478 69578, key=0x7f09d41fc970) at ma_write.c:438 69578, key=0x7f09d41fc970) at ma_write.c:423 69578, record= 0x7f094c05e870 "\377\177\001c") at ma_write.c:178 5e6e0, buf=0x7f094c05e870 "\377\177\001c") at ha_maria.cc:1040 :ha_write_ row (this=0x7f094c0 5e6e0, buf=0x7f094c05e870 "\377\177\001c") at handler.cc:4728 e6e0, table=0x7f094c0 5e870, info=0x93c246) at sql_insert.cc:1630 0x7f0958007088, fields=..., values_list=..., update_fields=..., update_values=..., command (thd=0x49f1558) at sql_parse.cc:3279 0x7f0958006f10 "INSERT INTO smf_permissions (`id_group`,`...
# 2011-03-03T03:38:29 #6 0x00000035a6e2b8b5 in __assert_fail () from /lib64/libc.so.6
# 2011-03-03T03:38:29 #7 0x00000000009d115e in find_block (pagecache=
# 2011-03-03T03:38:29 reg_req=1 '\001', page_st=
# 2011-03-03T03:38:29 #8 0x00000000009d52a8 in pagecache_read (pagecache=
# 2011-03-03T03:38:29 lock=PAGECACHE_
# 2011-03-03T03:38:29 #9 0x0000000000993b9c in _ma_fetch_keypage (page=0x7f09d41
# 2011-03-03T03:38:29 level=3, buff=0x7f09d41ea390 "\001", return_buffer=0 '\000') at ma_page.c:109
# 2011-03-03T03:38:29 #10 0x0000000000998313 in w_search (info=0x7f094c0
# 2011-03-03T03:38:29 at ma_write.c:619
# 2011-03-03T03:38:29 #11 0x00000000009987b1 in w_search (info=0x7f094c0
# 2011-03-03T03:38:29 father_
# 2011-03-03T03:38:29 #12 0x0000000000997dd3 in _ma_ck_
# 2011-03-03T03:38:29 #13 0x0000000000997c76 in _ma_ck_
# 2011-03-03T03:38:29 #14 0x0000000000997acb in _ma_ck_write_btree (info=0x7f094c0
# 2011-03-03T03:38:29 #15 0x0000000000997a3f in _ma_ck_write (info=0x7f094c0
# 2011-03-03T03:38:29 #16 0x0000000000997247 in maria_write (info=0x7f094c0
# 2011-03-03T03:38:29 #17 0x000000000093c246 in ha_maria::write_row (this=0x7f094c0
# 2011-03-03T03:38:29 #18 0x00000000007cddae in handler:
# 2011-03-03T03:38:29 #19 0x000000000072d64f in write_record (thd=0x7f094c05
# 2011-03-03T03:38:29 #20 0x000000000072b4e6 in mysql_insert (thd=0x49f1558, table_list=
# 2011-03-03T03:38:29 duplic=DUP_ERROR, ignore=false) at sql_insert.cc:860
# 2011-03-03T03:38:29 #21 0x000000000068c8df in mysql_execute_
# 2011-03-03T03:38:29 #22 0x000000000069580d in mysql_parse (thd=0x49f1558,
# 2011-03-03T03:38:29 rawbuf=