Details
Description
Assertion `block->type == PAGECACHE_EMPTY_PAGE || block->type == type || type == PAGECACHE_LSN_PAGE || type == PAGECACHE_READ_UNKNOWN_PAGE || block->type == PAGECACHE_READ_UNKNOWN_PAGE' failed
#6 0x00007f51dc202d4d in __GI___assert_fail (assertion=0xdfd000 "block->type == PAGECACHE_EMPTY_PAGE || block->type == type || type == PAGECACHE_LSN_PAGE || type == PAGECACHE_READ_UNKNOWN_PAGE || block->type == PAGECACHE_READ_UNKNOWN_PAGE", file=<optimized out>, line=3417, function=<optimized out>) at assert.c:81 #7 0x000000000097e8cb in pagecache_read (pagecache=0x1d249e0, file=0x2493af8, pageno=1, level=0, buff=0x24d6170 "\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245"..., type=PAGECACHE_PLAIN_PAGE, lock=PAGECACHE_LOCK_LEFT_UNLOCKED, page_link=0x7f51d18e42d8) at storage/maria/ma_pagecache.c:3413 #8 0x00000000009beed1 in _ma_scan_block_record (info=0x24936f0, record=0x24911d0 "\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\360\021I\002", record_pos=0, skip_deleted=1 '\001') at storage/maria/ma_blockrec.c:5413 #9 0x00000000009ababd in maria_scan (info=0x24936f0, record=0x24911d0 "\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\360\021I\002") at storage/maria/ma_scan.c:54 #10 0x0000000000955e1e in ha_maria::rnd_next (this=0x2491608, buf=0x24911d0 "\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\360\021I\002") at storage/maria/ha_maria.cc:2372 #11 0x00000000005a73b4 in handler::ha_rnd_next (this=0x2491608, buf=0x24911d0 "\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\245\360\021I\002") at sql/sql_class.h:4263 #12 0x0000000000c7c05a in ha_partition::copy_partitions (this=0x2490b18, copied=0x7f51d18e4ba8, deleted=0x7f51d18e4bb0) at sql/ha_partition.cc:1768 #13 0x0000000000c7bec2 in ha_partition::change_partitions (this=0x2490b18, create_info=0x7f51d18e6560, path=0x7f51d18e4950 "./test/t", copied=0x7f51d18e4ba8, deleted=0x7f51d18e4bb0, pack_frm_data=0x0, pack_frm_len=0) at sql/ha_partition.cc:1712 #14 0x00000000007c693a in handler::ha_change_partitions (this=0x2490b18, create_info=0x7f51d18e6560, path=0x7f51d18e4950 "./test/t", copied=0x7f51d18e4ba8, deleted=0x7f51d18e4bb0, pack_frm_data=0x0, pack_frm_len=0) at sql/handler.cc:3705 #15 0x000000000091ce4d in mysql_change_partitions (lpt=0x7f51d18e4ba0) at sql/sql_partition.cc:5511 #16 0x000000000091fc11 in fast_alter_partition_table (thd=0x22ff280, table=0x244ddc0, alter_info=0x7f51d18e6660, create_info=0x7f51d18e6560, table_list=0x2401bc8, db=0x2402190 "test", table_name=0x2401b90 "t", fast_alter_table=0x248de60) at sql/sql_partition.cc:6820 #17 0x00000000006abcc4 in mysql_alter_table (thd=0x22ff280, new_db=0x2402190 "test", new_name=0x2401b90 "t", create_info=0x7f51d18e6560, table_list=0x2401bc8, alter_info=0x7f51d18e6660, order_num=0, order=0x0, ignore=false, require_online=false) at sql/sql_table.cc:6521 #18 0x00000000009331b6 in Alter_table_statement::execute (this=0x24023b0, thd=0x22ff280) at sql/sql_alter.cc:106 #19 0x00000000006135aa in mysql_execute_command (thd=0x22ff280) at sql/sql_parse.cc:4459 #20 0x000000000061674d in mysql_parse (thd=0x22ff280, rawbuf=0x2401ac8 "ALTER TABLE t ADD PARTITION PARTITIONS 2", length=40, parser_state=0x7f51d18e7500) at sql/sql_parse.cc:5736 #21 0x0000000000609fc3 in dispatch_command (command=COM_QUERY, thd=0x22ff280, packet=0x23fa2b1 "ALTER TABLE t ADD PARTITION PARTITIONS 2", packet_length=40) at sql/sql_parse.cc:1055 #22 0x000000000060927a in do_command (thd=0x22ff280) at sql/sql_parse.cc:794 #23 0x000000000070a69f in do_handle_one_connection (thd_arg=0x22ff280) at sql/sql_connect.cc:1253 #24 0x000000000070a08a in handle_one_connection (arg=0x22ff280) at sql/sql_connect.cc:1168 #25 0x0000000000bffcbf in pfs_spawn_thread (arg=0x2482c50) at storage/perfschema/pfs.cc:1015 #26 0x00007f51dcf44efc in start_thread (arg=0x7f51d18e8700) at pthread_create.c:304 #27 0x00007f51dc2b759d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
bzr version-info
revision-id: igor@askmonty.org-20120624161011-v9cilsq09qv4a2li date: 2012-06-24 09:10:11 -0700 build-date: 2012-06-25 02:28:39 +0400 revno: 3458
Also reproducible on maria/5.1 revno 3151, maria/5.2 revno 3162, maria/5.3 revno 3550.
Test case:
--source include/have_partition.inc CREATE TABLE t ( i INT ) ENGINE=Aria PARTITION BY HASH(i) PARTITIONS 2; INSERT INTO t VALUES (1),(2),(2),(3),(4); ALTER TABLE t ADD PARTITION PARTITIONS 2;
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
This was a bug in call order to handler methods when doing CHANGE_PARTITION.
As this should only crash DBUG binaries and not affect production binaries, I am only fixing this in 5.5