[MDEV-31740] Assertion `table->cols[j].len < req_schema->columns[i].len' failed in dberr_t dict_table_schema_check(dict_table_schema_t*, char*, size_t) Created: 2023-07-19  Updated: 2023-11-28

Status: Open
Project: MariaDB Server
Component/s: None
Affects Version/s: 10.4, 10.5, 10.6, 10.9, 10.10, 10.11, 11.0, 11.1, 11.2
Fix Version/s: 10.4, 10.5, 10.6, 10.11, 11.0, 11.1

Type: Bug Priority: Major
Reporter: Ramesh Sivaraman Assignee: Thirunarayanan Balathandayuthapani
Resolution: Unresolved Votes: 0
Labels: None


 Description   

SET sql_mode='maxdb';
ALTER TABLE mysql.innodb_table_stats MODIFY LAST_UPDATE TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP();

Leads to

10.4.31 922db0642b6321ece41adb3232c1616812143573 (Debug)

mariadbd: /test/10.4_dbg/storage/innobase/dict/dict0dict.cc:5728: dberr_t dict_table_schema_check(dict_table_schema_t*, char*, size_t): Assertion `table->cols[j].len < req_schema->columns[i].len' failed.

10.4.31 922db0642b6321ece41adb3232c1616812143573 (Debug)

