Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.5.4, 10.5.3
Description
USE test;
|
CREATE TABLE t(c INT,KEY(c));
|
INSERT INTO t VALUES(0);
|
INSERT INTO t VALUES(0);
|
set global innodb_file_per_table=OFF;
|
set global innodb_limit_optimistic_insert_debug=2;
|
set global innodb_change_buffering_debug=1;
|
CREATE TABLE t2(a INT) PARTITION BY HASH (a) PARTITIONS 13;
|
DROP TABLE t2;
|
INSERT INTO t VALUES(0);
|
ALTER TABLE t CHANGE COLUMN c c BINARY(1);
|
Leads to:
10.5.4 8569dac1ec9f6853a0b2f3ea9bcbda67644ead24 |
mysqld: /test/10.5_dbg/storage/innobase/buf/buf0buf.cc:3871: buf_block_t* buf_page_get_low(page_id_t, ulint, ulint, buf_block_t*, ulint, const char*, unsigned int, mtr_t*, dberr_t*, bool): Assertion `mode == 16 || mode == 12 || fix_block->page.status != buf_page_t::FREED' failed.
|
10.5.4 8569dac1ec9f6853a0b2f3ea9bcbda67644ead24 |
Core was generated by `/test/MD260520-mariadb-10.5.4-linux-x86_64-dbg/bin/mysqld --no-defaults --core-'.
|
Program terminated with signal SIGABRT, Aborted.
|
#0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6)
|
at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
|
[Current thread is 1 (Thread 0x145a33356700 (LWP 758203))]
|
(gdb) bt
|
#0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
|
#1 0x0000563929d44d7a in my_write_core (sig=sig@entry=6) at /test/10.5_dbg/mysys/stacktrace.c:518
|
#2 0x00005639294ea385 in handle_fatal_signal (sig=6) at /test/10.5_dbg/sql/signal_handler.cc:330
|
#3 <signal handler called>
|
#4 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
|
#5 0x0000145a31a9a801 in __GI_abort () at abort.c:79
|
#6 0x0000145a31a8a39a in __assert_fail_base (fmt=0x145a31c117d8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x56392a1e1e00 "mode == 16 || mode == 12 || fix_block->page.status != buf_page_t::FREED", file=file@entry=0x56392a1e08b8 "/test/10.5_dbg/storage/innobase/buf/buf0buf.cc", line=line@entry=3871, function=function@entry=0x56392a1e38e0 <buf_page_get_low(page_id_t, unsigned long, unsigned long, buf_block_t*, unsigned long, char const*, unsigned int, mtr_t*, dberr_t*, bool)::__PRETTY_FUNCTION__> "buf_block_t* buf_page_get_low(page_id_t, ulint, ulint, buf_block_t*, ulint, const char*, unsigned int, mtr_t*, dberr_t*, bool)") at assert.c:92
|
#7 0x0000145a31a8a412 in __GI___assert_fail (assertion=assertion@entry=0x56392a1e1e00 "mode == 16 || mode == 12 || fix_block->page.status != buf_page_t::FREED", file=file@entry=0x56392a1e08b8 "/test/10.5_dbg/storage/innobase/buf/buf0buf.cc", line=line@entry=3871, function=function@entry=0x56392a1e38e0 <buf_page_get_low(page_id_t, unsigned long, unsigned long, buf_block_t*, unsigned long, char const*, unsigned int, mtr_t*, dberr_t*, bool)::__PRETTY_FUNCTION__> "buf_block_t* buf_page_get_low(page_id_t, ulint, ulint, buf_block_t*, ulint, const char*, unsigned int, mtr_t*, dberr_t*, bool)") at assert.c:101
|
#8 0x0000563929b79a86 in buf_page_get_low (page_id=..., page_id@entry=..., zip_size=zip_size@entry=0, rw_latch=rw_latch@entry=2, guess=<optimized out>, guess@entry=0x0, mode=mode@entry=10, file=file@entry=0x56392a145d70 "/test/10.5_dbg/storage/innobase/ibuf/ibuf0ibuf.cc", line=<optimized out>, mtr=<optimized out>, err=<optimized out>, allow_ibuf_merge=<optimized out>) at /test/10.5_dbg/storage/innobase/buf/buf0buf.cc:3871
|
#9 0x0000563929b79aec in buf_page_get_gen (page_id=..., zip_size=zip_size@entry=0, rw_latch=rw_latch@entry=2, guess=guess@entry=0x0, mode=mode@entry=10, file=file@entry=0x56392a145d70 "/test/10.5_dbg/storage/innobase/ibuf/ibuf0ibuf.cc", line=1967, mtr=0x145a33350860, err=0x0, allow_ibuf_merge=false) at /test/10.5_dbg/storage/innobase/buf/buf0buf.cc:4010
|
#10 0x000056392991cbd5 in ibuf_remove_free_page () at /test/10.5_dbg/storage/innobase/ibuf/ibuf0ibuf.cc:1967
|
#11 0x000056392991cea8 in ibuf_free_excess_pages () at /test/10.5_dbg/storage/innobase/ibuf/ibuf0ibuf.cc:2018
|
#12 0x0000563929a0344c in row_ins_sec_index_entry (index=index@entry=0x145a110bf098, entry=entry@entry=0x145a11086030, thr=thr@entry=0x145a1117a7b8, check_foreign=check_foreign@entry=true) at /test/10.5_dbg/storage/innobase/row/row0ins.cc:3278
|
#13 0x0000563929a04c1b in row_ins_index_entry (thr=0x145a1117a7b8, entry=0x145a11086030, index=0x145a110bf098) at /test/10.5_dbg/storage/innobase/row/row0ins.cc:3317
|
#14 row_ins_index_entry_step (thr=0x145a1117a7b8, node=0x145a1117a590) at /test/10.5_dbg/storage/innobase/row/row0ins.cc:3484
|
#15 row_ins (thr=0x145a1117a7b8, node=0x145a1117a590) at /test/10.5_dbg/storage/innobase/row/row0ins.cc:3621
|
#16 row_ins_step (thr=thr@entry=0x145a1117a7b8) at /test/10.5_dbg/storage/innobase/row/row0ins.cc:3760
|
#17 0x0000563929a240c1 in row_insert_for_mysql (mysql_rec=mysql_rec@entry=0x145a1105a2a8 "\375\060", '\245' <repeats 14 times>, "Ȣ\005\021Z\024", prebuilt=0x145a1117a098, ins_mode=<optimized out>) at /test/10.5_dbg/storage/innobase/row/row0mysql.cc:1462
|
#18 0x00005639298b9668 in ha_innobase::write_row (this=0x145a11143aa0, record=0x145a1105a2a8 "\375\060", '\245' <repeats 14 times>, "Ȣ\005\021Z\024") at /test/10.5_dbg/storage/innobase/handler/ha_innodb.cc:7713
|
#19 0x00005639294fe142 in handler::ha_write_row (this=0x145a11143aa0, buf=0x145a1105a2a8 "\375\060", '\245' <repeats 14 times>, "Ȣ\005\021Z\024") at /test/10.5_dbg/sql/handler.cc:6986
|
#20 0x0000563929317f23 in copy_data_between_tables (alter_ctx=0x145a333536b0, keys_onoff=<optimized out>, deleted=<synthetic pointer>, copied=<synthetic pointer>, order=<optimized out>, order_num=0, ignore=false, create=..., to=0x145a1117c088, from=0x145a110fc088, thd=0x145a11015088) at /test/10.5_dbg/sql/sql_table.cc:11207
|
#21 mysql_alter_table (thd=thd@entry=0x145a11015088, new_db=new_db@entry=0x145a11019948, new_name=new_name@entry=0x145a11019d50, create_info=create_info@entry=0x145a333542a0, table_list=<optimized out>, table_list@entry=0x145a110741a0, alter_info=alter_info@entry=0x145a333541d0, order_num=0, order=0x0, ignore=false, if_exists=false) at /test/10.5_dbg/sql/sql_table.cc:10586
|
#22 0x000056392939a572 in Sql_cmd_alter_table::execute (this=<optimized out>, thd=0x145a11015088) at /test/10.5_dbg/sql/sql_alter.cc:532
|
#23 0x000056392924573b in mysql_execute_command (thd=thd@entry=0x145a11015088) at /test/10.5_dbg/sql/sql_parse.cc:5950
|
#24 0x000056392924d02e in mysql_parse (thd=thd@entry=0x145a11015088, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x145a333553d0, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:7991
|
#25 0x0000563929239b42 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x145a11015088, packet=packet@entry=0x145a11067089 "ALTER TABLE t CHANGE COLUMN c c BINARY(1)", packet_length=packet_length@entry=41, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:1874
|
#26 0x000056392923831c in do_command (thd=0x145a11015088) at /test/10.5_dbg/sql/sql_parse.cc:1355
|
#27 0x000056392939273f in do_handle_one_connection (connect=<optimized out>, connect@entry=0x145a128453a8, put_in_cache=put_in_cache@entry=true) at /test/10.5_dbg/sql/sql_connect.cc:1411
|
#28 0x0000563929392e5b in handle_one_connection (arg=arg@entry=0x145a128453a8) at /test/10.5_dbg/sql/sql_connect.cc:1313
|
#29 0x00005639297f214e in pfs_spawn_thread (arg=0x145a31045888) at /test/10.5_dbg/storage/perfschema/pfs.cc:2201
|
#30 0x0000145a3277d6db in start_thread (arg=0x145a33356700) at pthread_create.c:463
|
#31 0x0000145a31b7b88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
|
Bug confirmed present in:
MariaDB: 10.5.3 (dbg), 10.5.4 (dbg)
Bug confirmed not present in:
MariaDB: 10.1.46 (dbg), 10.1.46 (opt), 10.2.33 (dbg), 10.2.33 (opt), 10.3.24 (dbg), 10.3.24 (opt), 10.4.14 (dbg), 10.4.14 (opt), 10.5.3 (opt), 10.5.4 (opt)
MySQL: 5.5.62 (dbg), 5.5.62 (opt), 5.6.47 (dbg), 5.6.47 (opt), 5.7.29 (dbg), 5.7.29 (opt), 8.0.19 (dbg), 8.0.19 (opt)
Attachments
Issue Links
- is caused by
-
MDEV-15528 Avoid writing freed InnoDB pages
- Closed
- relates to
-
MDEV-22495 Assertion mode == 16 || mode == 12 || fix_block->page.status != buf_page_t::FREED failed in ibuf_read_merge_pages()
- Closed
-
MDEV-23469 Assertion `size == space->size' failed in buf_read_ahead_random
- Closed