Details
-
Bug
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
10.11, 11.4, 12.0(EOL), 12.1
-
Can result in hang or crash
Description
# mysqld options required for replay: --log-bin |
set sql_mode=''; |
CREATE TABLE t (c POINT NOT NULL,SPATIAL (c)); |
INSERT INTO t VALUES (GEOMFROMTEXT ('POINT(1 312435220)')); |
INSERT INTO t VALUES (ST_GEOMFROMTEXT ('POINT(1 526818004)')); |
INSERT INTO t SELECT * FROM t; |
SET GLOBAL innodb_limit_optimistic_insert_debug=4; |
INSERT INTO t SELECT * FROM t; |
SET GLOBAL innodb_limit_optimistic_insert_debug=2; |
SET GLOBAL profiling=1; |
INSERT INTO t SELECT * FROM t; |
Leads to:
CS 12.1.0 6a2afb42ba86188ccda0972f9c2df363f34e10a0 (Debug, Clang) Build 09/06/2025 |
mariadbd: /test/12.1_dbg/storage/innobase/gis/gis0sea.cc:535: void rtr_compare_cursor_rec(const rec_t *, dict_index_t *, ulint): Assertion `btr_node_ptr_get_child_page_no(rec, offsets) == page_no' failed.
|
CS 12.1.0 6a2afb42ba86188ccda0972f9c2df363f34e10a0 (Debug, Clang) Build 09/06/2025 |
Core was generated by `/test/MD090625-mariadb-12.1.0-linux-x86_64-dbg/bin/mariadbd --no-defaults --max'.
|
Program terminated with signal SIGABRT, Aborted.
|
Download failed: Invalid argument. Continuing without source file ./nptl/./nptl/pthread_kill.c.
|
#0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
|
|
[Current thread is 1 (LWP 3534627)]
|
(gdb) bt
|
#0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
|
#1 __pthread_kill_internal (signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:78
|
#2 __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6)at ./nptl/pthread_kill.c:89
|
#3 0x000077ec15a4527e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
|
#4 0x000077ec15a288ff in __GI_abort () at ./stdlib/abort.c:79
|
#5 0x000077ec15a2881b in __assert_fail_base (fmt=0x77ec15bd01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x624809d70c8e "btr_node_ptr_get_child_page_no(rec, offsets) == page_no", file=file@entry=0x624809d6fe17 "/test/12.1_dbg/storage/innobase/gis/gis0sea.cc", line=line@entry=535, function=function@entry=0x624809d70cc6 "void rtr_compare_cursor_rec(const rec_t *, dict_index_t *, ulint)") at ./assert/assert.c:96
|
#6 0x000077ec15a3b517 in __assert_fail (assertion=0x624809d70c8e "btr_node_ptr_get_child_page_no(rec, offsets) == page_no", file=0x624809d6fe17 "/test/12.1_dbg/storage/innobase/gis/gis0sea.cc", line=535, function=0x624809d70cc6 "void rtr_compare_cursor_rec(const rec_t *, dict_index_t *, ulint)") at ./assert/assert.c:105
|
#7 0x0000624809856ed5 in rtr_compare_cursor_rec (rec=0x77ebe04dc07e "", index=0x77eaec02c1e8, page_no=18)at /test/12.1_dbg/storage/innobase/gis/gis0sea.cc:535
|
#8 0x0000624809856233 in rtr_get_father_node (level=2, tuple=0x77eaec09a4b8, sea_cur=0x77ebed1b3f80, btr_cur=0x77ebed1b3a90, thr=0x0, page_no=18, mtr=0x77ebed1b48f8) at /test/12.1_dbg/storage/innobase/gis/gis0sea.cc:1198
|
#9 0x0000624809852ec5 in rtr_page_get_father_node_ptr (offsets=0x77eaec09a498, heap=0x77eaec09a420, sea_cur=0x77ebed1b3f80, cursor=0x77ebed1b3a90, thr=0x0, mtr=0x77ebed1b48f8)at /test/12.1_dbg/storage/innobase/gis/gis0sea.cc:1254
|
#10 0x0000624809852bda in rtr_page_get_father_block (offsets=0x0, heap=0x77eaec09a420, sea_cur=0x77ebed1b3f80, cursor=0x77ebed1b3a90, thr=0x0, mtr=0x77ebed1b48f8)at /test/12.1_dbg/storage/innobase/gis/gis0sea.cc:1296
|
#11 0x0000624809845fa0 in rtr_adjust_upper_level (sea_cur=0x77ebed1b3f80, flags=7, block=0x77ebe000f480, new_block=0x77ebe000f6c0, mbr=0x77ebed1b3cc0, new_mbr=0x77ebed1b3ca0, thr=0x0, mtr=0x77ebed1b48f8)at /test/12.1_dbg/storage/innobase/gis/gis0rtree.cc:585
|
#12 0x0000624809843f09 in rtr_page_split_and_insert (flags=7, cursor=0x77ebed1b3f80, offsets=0x77ebed1b3f78, heap=0x77ebed1b3f00, tuple=0x77eaec0999f0, n_ext=0, mtr=0x77ebed1b48f8, err=0x77ebed1b3e1c, thr=0x0) at /test/12.1_dbg/storage/innobase/gis/gis0rtree.cc:1157
|
#13 0x0000624809706f18 in btr_cur_pessimistic_insert (flags=7, cursor=0x77ebed1b3f80, offsets=0x77ebed1b3f78, heap=0x77ebed1b3f00, entry=0x77eaec0999f0, rec=0x77ebed1b3f28, big_rec=0x77ebed1b3f30, n_ext=0, thr=0x0, mtr=0x77ebed1b48f8)at /test/12.1_dbg/storage/innobase/btr/btr0cur.cc:2649
|
#14 0x000062480984622b in rtr_adjust_upper_level (sea_cur=0x77ebed1b4878, flags=0, block=0x77ebe000edc0, new_block=0x77ebe000f3c0, mbr=0x77ebed1b41b0, new_mbr=0x77ebed1b4190, thr=0x77eaec042c20, mtr=0x77ebed1b48f8) at /test/12.1_dbg/storage/innobase/gis/gis0rtree.cc:637
|
#15 0x0000624809843f09 in rtr_page_split_and_insert (flags=0, cursor=0x77ebed1b4878, offsets=0x77ebed1b4608, heap=0x77ebed1b48d0, tuple=0x77eaec02b8a8, n_ext=0, mtr=0x77ebed1b48f8, err=0x77ebed1b430c, thr=0x77eaec042c20)at /test/12.1_dbg/storage/innobase/gis/gis0rtree.cc:1157
|
#16 0x0000624809706f18 in btr_cur_pessimistic_insert (flags=0, cursor=0x77ebed1b4878, offsets=0x77ebed1b4608, heap=0x77ebed1b48d0, entry=0x77eaec02b8a8, rec=0x77ebed1b44c0, big_rec=0x77ebed1b44b8, n_ext=0, thr=0x77eaec042c20, mtr=0x77ebed1b48f8)at /test/12.1_dbg/storage/innobase/btr/btr0cur.cc:2649
|
#17 0x00006248095c1d91 in row_ins_sec_index_entry_low (flags=0, mode=BTR_INSERT_TREE, index=0x77eaec02c1e8, offsets_heap=0x77eaec097e10, heap=0x77eaec098290, entry=0x77eaec02b8a8, trx_id=0, thr=0x77eaec042c20)at /test/12.1_dbg/storage/innobase/row/row0ins.cc:3218
|
#18 0x00006248095c3993 in row_ins_sec_index_entry (index=0x77eaec02c1e8, entry=0x77eaec02b8a8, thr=0x77eaec042c20, check_foreign=true)at /test/12.1_dbg/storage/innobase/row/row0ins.cc:3404
|
#19 0x00006248095cbd3e in row_ins_index_entry (index=0x77eaec02c1e8, entry=0x77eaec02b8a8, thr=0x77eaec042c20)at /test/12.1_dbg/storage/innobase/row/row0ins.cc:3457
|
#20 0x00006248095cae6e in row_ins_index_entry_step (node=0x77eaec042a18, thr=0x77eaec042c20) at /test/12.1_dbg/storage/innobase/row/row0ins.cc:3621
|
#21 0x00006248095c43e2 in row_ins (node=0x77eaec042a18, thr=0x77eaec042c20)at /test/12.1_dbg/storage/innobase/row/row0ins.cc:3738
|
#22 0x00006248095c4030 in row_ins_step (thr=0x77eaec042c20)at /test/12.1_dbg/storage/innobase/row/row0ins.cc:3867
|
#23 0x00006248095f04ac in row_insert_for_mysql (mysql_rec=0x77eaec040e38 "\031", prebuilt=0x77eaec042618, ins_mode=ROW_INS_NORMAL)at /test/12.1_dbg/storage/innobase/row/row0mysql.cc:1299
|
#24 0x00006248093ed455 in ha_innobase::write_row (this=0x77eaec0405d8, record=0x77eaec040e38 "\031")at /test/12.1_dbg/storage/innobase/handler/ha_innodb.cc:7779
|
#25 0x000062480900c81e in handler::ha_write_row (this=0x77eaec0405d8, buf=0x77eaec040e38 "\031") at /test/12.1_dbg/sql/handler.cc:8239
|
#26 0x0000624808b66ec7 in write_record (thd=0x77eaec000d58, table=0x77eaec040188, info=0x77eaec01be70, sink=0x0)at /test/12.1_dbg/sql/sql_insert.cc:2435
|
#27 0x0000624808b6c45d in select_insert::send_data (this=0x77eaec01be20, values=@0x77eaec01c2e8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x77eaec01eb58, last = 0x77eaec01eb58, elements = 1}, <No data fields>})at /test/12.1_dbg/sql/sql_insert.cc:4446
|
#28 0x0000624808b2d910 in select_result_sink::send_data_with_check (this=0x77eaec01be20, items=@0x77eaec01c2e8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x77eaec01eb58, last = 0x77eaec01eb58, elements = 1}, <No data fields>}, u=0x77eaec005148, sent=1) at /test/12.1_dbg/sql/sql_class.cc:3245
|
#29 0x0000624808c5129d in end_send (join=0x77eaec01bee0, join_tab=0x77eaec01e038, end_of_records=false)at /test/12.1_dbg/sql/sql_select.cc:25794
|
#30 0x0000624808c7d31d in evaluate_join_record (join=0x77eaec01bee0, join_tab=0x77eaec01dbc0, error=0) at /test/12.1_dbg/sql/sql_select.cc:24681
|
#31 0x0000624808c7cbd5 in AGGR_OP::end_send (this=0x77eaec01ea28)at /test/12.1_dbg/sql/sql_select.cc:33644
|
#32 0x0000624808c52050 in sub_select_postjoin_aggr (join=0x77eaec01bee0, join_tab=0x77eaec01dbc0, end_of_records=true)at /test/12.1_dbg/sql/sql_select.cc:24126
|
#33 0x0000624808c304b6 in sub_select (join=0x77eaec01bee0, join_tab=0x77eaec01d748, end_of_records=true)at /test/12.1_dbg/sql/sql_select.cc:24381
|
#34 0x0000624808c58121 in do_select (join=0x77eaec01bee0, procedure=0x0)at /test/12.1_dbg/sql/sql_select.cc:23961
|
#35 0x0000624808c57423 in JOIN::exec_inner (this=0x77eaec01bee0)at /test/12.1_dbg/sql/sql_select.cc:5074
|
#36 0x0000624808c562ce in JOIN::exec (this=0x77eaec01bee0)at /test/12.1_dbg/sql/sql_select.cc:4857
|
#37 0x0000624808c3114d in mysql_select (thd=0x77eaec000d58, tables=0x77eaec01ade8, fields=@0x77eaec01aa58: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x77eaec01ad98, last = 0x77eaec01ad98, elements = 1}, <No data fields>}, conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=37385559870208, result=0x77eaec01be20, unit=0x77eaec005148, select_lex=0x77eaec01a7a0) at /test/12.1_dbg/sql/sql_select.cc:5390
|
#38 0x0000624808c30bd5 in handle_select (thd=0x77eaec000d58, lex=0x77eaec005068, result=0x77eaec01be20, setup_tables_done_option=35184372088832)at /test/12.1_dbg/sql/sql_select.cc:634
|
#39 0x0000624808bd0d8b in mysql_execute_command (thd=0x77eaec000d58, is_called_from_prepared_stmt=false) at /test/12.1_dbg/sql/sql_parse.cc:4651
|
#40 0x0000624808bc59f4 in mysql_parse (thd=0x77eaec000d58, rawbuf=0x77eaec019f80 "INSERT INTO t SELECT * FROM t", length=29, parser_state=0x77ebed1b7a10) at /test/12.1_dbg/sql/sql_parse.cc:7882
|
#41 0x0000624808bc2dc8 in dispatch_command (command=COM_QUERY, thd=0x77eaec000d58, packet=0x77eaec00b2f9 "INSERT INTO t SELECT * FROM t", packet_length=29, blocking=true) at /test/12.1_dbg/sql/sql_parse.cc:1877
|
#42 0x0000624808bc65a3 in do_command (thd=0x77eaec000d58, blocking=true)at /test/12.1_dbg/sql/sql_parse.cc:1416
|
#43 0x0000624808db23d9 in do_handle_one_connection (connect=0x62483b1d9438, put_in_cache=true) at /test/12.1_dbg/sql/sql_connect.cc:1414
|
#44 0x0000624808db217e in handle_one_connection (arg=0x62483b1900a8)at /test/12.1_dbg/sql/sql_connect.cc:1326
|
#45 0x000077ec15a9caa4 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
|
#46 0x000077ec15b29c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
|
Bug Detection Matrix |
Rel o/d Build Commit UniqueID observed
|
CS 10.6 dbg 090625 888663ce12647c5aefee5e18accd80843d726741 No bug found
|
CS 10.6 opt 090625 888663ce12647c5aefee5e18accd80843d726741 No bug found
|
CS 10.11 dbg 090625 11d1ac7285221ab4df7d9ef7cc8ee949b01c9b32 offsets|SIGABRT|rec_offs_n_fields|rec_offs_validate|rec_offs_comp|rtr_update_mbr_field
|
CS 10.11 opt 090625 11d1ac7285221ab4df7d9ef7cc8ee949b01c9b32 No bug found
|
CS 11.4 dbg 090625 8c6cbb336081a5e1ad781df4a9778b61e3b4d73f btr_node_ptr_get_child_page_no(rec, offsets) == page_no|SIGABRT|rtr_compare_cursor_rec|rtr_get_father_node|rtr_page_get_father_node_ptr|rtr_page_get_father_block
|
CS 11.4 opt 090625 8c6cbb336081a5e1ad781df4a9778b61e3b4d73f No bug found
|
CS 11.8 dbg 170625 c095283ea6f9ef25cd1bd731b6984c7cbc7e4c3f No bug found
|
CS 11.8 opt 170625 c095283ea6f9ef25cd1bd731b6984c7cbc7e4c3f No bug found
|
CS 12.0 dbg 090625 f1102da37a3dcdc8b92e0205f0a8bd878704b168 btr_node_ptr_get_child_page_no(rec, offsets) == page_no|SIGABRT|rtr_compare_cursor_rec|rtr_get_father_node|rtr_page_get_father_node_ptr|rtr_page_get_father_block
|
CS 12.0 opt 090625 f1102da37a3dcdc8b92e0205f0a8bd878704b168 No bug found
|
CS 12.1 dbg 090625 6a2afb42ba86188ccda0972f9c2df363f34e10a0 btr_node_ptr_get_child_page_no(rec, offsets) == page_no|SIGABRT|rtr_compare_cursor_rec|rtr_get_father_node|rtr_page_get_father_node_ptr|rtr_page_get_father_block
|
CS 12.1 opt 090625 6a2afb42ba86188ccda0972f9c2df363f34e10a0 No bug found
|
ES 10.6 dbg 090625 6111fbaf7bdcb6f1170f556ffd05d6e1a4159f62 btr_node_ptr_get_child_page_no(rec, offsets) == page_no|SIGABRT|rtr_compare_cursor_rec|rtr_get_father_node|rtr_page_get_father_node_ptr|rtr_page_get_father_block
|
ES 10.6 opt 090625 6111fbaf7bdcb6f1170f556ffd05d6e1a4159f62 No bug found
|
ES 11.4 dbg 090625 9cd12544ebfd0d52d2158af66b5aced58121cf1f btr_node_ptr_get_child_page_no(rec, offsets) == page_no|SIGABRT|rtr_compare_cursor_rec|rtr_get_father_node|rtr_page_get_father_node_ptr|rtr_page_get_father_block
|
ES 11.4 opt 090625 9cd12544ebfd0d52d2158af66b5aced58121cf1f No bug found
|
ES 11.8 dbg 170625 b9f97a5bc42a4f23889996d2891bcbb0cafcf0bc btr_node_ptr_get_child_page_no(rec, offsets) == page_no|SIGABRT|rtr_compare_cursor_rec|rtr_get_father_node|rtr_page_get_father_node_ptr|rtr_page_get_father_block
|
ES 11.8 opt 170625 b9f97a5bc42a4f23889996d2891bcbb0cafcf0bc No bug found
|
Attachments
Issue Links
- relates to
-
MDEV-23165 Assertion `level <= 50' failed in btr_page_get_level, btr_page_set_level, btr_page_alloc and | block->page.flush_observer == __null || block->page.flush_observer == observer | Assertion `size == space->size' failed (innodb_limit_optimistic_insert_debug)
-
- Confirmed
-