Core was generated by `/test/MD040723-mariadb-10.4.31-linux-x86_64-dbg/bin/mariadbd --no-defaults --co'.
Program terminated with signal SIGABRT, Aborted.
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
[Current thread is 1 (Thread 0x149a4c082700 (LWP 2367801))]
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x0000149a502fb859 in __GI_abort () at abort.c:79
#2  0x0000149a502fb729 in __assert_fail_base (fmt=0x149a50491588 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x55cc6859cf68 "table->cols[j].len < req_schema->columns[i].len", file=0x55cc6859bb78 "/test/10.4_dbg/storage/innobase/dict/dict0dict.cc", line=5728, function=<optimized out>) at assert.c:92
#3  0x0000149a5030cfd6 in __GI___assert_fail (assertion=assertion@entry=0x55cc6859cf68 "table->cols[j].len < req_schema->columns[i].len", file=file@entry=0x55cc6859bb78 "/test/10.4_dbg/storage/innobase/dict/dict0dict.cc", line=line@entry=5728, function=function@entry=0x55cc6859cea0 "dberr_t dict_table_schema_check(dict_table_schema_t*, char*, size_t)") at assert.c:101
#4  0x000055cc6805db4b in dict_table_schema_check (req_schema=req_schema@entry=0x149a4c079d60, errstr=errstr@entry=0x149a4c07a100 "", errstr_sz=errstr_sz@entry=512) at /test/10.4_dbg/storage/innobase/dict/dict0dict.cc:5728
#5  0x000055cc6808c54c in dict_stats_persistent_storage_check (caller_has_dict_sys_mutex=caller_has_dict_sys_mutex@entry=true) at /test/10.4_dbg/storage/innobase/dict/dict0stats.cc:245
#6  0x000055cc6808c72a in dict_stats_exec_sql (pinfo=pinfo@entry=0x1499f0043ce0, sql=sql@entry=0x55cc685a1e18 "PROCEDURE DELETE_FROM_TABLE_STATS () IS\nBEGIN\nDELETE FROM \"mysql/innodb_table_stats\" WHERE\ndatabase_name = :database_name AND\ntable_name = :table_name;\nEND;\n", trx=trx@entry=0x0) at /test/10.4_dbg/storage/innobase/dict/dict0stats.cc:289
#7  0x000055cc6808d5ca in dict_stats_delete_from_table_stats (table_name=0x149a4c07a430 "#mysql50##sql2-241fb0-9", database_name=0x149a4c07a360 "mysql") at /test/10.4_dbg/storage/innobase/dict/dict0stats.cc:3507
#8  dict_stats_drop_table (db_and_table=<optimized out>, db_and_table@entry=0x149a4c07adf0 "mysql/#sql2-241fb0-9", errstr=errstr@entry=0x149a4c07a720 "", errstr_sz=errstr_sz@entry=1024) at /test/10.4_dbg/storage/innobase/dict/dict0stats.cc:3590
#9  0x000055cc67e90bcd in row_drop_table_for_mysql (name=name@entry=0x149a4c07adf0 "mysql/#sql2-241fb0-9", trx=trx@entry=0x149a4e22c208, sqlcom=sqlcom@entry=SQLCOM_ALTER_TABLE, create_failed=create_failed@entry=false, nonatomic=<optimized out>, nonatomic@entry=true) at /test/10.4_dbg/storage/innobase/row/row0mysql.cc:3418
#10 0x000055cc67d041cf in ha_innobase::delete_table (this=this@entry=0x1499f0015a98, name=<optimized out>, name@entry=0x149a4c07c8b0 "./mysql/#sql2-241fb0-9", sqlcom=sqlcom@entry=SQLCOM_ALTER_TABLE) at /test/10.4_dbg/storage/innobase/handler/ha_innodb.cc:13307
#11 0x000055cc67cfa99a in ha_innobase::delete_table (this=0x1499f0015a98, name=0x149a4c07c8b0 "./mysql/#sql2-241fb0-9") at /test/10.4_dbg/storage/innobase/handler/ha_innodb.cc:13432
#12 0x000055cc679ce627 in handler::ha_delete_table (this=this@entry=0x1499f0015a98, name=name@entry=0x149a4c07c8b0 "./mysql/#sql2-241fb0-9") at /test/10.4_dbg/sql/handler.cc:4803
#13 0x000055cc679ce7dc in ha_delete_table (thd=<optimized out>, table_type=table_type@entry=0x55cc69f0bde8, path=path@entry=0x149a4c07c8b0 "./mysql/#sql2-241fb0-9", db=db@entry=0x149a4c07e590, alias=alias@entry=0x149a4c07cc50, generate_warning=generate_warning@entry=false) at /test/10.4_dbg/sql/handler.cc:2652
#14 0x000055cc677f5292 in quick_rm_table (thd=thd@entry=0x1499f0000d28, base=base@entry=0x55cc69f0bde8, db=db@entry=0x149a4c07e590, table_name=table_name@entry=0x149a4c07cc50, flags=flags@entry=3, table_path=table_path@entry=0x0) at /test/10.4_dbg/include/my_pthread.h:376
#15 0x000055cc6780964a in mysql_alter_table (thd=thd@entry=0x1499f0000d28, new_db=new_db@entry=0x1499f0005398, new_name=new_name@entry=0x1499f00057f0, create_info=create_info@entry=0x149a4c07f160, table_list=<optimized out>, table_list@entry=0x1499f00126c0, recreate_info=recreate_info@entry=0x149a4c07f080, alter_info=0x149a4c07f0a0, order_num=0, order=0x0, ignore=false) at /test/10.4_dbg/sql/sql_table.cc:10713
#16 0x000055cc67876b22 in Sql_cmd_alter_table::execute (this=0x1499f0013118, thd=0x1499f0000d28) at /test/10.4_dbg/sql/sql_alter.cc:531
#17 0x000055cc6774cf0b in mysql_execute_command (thd=thd@entry=0x1499f0000d28) at /test/10.4_dbg/sql/sql_parse.cc:6216
#18 0x000055cc6774f28f in mysql_parse (thd=thd@entry=0x1499f0000d28, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x149a4c0813b0, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.4_dbg/sql/sql_parse.cc:8008
#19 0x000055cc67751daa in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x1499f0000d28, packet=packet@entry=0x1499f0019509 "", packet_length=packet_length@entry=132, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.4_dbg/sql/sql_class.h:1231
#20 0x000055cc677545d5 in do_command (thd=0x1499f0000d28) at /test/10.4_dbg/sql/sql_parse.cc:1378
#21 0x000055cc678710ed in do_handle_one_connection (connect=<optimized out>) at /test/10.4_dbg/sql/sql_connect.cc:1420
#22 0x000055cc678711a9 in handle_one_connection (arg=<optimized out>) at /test/10.4_dbg/sql/sql_connect.cc:1324
#23 0x0000149a5080c609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#24 0x0000149a503f8133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

The above assert message is removed in 10.6 as part of MDEV-25907, but it asserts differently when adding CREATE TABLE statement after the above testcase.

SET sql_mode='maxdb';
ALTER TABLE mysql.innodb_table_stats MODIFY LAST_UPDATE TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP();
CREATE TABLE t (a INT KEY);

Leads to

10.6.15 f7b8a2c953e21d7a1c8e7ef3b7107c13a1402967 (Debug)

mariadbd: /test/10.6_dbg/storage/innobase/rem/rem0rec.cc:1236: ulint rec_get_converted_size_comp_prefix_low(const dict_index_t*, const dfield_t*, ulint, ulint*, rec_comp_status_t, bool) [with bool mblob = false; bool redundant_temp = false; ulint = long unsigned int]: Assertion `field->col->is_dropped() || !field->col->mbmaxlen || len >= field->col->mbminlen * fixed_len / field->col->mbmaxlen' failed.

10.6.15 f7b8a2c953e21d7a1c8e7ef3b7107c13a1402967 (Debug)

Core was generated by `/test/MD050723-mariadb-10.6.15-linux-x86_64-dbg/bin/mariadbd --no-defaults --co'.
Program terminated with signal SIGABRT, Aborted.
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
[Current thread is 1 (Thread 0x1534ec102700 (LWP 4169043))]
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00001535036d7859 in __GI_abort () at abort.c:79
#2  0x00001535036d7729 in __assert_fail_base (fmt=0x15350386d588 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x5609b0121570 "field->col->is_dropped() || !field->col->mbmaxlen || len >= field->col->mbminlen * fixed_len / field->col->mbmaxlen", file=0x5609b0121198 "/test/10.6_dbg/storage/innobase/rem/rem0rec.cc", line=1236, function=<optimized out>) at assert.c:92
#3  0x00001535036e8fd6 in __GI___assert_fail (assertion=assertion@entry=0x5609b0121570 "field->col->is_dropped() || !field->col->mbmaxlen || len >= field->col->mbminlen * fixed_len / field->col->mbmaxlen", file=file@entry=0x5609b0121198 "/test/10.6_dbg/storage/innobase/rem/rem0rec.cc", line=line@entry=1236, function=function@entry=0x5609b01211c8 "ulint rec_get_converted_size_comp_prefix_low(const dict_index_t*, const dfield_t*, ulint, ulint*, rec_comp_status_t, bool) [with bool mblob = false; bool redundant_temp = false; ulint = long unsigned "...) at assert.c:101
#4  0x00005609afa3dcf7 in rec_get_converted_size_comp_prefix_low<>(const dict_index_t *, const dfield_t *, ulint, ulint *, rec_comp_status_t, bool) (index=index@entry=0x1534ac045270, dfield=0x1534ac043f48, n_fields=<optimized out>, extra=extra@entry=0x0, status=status@entry=REC_STATUS_ORDINARY, temp=temp@entry=false) at /test/10.6_dbg/storage/innobase/include/dict0mem.h:644
#5  0x00005609afa44ec2 in rec_get_converted_size_comp (index=index@entry=0x1534ac045270, tuple=tuple@entry=0x1534ac043eb0, extra=extra@entry=0x0) at /test/10.6_dbg/storage/innobase/rem/rem0rec.cc:1319
#6  0x00005609afb7e8d7 in rec_get_converted_size (index=index@entry=0x1534ac045270, dtuple=dtuple@entry=0x1534ac043eb0, n_ext=0) at /test/10.6_dbg/storage/innobase/include/rem0rec.inl:1120
#7  0x00005609afb887fb in btr_cur_optimistic_insert (flags=flags@entry=0, cursor=cursor@entry=0x1534ec0fd350, offsets=offsets@entry=0x1534ec0fd338, heap=heap@entry=0x1534ec0fd330, entry=entry@entry=0x1534ac043eb0, rec=rec@entry=0x1534ec0fd348, big_rec=0x1534ec0fd328, n_ext=<optimized out>, thr=0x1534ac04fda8, mtr=0x1534ec0fd8f0) at /test/10.6_dbg/storage/innobase/btr/btr0cur.cc:2342
#8  0x00005609afa746a2 in row_ins_clust_index_entry_low (flags=flags@entry=0, mode=<optimized out>, mode@entry=BTR_MODIFY_LEAF, index=index@entry=0x1534ac045270, n_uniq=n_uniq@entry=2, entry=entry@entry=0x1534ac043eb0, n_ext=n_ext@entry=0, thr=<optimized out>) at /test/10.6_dbg/storage/innobase/row/row0ins.cc:2849
#9  0x00005609afa762ef in row_ins_clust_index_entry (index=index@entry=0x1534ac045270, entry=entry@entry=0x1534ac043eb0, thr=thr@entry=0x1534ac04fda8, n_ext=n_ext@entry=0) at /test/10.6_dbg/storage/innobase/row/row0ins.cc:3239
#10 0x00005609afa77d55 in row_ins_index_entry (thr=0x1534ac04fda8, entry=0x1534ac043eb0, index=0x1534ac045270) at /test/10.6_dbg/storage/innobase/row/row0ins.cc:3365
#11 row_ins_index_entry_step (thr=0x1534ac04fda8, node=<optimized out>) at /test/10.6_dbg/storage/innobase/row/row0ins.cc:3533
#12 row_ins (thr=0x1534ac04fda8, node=<optimized out>) at /test/10.6_dbg/storage/innobase/row/row0ins.cc:3658
#13 row_ins_step (thr=thr@entry=0x1534ac04fda8) at /test/10.6_dbg/storage/innobase/row/row0ins.cc:3787
#14 0x00005609afa324e5 in que_thr_step (thr=0x1534ac04fda8) at /test/10.6_dbg/storage/innobase/que/que0que.cc:567
#15 que_run_threads_low (thr=0x1534ac04fda8) at /test/10.6_dbg/storage/innobase/que/que0que.cc:644
#16 que_run_threads (thr=0x1534ac04fda8) at /test/10.6_dbg/storage/innobase/que/que0que.cc:664
#17 0x00005609afa32a86 in que_eval_sql (info=info@entry=0x1534ac041bf0, sql=sql@entry=0x5609b015f3a8 "PROCEDURE TABLE_STATS_SAVE () IS\nBEGIN\nDELETE FROM \"mysql/innodb_table_stats\"\nWHERE\ndatabase_name = :database_name AND\ntable_name = :table_name;\nINSERT INTO \"mysql/innodb_table_stats\"\nVALUES\n(\n:databa"..., trx=trx@entry=0x15350182b180) at /test/10.6_dbg/storage/innobase/que/que0que.cc:703
#18 0x00005609afc3ce91 in dict_stats_exec_sql (pinfo=pinfo@entry=0x1534ac041bf0, sql=sql@entry=0x5609b015f3a8 "PROCEDURE TABLE_STATS_SAVE () IS\nBEGIN\nDELETE FROM \"mysql/innodb_table_stats\"\nWHERE\ndatabase_name = :database_name AND\ntable_name = :table_name;\nINSERT INTO \"mysql/innodb_table_stats\"\nVALUES\n(\n:databa"..., trx=trx@entry=0x15350182b180) at /test/10.6_dbg/storage/innobase/dict/dict0stats.cc:546
#19 0x00005609afc41893 in dict_stats_save (table_orig=table_orig@entry=0x1534c80018a0, only_for_index=only_for_index@entry=0x0) at /test/10.6_dbg/storage/innobase/dict/dict0stats.cc:3324
#20 0x00005609afc4519b in dict_stats_update (table=0x1534c80018a0, stats_upd_option=stats_upd_option@entry=DICT_STATS_EMPTY_TABLE) at /test/10.6_dbg/storage/innobase/dict/dict0stats.cc:4121
#21 0x00005609af929453 in ha_innobase::create (this=<optimized out>, name=<optimized out>, form=0x1534ec0ff220, create_info=0x1534ec100b30, file_per_table=<optimized out>, trx=0x15350182a680, trx@entry=0x0) at /test/10.6_dbg/storage/innobase/handler/ha_innodb.h:712
#22 0x00005609af9294f3 in ha_innobase::create (this=<optimized out>, name=<optimized out>, form=<optimized out>, create_info=<optimized out>) at /test/10.6_dbg/storage/innobase/handler/ha_innodb.cc:13337
#23 0x00005609af5ed8e5 in handler::ha_create (this=0x1534ac03e0e0, name=0x1534ec100650 "./test/t", form=form@entry=0x1534ec0ff220, info_arg=info_arg@entry=0x1534ec100b30) at /test/10.6_dbg/sql/handler.cc:5504
#24 0x00005609af5ee4ee in ha_create_table (thd=thd@entry=0x1534ac000d48, path=<optimized out>, db=0x1534ac013860 "test", table_name=0x1534ac013120 "t", create_info=create_info@entry=0x1534ec100b30, frm=frm@entry=0x1534ec100640, skip_frm_file=false) at /test/10.6_dbg/sql/handler.cc:5972
#25 0x00005609af3eafe4 in create_table_impl (thd=thd@entry=0x1534ac000d48, ddl_log_state_create=ddl_log_state_create@entry=0x1534ec1008e0, ddl_log_state_rm=<optimized out>, ddl_log_state_rm@entry=0x1534ec100900, orig_db=@0x1534ac013170: {str = 0x1534ac013860 "test", length = 4}, orig_table_name=@0x1534ac013180: {str = 0x1534ac013120 "t", length = 1}, db=@0x1534ac013170: {str = 0x1534ac013860 "test", length = 4}, table_name=@0x1534ac013180: {str = 0x1534ac013120 "t", length = 1}, path=@0x1534ec100630: {str = 0x1534ec100650 "./test/t", length = 8}, options=<optimized out>, create_info=0x1534ec100b30, alter_info=0x1534ec100a40, create_table_mode=0, is_trans=0x1534ec1008df, key_info=0x1534ec100628, key_count=0x1534ec100624, frm=0x1534ec100640) at /test/10.6_dbg/sql/sql_table.cc:4486
#26 0x00005609af3eb356 in mysql_create_table_no_lock (thd=thd@entry=0x1534ac000d48, ddl_log_state_create=ddl_log_state_create@entry=0x1534ec1008e0, ddl_log_state_rm=ddl_log_state_rm@entry=0x1534ec100900, db=db@entry=0x1534ac013170, table_name=table_name@entry=0x1534ac013180, create_info=create_info@entry=0x1534ec100b30, alter_info=0x1534ec100a40, is_trans=0x1534ec1008df, create_table_mode=0, table_list=0x1534ac013158) at /test/10.6_dbg/sql/sql_table.cc:4585
#27 0x00005609af3eb738 in mysql_create_table (thd=thd@entry=0x1534ac000d48, create_table=create_table@entry=0x1534ac013158, create_info=create_info@entry=0x1534ec100b30, alter_info=alter_info@entry=0x1534ec100a40) at /test/10.6_dbg/sql/sql_table.cc:4697
#28 0x00005609af3ed4a3 in Sql_cmd_create_table_like::execute (this=<optimized out>, thd=0x1534ac000d48) at /test/10.6_dbg/sql/sql_table.cc:11961
#29 0x00005609af32c9c8 in mysql_execute_command (thd=thd@entry=0x1534ac000d48, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/10.6_dbg/sql/sql_parse.cc:6014
#30 0x00005609af3152c9 in mysql_parse (thd=thd@entry=0x1534ac000d48, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x1534ec101310) at /test/10.6_dbg/sql/sql_parse.cc:8041
#31 0x00005609af322b75 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x1534ac000d48, packet=packet@entry=0x1534ac00acb9 "CREATE TABLE t (a INT KEY)", packet_length=packet_length@entry=26, blocking=blocking@entry=true) at /test/10.6_dbg/sql/sql_class.h:1388
#32 0x00005609af325049 in do_command (thd=0x1534ac000d48, blocking=blocking@entry=true) at /test/10.6_dbg/sql/sql_parse.cc:1409
#33 0x00005609af46ae9b in do_handle_one_connection (connect=<optimized out>, connect@entry=0x5609b2b9d178, put_in_cache=put_in_cache@entry=true) at /test/10.6_dbg/sql/sql_connect.cc:1416
#34 0x00005609af46b36a in handle_one_connection (arg=0x5609b2b9d178) at /test/10.6_dbg/sql/sql_connect.cc:1318
#35 0x0000153503be8609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#36 0x00001535037d4133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95



 Comments   
Comment by Ramesh Sivaraman [ 2023-09-15 ]

When adding "SET GLOBAL mysql56_temporal_format=false" to the test case, the server crashes with another assertion on 10.6+ debug build.

SET GLOBAL mysql56_temporal_format=false;
SET sql_mode=MAXDB;
ALTER TABLE mysql.innodb_table_stats MODIFY LAST_UPDATE TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP();
CREATE TABLE t (f INT KEY,f2 INT);

Leads to:

11.3.0 8ad1e26b1bafa4ed9928306efc10c047f2274108 (Debug)

mariadbd: /test/11.3_dbg/storage/innobase/include/page0cur.inl:187: rec_t* page_cur_tuple_insert(page_cur_t*, const dtuple_t*, rec_offs**, mem_heap_t**, ulint, mtr_t*): Assertion `size == rec_offs_size(*offsets)' failed.

11.3.0 8ad1e26b1bafa4ed9928306efc10c047f2274108 (Debug)

Core was generated by `/test/MD080923-mariadb-11.3.0-linux-x86_64-dbg/bin/mariadbd --no-defaults --cor'.
Program terminated with signal SIGABRT, Aborted.
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
[Current thread is 1 (Thread 0x15442c8aa700 (LWP 930926))]
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x0000154446030859 in __GI_abort () at abort.c:79
#2  0x0000154446030729 in __assert_fail_base (fmt=0x1544461c6588 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x55e29aff1338 "size == rec_offs_size(*offsets)", file=0x55e29af9aff0 "/test/11.3_dbg/storage/innobase/include/page0cur.inl", line=187, function=<optimized out>) at assert.c:92
#3  0x0000154446041fd6 in __GI___assert_fail (assertion=assertion@entry=0x55e29aff1338 "size == rec_offs_size(*offsets)", file=file@entry=0x55e29af9aff0 "/test/11.3_dbg/storage/innobase/include/page0cur.inl", line=line@entry=187, function=function@entry=0x55e29aff1358 "rec_t* page_cur_tuple_insert(page_cur_t*, const dtuple_t*, rec_offs**, mem_heap_t**, ulint, mtr_t*)") at assert.c:101
#4  0x000055e29aa0c49a in page_cur_tuple_insert (cursor=cursor@entry=0x15442c8a39b0, tuple=tuple@entry=0x1543d0043b20, offsets=offsets@entry=0x15442c8a3998, heap=heap@entry=0x15442c8a3990, n_ext=0, mtr=mtr@entry=0x15442c8a3f40) at /test/11.3_dbg/storage/innobase/include/rem0rec.inl:1000
#5  0x000055e29aa0d2c1 in btr_cur_optimistic_insert (flags=flags@entry=0, cursor=cursor@entry=0x15442c8a39b0, offsets=offsets@entry=0x15442c8a3998, heap=heap@entry=0x15442c8a3990, entry=entry@entry=0x1543d0043b20, rec=rec@entry=0x15442c8a39a8, big_rec=0x15442c8a3988, n_ext=<optimized out>, thr=0x1543d0049a88, mtr=0x15442c8a3f40) at /test/11.3_dbg/storage/innobase/btr/btr0cur.cc:2371
#6  0x000055e29a8f8db8 in row_ins_clust_index_entry_low (flags=flags@entry=0, mode=<optimized out>, mode@entry=BTR_MODIFY_LEAF, index=index@entry=0x1543d00442e0, n_uniq=n_uniq@entry=2, entry=entry@entry=0x1543d0043b20, n_ext=n_ext@entry=0, thr=<optimized out>) at /test/11.3_dbg/storage/innobase/row/row0ins.cc:2870
#7  0x000055e29a8faa6c in row_ins_clust_index_entry (index=index@entry=0x1543d00442e0, entry=entry@entry=0x1543d0043b20, thr=thr@entry=0x1543d0049a88, n_ext=n_ext@entry=0) at /test/11.3_dbg/storage/innobase/row/row0ins.cc:3243
#8  0x000055e29a8fc1fc in row_ins_index_entry (thr=0x1543d0049a88, entry=0x1543d0043b20, index=0x1543d00442e0) at /test/11.3_dbg/storage/innobase/row/row0ins.cc:3375
#9  row_ins_index_entry_step (thr=0x1543d0049a88, node=<optimized out>) at /test/11.3_dbg/storage/innobase/row/row0ins.cc:3543
#10 row_ins (thr=0x1543d0049a88, node=<optimized out>) at /test/11.3_dbg/storage/innobase/row/row0ins.cc:3660
#11 row_ins_step (thr=thr@entry=0x1543d0049a88) at /test/11.3_dbg/storage/innobase/row/row0ins.cc:3789
#12 0x000055e29a8b6394 in que_thr_step (thr=0x1543d0049a88) at /test/11.3_dbg/storage/innobase/que/que0que.cc:567
#13 que_run_threads_low (thr=0x1543d0049a88) at /test/11.3_dbg/storage/innobase/que/que0que.cc:644
#14 que_run_threads (thr=0x1543d0049a88) at /test/11.3_dbg/storage/innobase/que/que0que.cc:664
#15 0x000055e29a8b6935 in que_eval_sql (info=info@entry=0x1543d0040f00, sql=sql@entry=0x55e29b008810 "PROCEDURE TABLE_STATS_SAVE () IS\nBEGIN\nDELETE FROM \"mysql/innodb_table_stats\"\nWHERE\ndatabase_name = :database_name AND\ntable_name = :table_name;\nINSERT INTO \"mysql/innodb_table_stats\"\nVALUES\n(\n:databa"..., trx=trx@entry=0x15443d8dd180) at /test/11.3_dbg/storage/innobase/que/que0que.cc:703
#16 0x000055e29aab4028 in dict_stats_exec_sql (pinfo=pinfo@entry=0x1543d0040f00, sql=sql@entry=0x55e29b008810 "PROCEDURE TABLE_STATS_SAVE () IS\nBEGIN\nDELETE FROM \"mysql/innodb_table_stats\"\nWHERE\ndatabase_name = :database_name AND\ntable_name = :table_name;\nINSERT INTO \"mysql/innodb_table_stats\"\nVALUES\n(\n:databa"..., trx=trx@entry=0x15443d8dd180) at /test/11.3_dbg/storage/innobase/dict/dict0stats.cc:548
#17 0x000055e29aab894c in dict_stats_save (table_orig=table_orig@entry=0x1543e00018a0, only_for_index=only_for_index@entry=0x0) at /test/11.3_dbg/storage/innobase/dict/dict0stats.cc:3264
#18 0x000055e29aabc013 in dict_stats_update (table=0x1543e00018a0, stats_upd_option=stats_upd_option@entry=DICT_STATS_EMPTY_TABLE) at /test/11.3_dbg/storage/innobase/dict/dict0stats.cc:4044
#19 0x000055e29a7c11cf in ha_innobase::create (this=<optimized out>, name=0x15442c8a6d50 "./test/t", form=0x15442c8a5890, create_info=0x15442c8a72f0, file_per_table=<optimized out>, trx=0x15443d8dc680, trx@entry=0x0) at /test/11.3_dbg/storage/innobase/handler/ha_innodb.h:714
#20 0x000055e29a7c2893 in ha_innobase::create (this=<optimized out>, name=<optimized out>, form=<optimized out>, create_info=<optimized out>) at /test/11.3_dbg/storage/innobase/handler/ha_innodb.cc:13271
#21 0x000055e29a4b6803 in handler::ha_create (this=0x1543d006b720, name=0x15442c8a6d50 "./test/t", form=form@entry=0x15442c8a5890, info_arg=info_arg@entry=0x15442c8a72f0) at /test/11.3_dbg/sql/handler.cc:5676
#22 0x000055e29a4b7433 in ha_create_table (thd=thd@entry=0x1543d0000d48, path=<optimized out>, db=0x1543d0013ab0 "test", table_name=0x1543d0013368 "t", create_info=create_info@entry=0x15442c8a72f0, frm=frm@entry=0x15442c8a6d40, skip_frm_file=false) at /test/11.3_dbg/sql/handler.cc:6145
#23 0x000055e29a2898c2 in create_table_impl (thd=thd@entry=0x1543d0000d48, ddl_log_state_create=ddl_log_state_create@entry=0x15442c8a7070, ddl_log_state_rm=<optimized out>, ddl_log_state_rm@entry=0x15442c8a7200, orig_db=@0x1543d00133b8: {str = 0x1543d0013ab0 "test", length = 4}, orig_table_name=@0x1543d00133c8: {str = 0x1543d0013368 "t", length = 1}, db=@0x1543d00133b8: {str = 0x1543d0013ab0 "test", length = 4}, table_name=@0x1543d00133c8: {str = 0x1543d0013368 "t", length = 1}, path=@0x15442c8a6d30: {str = 0x15442c8a6d50 "./test/t", length = 8}, options=<optimized out>, create_info=0x15442c8a72f0, alter_info=0x15442c8a7110, create_table_mode=0, is_trans=0x15442c8a7050, key_info=0x15442c8a6d28, key_count=0x15442c8a6d24, frm=0x15442c8a6d40) at /test/11.3_dbg/sql/sql_table.cc:4667
#24 0x000055e29a289c72 in mysql_create_table_no_lock (thd=thd@entry=0x1543d0000d48, ddl_log_state_create=ddl_log_state_create@entry=0x15442c8a7070, ddl_log_state_rm=ddl_log_state_rm@entry=0x15442c8a7200, db=db@entry=0x1543d00133b8, table_name=table_name@entry=0x1543d00133c8, create_info=create_info@entry=0x15442c8a72f0, alter_info=0x15442c8a7110, is_trans=0x15442c8a7050, create_table_mode=0, table_list=0x1543d00133a0) at /test/11.3_dbg/sql/sql_table.cc:4768
#25 0x000055e29a28bba6 in mysql_create_table (alter_info=0x15442c8a7110, create_info=0x15442c8a72f0, create_table=0x1543d00133a0, thd=0x1543d0000d48) at /test/11.3_dbg/sql/sql_table.cc:4884
#26 Sql_cmd_create_table_like::execute (this=<optimized out>, thd=0x1543d0000d48) at /test/11.3_dbg/sql/sql_table.cc:12821
#27 0x000055e29a1ad194 in mysql_execute_command (thd=thd@entry=0x1543d0000d48, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/11.3_dbg/sql/sql_parse.cc:5733
#28 0x000055e29a195bfb in mysql_parse (thd=thd@entry=0x1543d0000d48, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x15442c8a92c0) at /test/11.3_dbg/sql/sql_parse.cc:7760
#29 0x000055e29a1a32cc in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x1543d0000d48, packet=packet@entry=0x1543d000af59 "CREATE TABLE t (f INT KEY,f2 INT)", packet_length=packet_length@entry=33, blocking=blocking@entry=true) at /test/11.3_dbg/sql/sql_class.h:1489
#30 0x000055e29a1a5784 in do_command (thd=0x1543d0000d48, blocking=blocking@entry=true) at /test/11.3_dbg/sql/sql_parse.cc:1406
#31 0x000055e29a30e375 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55e29d33ca58, put_in_cache=put_in_cache@entry=true) at /test/11.3_dbg/sql/sql_connect.cc:1445
#32 0x000055e29a30e844 in handle_one_connection (arg=0x55e29d33ca58) at /test/11.3_dbg/sql/sql_connect.cc:1347
#33 0x0000154446541609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#34 0x000015444612d133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Bug confirmed present in:
MariaDB: 10.6.16 (dbg), 10.9.8 (dbg), 10.10.7 (dbg), 10.11.6 (dbg), 11.0.4 (dbg), 11.1.3 (dbg), 11.2.2 (dbg), 11.3.0 (dbg)

Bug (or feature/syntax) confirmed not present in:
MariaDB: 10.4.32 (opt), 10.5.23 (opt), 10.4.32 (dbg), 10.5.23 (dbg), 10.6.16 (opt), 10.9.8 (opt), 10.10.7 (opt), 10.11.6 (opt), 11.0.4 (opt), 11.1.3 (opt), 11.2.2 (opt), 11.3.0 (opt)

Generated at Thu Feb 08 10:26:07 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.