Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-24832

Root page AHI Removal fails fails during bulk index rollback

Details

    Description

      Sporadic. Usually requires 2 attempts sequentially on same server, sometimes more. Cores may not always be written. Frequently seen in runs.

      DROP DATABASE test;
      CREATE DATABASE test;
      USE test;
      XA START 'a';
      SET GLOBAL innodb_adaptive_hash_index='ON';
      CREATE TEMPORARY TABLE t1(c INT) ENGINE=InnoDB;
      CREATE TEMPORARY TABLE t3(a INT) ENGINE=MERGE UNION=(t1,t2);
      INSERT INTO t1(c) SELECT seq FROM seq_1_to_500;
      LOAD INDEX INTO CACHE t3 KEY(b),t2 KEY(d);
      INSERT INTO t1(c) SELECT seq FROM seq_1_to_500;
      

      Leads to:

      10.6.0 786bc312b85e58857cb26a24ab6e997ba0fdfc32 (Debug)

      InnoDB: Failing assertion: (block)->index || (block)->n_pointers == 0
      

      10.6.0 786bc312b85e58857cb26a24ab6e997ba0fdfc32 (Debug)

      Core was generated by `/test/MD100221-mariadb-10.6.0-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:56
      [Current thread is 1 (Thread 0x14a64c737700 (LWP 2127796))]
      (gdb) bt
      #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
      #1  0x000055b0c7a3955e in my_write_core (sig=sig@entry=6) at /test/10.6_dbg/mysys/stacktrace.c:424
      #2  0x000055b0c71d14de in handle_fatal_signal (sig=6) at /test/10.6_dbg/sql/signal_handler.cc:330
      #3  <signal handler called>
      #4  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
      #5  0x000014a657b9c859 in __GI_abort () at abort.c:79
      #6  0x000055b0c7819e9a in ut_dbg_assertion_failed (expr=expr@entry=0x55b0c7e07a40 "(block)->index || (block)->n_pointers == 0", file=file@entry=0x55b0c7e58fe0 "/test/10.6_dbg/storage/innobase/btr/btr0sea.cc", line=line@entry=1379) at /test/10.6_dbg/storage/innobase/ut/ut0dbg.cc:60
      #7  0x000055b0c7880d06 in btr_search_drop_page_hash_index (block=block@entry=0x14a634010a00) at /test/10.6_dbg/storage/innobase/btr/btr0sea.cc:1379
      #8  0x000055b0c78290bb in dict_index_t::clear (this=this@entry=0x14a5e802e938, thr=thr@entry=0x14a5e82bd1d8) at /test/10.6_dbg/storage/innobase/btr/btr0btr.cc:1219
      #9  0x000055b0c776e587 in dict_table_t::clear (this=<optimized out>, thr=thr@entry=0x14a5e82bd1d8) at /test/10.6_dbg/storage/innobase/row/row0log.cc:4129
      #10 0x000055b0c79ae6f8 in row_undo_ins (node=node@entry=0x14a5e82bd628, thr=thr@entry=0x14a5e82bd1d8) at /test/10.6_dbg/storage/innobase/row/row0uins.cc:607
      #11 0x000055b0c77a4eaf in row_undo (thr=0x14a5e82bd1d8, node=0x14a5e82bd628) at /test/10.6_dbg/storage/innobase/row/row0undo.cc:439
      #12 row_undo_step (thr=thr@entry=0x14a5e82bd1d8) at /test/10.6_dbg/storage/innobase/row/row0undo.cc:495
      #13 0x000055b0c76e92c8 in que_thr_step (thr=0x14a5e82bd1d8) at /test/10.6_dbg/storage/innobase/que/que0que.cc:651
      #14 que_run_threads_low (thr=0x14a5e82bd1d8) at /test/10.6_dbg/storage/innobase/que/que0que.cc:709
      #15 que_run_threads (thr=0x14a5e82bd1d8) at /test/10.6_dbg/storage/innobase/que/que0que.cc:729
      #16 0x000055b0c77f4d1c in trx_t::rollback_low (this=this@entry=0x14a64e9f22a0, savept=savept@entry=0x0) at /test/10.6_dbg/storage/innobase/trx/trx0roll.cc:118
      #17 0x000055b0c77f2ae3 in trx_rollback_for_mysql_low (trx=0x14a64e9f22a0) at /test/10.6_dbg/storage/innobase/trx/trx0roll.cc:189
      #18 trx_rollback_for_mysql (trx=trx@entry=0x14a64e9f22a0) at /test/10.6_dbg/storage/innobase/trx/trx0roll.cc:219
      #19 0x000055b0c75c42ae in innobase_rollback (hton=<optimized out>, thd=0x14a5e8000db8, rollback_trx=<optimized out>) at /test/10.6_dbg/storage/innobase/handler/ha_innodb.cc:4111
      #20 0x000055b0c71d6c67 in ha_rollback_trans (thd=thd@entry=0x14a5e8000db8, all=all@entry=true) at /test/10.6_dbg/sql/handler.cc:2053
      #21 0x000055b0c707c1ed in trans_rollback_implicit (thd=thd@entry=0x14a5e8000db8) at /test/10.6_dbg/sql/transaction.cc:421
      #22 0x000055b0c707a3d5 in mysql_admin_table (thd=thd@entry=0x14a5e8000db8, tables=tables@entry=0x14a5e8012800, check_opt=check_opt@entry=0x0, operator_name=operator_name@entry=0x55b0c7d8dfa3 "preload_keys", lock_type=lock_type@entry=TL_READ_NO_INSERT, org_open_for_modify=org_open_for_modify@entry=false, repair_table_use_frm=false, extra_open_options=0, prepare_func=0x0, operator_func=&virtual table offset 752, view_operator_func=0x0) at /test/10.6_dbg/sql/sql_admin.cc:1240
      #23 0x000055b0c707b09b in mysql_preload_keys (thd=thd@entry=0x14a5e8000db8, tables=tables@entry=0x14a5e8012800) at /test/10.6_dbg/sql/sql_admin.cc:1368
      #24 0x000055b0c6f0d4be in mysql_execute_command (thd=thd@entry=0x14a5e8000db8) at /test/10.6_dbg/sql/sql_parse.cc:3976
      #25 0x000055b0c6ef921a in mysql_parse (thd=thd@entry=0x14a5e8000db8, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14a64c7363d0) at /test/10.6_dbg/sql/sql_parse.cc:7906
      #26 0x000055b0c6f0730b in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x14a5e8000db8, packet=packet@entry=0x14a5e801aac9 "", packet_length=packet_length@entry=41) at /test/10.6_dbg/sql/sql_class.h:1295
      #27 0x000055b0c6f0a63d in do_command (thd=0x14a5e8000db8) at /test/10.6_dbg/sql/sql_parse.cc:1365
      #28 0x000055b0c70661ab in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55b0ca0176e8, put_in_cache=put_in_cache@entry=true) at /test/10.6_dbg/sql/sql_connect.cc:1410
      #29 0x000055b0c70668af in handle_one_connection (arg=arg@entry=0x55b0ca0176e8) at /test/10.6_dbg/sql/sql_connect.cc:1312
      #30 0x000055b0c751a27d in pfs_spawn_thread (arg=0x55b0c9f02c38) at /test/10.6_dbg/storage/perfschema/pfs.cc:2201
      #31 0x000014a6580aa609 in start_thread (arg=<optimized out>) at pthread_create.c:477
      #32 0x000014a657c99293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
      

      Bug confirmed present in:
      MariaDB: 10.6.0 (dbg), 10.6.0 (opt)

      Bug (or feature/syntax) confirmed not present in:
      MariaDB: 10.2.37 (dbg), 10.2.37 (opt), 10.3.28 (dbg), 10.3.28 (opt), 10.4.18 (dbg), 10.4.18 (opt), 10.5.9 (dbg), 10.5.9 (opt)
      MySQL: 5.5.62 (dbg), 5.5.62 (opt), 5.6.51 (dbg), 5.6.51 (opt), 5.7.33 (dbg), 5.7.33 (opt), 8.0.23 (dbg), 8.0.23 (opt)

      Attachments

        Issue Links

          Activity

            Roel Roel Van de Paar added a comment - - edited

            thiru Interestingly, I got another assert on the same testcase on a bit older version from 26/1.

            10.6.0 3f871b339429441ad907ecf7dfabdc414797e664 (Debug)

            InnoDB: Failing assertion: page_offset(rec) <= page_header_get_field(page, PAGE_HEAP_TOP)
            

            10.6.0 3f871b339429441ad907ecf7dfabdc414797e664 (Debug)

            Core was generated by `/test/MD260121-mariadb-10.6.0-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:56
            [Current thread is 1 (Thread 0x147b98872700 (LWP 3535257))]
            (gdb) bt
            #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
            #1  0x00005651cb76e210 in my_write_core (sig=sig@entry=6) at /data/builds/10.6_dbg/mysys/stacktrace.c:424
            #2  0x00005651caf032d0 in handle_fatal_signal (sig=6) at /data/builds/10.6_dbg/sql/signal_handler.cc:330
            #3  <signal handler called>
            #4  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
            #5  0x0000147b9b430859 in __GI_abort () at abort.c:79
            #6  0x00005651cb54df5c in ut_dbg_assertion_failed (expr=expr@entry=0x5651cbb1a100 "page_offset(rec) <= page_header_get_field(page, PAGE_HEAP_TOP)", file=file@entry=0x5651cbb1a0c0 "/data/builds/10.6_dbg/storage/innobase/include/page0page.ic", line=line@entry=380) at /data/builds/10.6_dbg/storage/innobase/ut/ut0dbg.cc:60
            #7  0x00005651cb3470a0 in page_rec_check (rec=0x147b7867f905 "") at /data/builds/10.6_dbg/storage/innobase/include/page0page.ic:380
            #8  page_rec_is_user_rec (rec=0x147b7867f905 "") at /data/builds/10.6_dbg/storage/innobase/include/page0page.ic:157
            #9  0x00005651cb5b7f28 in btr_search_guess_on_hash (index=index@entry=0x147b5402e938, info=info@entry=0x147b5426acd8, tuple=tuple@entry=0x147b542ba9b8, mode=mode@entry=4, latch_mode=<optimized out>, cursor=cursor@entry=0x147b9886f4b0, ahi_latch=<optimized out>, mtr=<optimized out>) at /data/builds/10.6_dbg/storage/innobase/btr/btr0sea.cc:1145
            #10 0x00005651cb59646c in btr_cur_search_to_nth_level_func (index=index@entry=0x147b5402e938, level=0, tuple=tuple@entry=0x147b542ba9b8, mode=mode@entry=PAGE_CUR_LE, latch_mode=<optimized out>, latch_mode@entry=2, cursor=cursor@entry=0x147b9886f4b0, ahi_latch=0x0, mtr=0x147b9886fa70, autoinc=0) at /data/builds/10.6_dbg/storage/innobase/include/dict0mem.h:1171
            #11 0x00005651cb4542b8 in btr_pcur_open_low (index=index@entry=0x147b5402e938, level=<optimized out>, level@entry=0, tuple=tuple@entry=0x147b542ba9b8, mode=mode@entry=PAGE_CUR_LE, latch_mode=latch_mode@entry=2, cursor=cursor@entry=0x147b9886f4b0, autoinc=0, mtr=0x147b9886fa70) at /data/builds/10.6_dbg/storage/innobase/include/btr0pcur.ic:439
            #12 0x00005651cb459f79 in row_ins_clust_index_entry_low (flags=flags@entry=2, mode=mode@entry=2, index=index@entry=0x147b5402e938, n_uniq=n_uniq@entry=0, entry=entry@entry=0x147b542ba9b8, n_ext=n_ext@entry=0, thr=0x147b5426c7b0) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:2635
            #13 0x00005651cb45c78e in row_ins_clust_index_entry (index=index@entry=0x147b5402e938, entry=entry@entry=0x147b542ba9b8, thr=thr@entry=0x147b5426c7b0, n_ext=n_ext@entry=0) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:3258
            #14 0x00005651cb461344 in row_ins_index_entry (thr=0x147b5426c7b0, entry=0x147b542ba9b8, index=0x147b5402e938) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:3383
            #15 row_ins_index_entry_step (thr=0x147b5426c7b0, node=0x147b5426c580) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:3552
            #16 row_ins (thr=0x147b5426c7b0, node=0x147b5426c580) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:3698
            #17 row_ins_step (thr=thr@entry=0x147b5426c7b0) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:3840
            #18 0x00005651cb485bef in row_insert_for_mysql (mysql_rec=mysql_rec@entry=0x147b5426b3c8 "\375\001", prebuilt=0x147b5426c088, ins_mode=ROW_INS_NORMAL) at /data/builds/10.6_dbg/storage/innobase/row/row0mysql.cc:1427
            #19 0x00005651cb30ed8a in ha_innobase::write_row (this=0x147b5426b830, record=0x147b5426b3c8 "\375\001") at /data/builds/10.6_dbg/storage/innobase/handler/ha_innodb.cc:7338
            #20 0x00005651caf17618 in handler::ha_write_row (this=0x147b5426b830, buf=0x147b5426b3c8 "\375\001") at /data/builds/10.6_dbg/sql/handler.cc:7151
            #21 0x00005651cabed4ad in write_record (thd=0x147b54000db8, table=0x147b5402e4b8, info=info@entry=0x147b540145d0, sink=0x0) at /data/builds/10.6_dbg/sql/sql_insert.cc:2106
            #22 0x00005651cabed905 in select_insert::send_data (this=0x147b54014580, values=<optimized out>) at /data/builds/10.6_dbg/sql/sql_insert.cc:4076
            #23 0x00005651caca2ba8 in select_result_sink::send_data_with_check (sent=<optimized out>, u=<optimized out>, items=@0x147b54013140: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x147b540135a0, last = 0x147b540135a0, elements = 1}, <No data fields>}, this=<optimized out>) at /data/builds/10.6_dbg/sql/sql_class.h:5376
            #24 end_send (join=0x147b54014638, join_tab=0x147b54015c00, end_of_records=<optimized out>) at /data/builds/10.6_dbg/sql/sql_select.cc:21802
            #25 0x00005651cac7187e in evaluate_join_record (join=join@entry=0x147b54014638, join_tab=join_tab@entry=0x147b54015850, error=error@entry=0) at /data/builds/10.6_dbg/sql/sql_select.cc:20825
            #26 0x00005651cac87f2c in sub_select (join=0x147b54014638, join_tab=0x147b54015850, end_of_records=<optimized out>) at /data/builds/10.6_dbg/sql/sql_select.cc:20602
            #27 0x00005651cacc0a22 in do_select (procedure=0x0, join=0x147b54014638) at /data/builds/10.6_dbg/sql/sql_select.cc:20149
            #28 JOIN::exec_inner (this=this@entry=0x147b54014638) at /data/builds/10.6_dbg/sql/sql_select.cc:4476
            #29 0x00005651cacc0e92 in JOIN::exec (this=this@entry=0x147b54014638) at /data/builds/10.6_dbg/sql/sql_select.cc:4256
            #30 0x00005651cacbf0f2 in mysql_select (thd=thd@entry=0x147b54000db8, tables=0x147b540135f8, fields=@0x147b54013140: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x147b540135a0, last = 0x147b540135a0, elements = 1}, <No data fields>}, conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2202245794560, result=0x147b54014580, unit=0x147b54004f80, select_lex=0x147b54012ff0) at /data/builds/10.6_dbg/sql/sql_select.cc:4672
            #31 0x00005651cacbf3b8 in handle_select (thd=thd@entry=0x147b54000db8, lex=lex@entry=0x147b54004eb8, result=result@entry=0x147b54014580, setup_tables_done_option=setup_tables_done_option@entry=1073741824) at /data/builds/10.6_dbg/sql/sql_select.cc:417
            #32 0x00005651cac40e77 in mysql_execute_command (thd=thd@entry=0x147b54000db8) at /data/builds/10.6_dbg/sql/sql_parse.cc:4594
            #33 0x00005651cac2b15e in mysql_parse (thd=thd@entry=0x147b54000db8, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x147b988713d0) at /data/builds/10.6_dbg/sql/sql_parse.cc:7901
            #34 0x00005651cac3924f in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x147b54000db8, packet=packet@entry=0x147b5401aac9 "INSERT INTO t1(c) SELECT seq FROM seq_1_to_500", packet_length=packet_length@entry=46) at /data/builds/10.6_dbg/sql/sql_class.h:1294
            #35 0x00005651cac3c581 in do_command (thd=0x147b54000db8) at /data/builds/10.6_dbg/sql/sql_parse.cc:1365
            #36 0x00005651cad98079 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x5651cee1ba58, put_in_cache=put_in_cache@entry=true) at /data/builds/10.6_dbg/sql/sql_connect.cc:1410
            #37 0x00005651cad9877d in handle_one_connection (arg=arg@entry=0x5651cee1ba58) at /data/builds/10.6_dbg/sql/sql_connect.cc:1312
            #38 0x00005651cb24b43f in pfs_spawn_thread (arg=0x5651ced50108) at /data/builds/10.6_dbg/storage/perfschema/pfs.cc:2201
            #39 0x0000147b9b93e609 in start_thread (arg=<optimized out>) at pthread_create.c:477
            #40 0x0000147b9b52d293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            

            And the optimized stack:

            10.6.0 3f871b339429441ad907ecf7dfabdc414797e664 (Optimized)

            Core was generated by `/test/MD260121-mariadb-10.6.0-linux-x86_64-opt/bin/mysqld --no-defaults --core-'.
            Program terminated with signal SIGSEGV, Segmentation fault.
            #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=11)
                at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
            [Current thread is 1 (Thread 0x1539b40a6700 (LWP 3634251))]
            (gdb) bt
            #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=11) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
            #1  0x000055a40ee5205f in my_write_core (sig=sig@entry=11) at /data/builds/10.6_opt/mysys/stacktrace.c:424
            #2  0x000055a40e8c6730 in handle_fatal_signal (sig=11) at /data/builds/10.6_opt/sql/signal_handler.cc:330
            #3  <signal handler called>
            #4  0x000055a40ec7a796 in dict_table_t::not_redundant (this=<optimized out>) at /data/builds/10.6_opt/storage/innobase/include/dict0mem.h:1799
            #5  rec_get_offsets_func (rec=rec@entry=0x0, index=0x15397025aad0, offsets=0x1539b40a2460, leaf=leaf@entry=true, n_fields=n_fields@entry=1, heap=0x1539b40a2458) at /data/builds/10.6_opt/storage/innobase/rem/rem0rec.cc:830
            #6  0x000055a40ed30a64 in btr_search_check_guess (cursor=0x1539b40a35c0, can_only_compare_to_cursor_rec=<optimized out>, tuple=0x1539702887a0, mode=4) at /data/builds/10.6_opt/storage/innobase/btr/btr0sea.cc:863
            #7  0x000055a40ed321d5 in btr_search_guess_on_hash (index=index@entry=0x15397025aad0, info=info@entry=0x15397025ad80, tuple=tuple@entry=0x1539702887a0, mode=mode@entry=4, latch_mode=latch_mode@entry=2, cursor=cursor@entry=0x1539b40a35c0, ahi_latch=<optimized out>, mtr=<optimized out>) at /data/builds/10.6_opt/storage/innobase/include/mach0data.ic:363
            #8  0x000055a40ed2941b in btr_cur_search_to_nth_level_func (index=index@entry=0x15397025aad0, level=level@entry=0, tuple=tuple@entry=0x1539702887a0, mode=mode@entry=PAGE_CUR_LE, latch_mode=<optimized out>, latch_mode@entry=2, cursor=cursor@entry=0x1539b40a35c0, ahi_latch=0x0, mtr=0x1539b40a3d10, autoinc=0) at /data/builds/10.6_opt/storage/innobase/include/dict0mem.h:1171
            #9  0x000055a40ec91a36 in btr_pcur_open_low (level=0, mtr=0x1539b40a3d10, autoinc=<optimized out>, cursor=0x1539b40a35c0, latch_mode=2, mode=PAGE_CUR_LE, tuple=0x1539702887a0, index=0x15397025aad0) at /data/builds/10.6_opt/storage/innobase/include/btr0pcur.ic:439
            #10 row_ins_clust_index_entry_low (flags=2, mode=2, index=0x15397025aad0, n_uniq=0, entry=0x1539702887a0, n_ext=0, thr=0x15397025c470) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:2635
            #11 0x000055a40ec93669 in row_ins_clust_index_entry (index=0x15397025aad0, entry=0x1539702887a0, thr=0x15397025c470, n_ext=0) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:3258
            #12 0x000055a40ec93d51 in row_ins_index_entry (thr=0x15397025c470, entry=<optimized out>, index=<optimized out>) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:3383
            #13 row_ins_index_entry_step (thr=0x15397025c470, node=<optimized out>) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:3552
            #14 row_ins (thr=0x15397025c470, node=<optimized out>) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:3698
            #15 row_ins_step (thr=thr@entry=0x15397025c470) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:3840
            #16 0x000055a40eca445d in row_insert_for_mysql (mysql_rec=mysql_rec@entry=0x153970028ee8 "\375\001", prebuilt=0x15397025bd70, ins_mode=ROW_INS_NORMAL) at /data/builds/10.6_opt/storage/innobase/row/row0mysql.cc:1427
            #17 0x000055a40ebf4c5b in ha_innobase::write_row (this=0x15397025b540, record=0x153970028ee8 "\375\001") at /data/builds/10.6_opt/storage/innobase/handler/ha_innodb.cc:7338
            #18 0x000055a40e8d54f8 in handler::ha_write_row (this=0x15397025b540, buf=0x153970028ee8 "\375\001") at /data/builds/10.6_opt/sql/handler.cc:7151
            #19 0x000055a40e6795cd in write_record (thd=0x153970000c58, table=0x15397025b138, info=info@entry=0x1539700122f0, sink=0x0) at /data/builds/10.6_opt/sql/sql_insert.cc:2106
            #20 0x000055a40e67a1c3 in select_insert::send_data (this=0x1539700122a0, values=<optimized out>) at /data/builds/10.6_opt/sql/sql_insert.cc:4076
            #21 0x000055a40e70975e in select_result_sink::send_data_with_check (u=<optimized out>, sent=<optimized out>, items=@0x153970010e60: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x1539700112c0, last = 0x1539700112c0, elements = 1}, <No data fields>}, this=<optimized out>) at /data/builds/10.6_opt/sql/sql_class.h:5376
            #22 select_result_sink::send_data_with_check (sent=<optimized out>, u=<optimized out>, items=@0x153970010e60: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x1539700112c0, last = 0x1539700112c0, elements = 1}, <No data fields>}, this=<optimized out>) at /data/builds/10.6_opt/sql/sql_class.h:5366
            #23 end_send (join=0x153970012358, join_tab=0x153970013920, end_of_records=<optimized out>) at /data/builds/10.6_opt/sql/sql_select.cc:21802
            #24 0x000055a40e6e0867 in evaluate_join_record (join=join@entry=0x153970012358, join_tab=join_tab@entry=0x153970013570, error=<optimized out>) at /data/builds/10.6_opt/sql/sql_select.cc:20825
            #25 0x000055a40e6f262b in sub_select (end_of_records=false, join_tab=0x153970013570, join=0x153970012358) at /data/builds/10.6_opt/sql/sql_select.cc:20602
            #26 sub_select (join=0x153970012358, join_tab=0x153970013570, end_of_records=false) at /data/builds/10.6_opt/sql/sql_select.cc:20531
            #27 0x000055a40e720ae2 in do_select (procedure=<optimized out>, join=0x153970012358) at /data/builds/10.6_opt/sql/sql_select.cc:20149
            #28 JOIN::exec_inner (this=0x153970012358) at /data/builds/10.6_opt/sql/sql_select.cc:4476
            #29 0x000055a40e720d78 in JOIN::exec (this=this@entry=0x153970012358) at /data/builds/10.6_opt/sql/sql_select.cc:4256
            #30 0x000055a40e71edf8 in mysql_select (thd=0x153970000c58, tables=0x153970011318, fields=<optimized out>, conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2202245794560, result=0x1539700122a0, unit=0x153970004c60, select_lex=0x153970010d10) at /data/builds/10.6_opt/sql/sql_select.cc:4672
            #31 0x000055a40e71f7f7 in handle_select (thd=thd@entry=0x153970000c58, lex=lex@entry=0x153970004b98, result=result@entry=0x1539700122a0, setup_tables_done_option=setup_tables_done_option@entry=1073741824) at /data/builds/10.6_opt/sql/sql_select.cc:417
            #32 0x000055a40e6bd8bf in mysql_execute_command (thd=0x153970000c58) at /data/builds/10.6_opt/sql/sql_parse.cc:4594
            #33 0x000055a40e6a9336 in mysql_parse (thd=0x153970000c58, rawbuf=<optimized out>, length=<optimized out>, parser_state=<optimized out>) at /data/builds/10.6_opt/sql/sql_parse.cc:7901
            #34 0x000055a40e6b4c18 in dispatch_command (command=COM_QUERY, thd=0x153970000c58, packet=0x153970008049 "INSERT INTO t1(c) SELECT seq FROM seq_1_to_500", packet_length=46) at /data/builds/10.6_opt/sql/sql_class.h:1294
            #35 0x000055a40e6b7016 in do_command (thd=0x153970000c58) at /data/builds/10.6_opt/sql/sql_parse.cc:1365
            #36 0x000055a40e7bc0a1 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55a4109cd638, put_in_cache=put_in_cache@entry=true) at /data/builds/10.6_opt/sql/sql_connect.cc:1410
            #37 0x000055a40e7bc51d in handle_one_connection (arg=arg@entry=0x55a4109cd638) at /data/builds/10.6_opt/sql/sql_connect.cc:1312
            #38 0x000055a40eb452c9 in pfs_spawn_thread (arg=0x55a41093b178) at /data/builds/10.6_opt/storage/perfschema/pfs.cc:2201
            #39 0x00001539b618e609 in start_thread (arg=<optimized out>) at pthread_create.c:477
            #40 0x00001539b5d7d293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            

            Roel Roel Van de Paar added a comment - - edited thiru Interestingly, I got another assert on the same testcase on a bit older version from 26/1. 10.6.0 3f871b339429441ad907ecf7dfabdc414797e664 (Debug) InnoDB: Failing assertion: page_offset(rec) <= page_header_get_field(page, PAGE_HEAP_TOP) 10.6.0 3f871b339429441ad907ecf7dfabdc414797e664 (Debug) Core was generated by `/test/MD260121-mariadb-10.6.0-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:56 [Current thread is 1 (Thread 0x147b98872700 (LWP 3535257))] (gdb) bt #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56 #1 0x00005651cb76e210 in my_write_core (sig=sig@entry=6) at /data/builds/10.6_dbg/mysys/stacktrace.c:424 #2 0x00005651caf032d0 in handle_fatal_signal (sig=6) at /data/builds/10.6_dbg/sql/signal_handler.cc:330 #3 <signal handler called> #4 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 #5 0x0000147b9b430859 in __GI_abort () at abort.c:79 #6 0x00005651cb54df5c in ut_dbg_assertion_failed (expr=expr@entry=0x5651cbb1a100 "page_offset(rec) <= page_header_get_field(page, PAGE_HEAP_TOP)", file=file@entry=0x5651cbb1a0c0 "/data/builds/10.6_dbg/storage/innobase/include/page0page.ic", line=line@entry=380) at /data/builds/10.6_dbg/storage/innobase/ut/ut0dbg.cc:60 #7 0x00005651cb3470a0 in page_rec_check (rec=0x147b7867f905 "") at /data/builds/10.6_dbg/storage/innobase/include/page0page.ic:380 #8 page_rec_is_user_rec (rec=0x147b7867f905 "") at /data/builds/10.6_dbg/storage/innobase/include/page0page.ic:157 #9 0x00005651cb5b7f28 in btr_search_guess_on_hash (index=index@entry=0x147b5402e938, info=info@entry=0x147b5426acd8, tuple=tuple@entry=0x147b542ba9b8, mode=mode@entry=4, latch_mode=<optimized out>, cursor=cursor@entry=0x147b9886f4b0, ahi_latch=<optimized out>, mtr=<optimized out>) at /data/builds/10.6_dbg/storage/innobase/btr/btr0sea.cc:1145 #10 0x00005651cb59646c in btr_cur_search_to_nth_level_func (index=index@entry=0x147b5402e938, level=0, tuple=tuple@entry=0x147b542ba9b8, mode=mode@entry=PAGE_CUR_LE, latch_mode=<optimized out>, latch_mode@entry=2, cursor=cursor@entry=0x147b9886f4b0, ahi_latch=0x0, mtr=0x147b9886fa70, autoinc=0) at /data/builds/10.6_dbg/storage/innobase/include/dict0mem.h:1171 #11 0x00005651cb4542b8 in btr_pcur_open_low (index=index@entry=0x147b5402e938, level=<optimized out>, level@entry=0, tuple=tuple@entry=0x147b542ba9b8, mode=mode@entry=PAGE_CUR_LE, latch_mode=latch_mode@entry=2, cursor=cursor@entry=0x147b9886f4b0, autoinc=0, mtr=0x147b9886fa70) at /data/builds/10.6_dbg/storage/innobase/include/btr0pcur.ic:439 #12 0x00005651cb459f79 in row_ins_clust_index_entry_low (flags=flags@entry=2, mode=mode@entry=2, index=index@entry=0x147b5402e938, n_uniq=n_uniq@entry=0, entry=entry@entry=0x147b542ba9b8, n_ext=n_ext@entry=0, thr=0x147b5426c7b0) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:2635 #13 0x00005651cb45c78e in row_ins_clust_index_entry (index=index@entry=0x147b5402e938, entry=entry@entry=0x147b542ba9b8, thr=thr@entry=0x147b5426c7b0, n_ext=n_ext@entry=0) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:3258 #14 0x00005651cb461344 in row_ins_index_entry (thr=0x147b5426c7b0, entry=0x147b542ba9b8, index=0x147b5402e938) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:3383 #15 row_ins_index_entry_step (thr=0x147b5426c7b0, node=0x147b5426c580) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:3552 #16 row_ins (thr=0x147b5426c7b0, node=0x147b5426c580) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:3698 #17 row_ins_step (thr=thr@entry=0x147b5426c7b0) at /data/builds/10.6_dbg/storage/innobase/row/row0ins.cc:3840 #18 0x00005651cb485bef in row_insert_for_mysql (mysql_rec=mysql_rec@entry=0x147b5426b3c8 "\375\001", prebuilt=0x147b5426c088, ins_mode=ROW_INS_NORMAL) at /data/builds/10.6_dbg/storage/innobase/row/row0mysql.cc:1427 #19 0x00005651cb30ed8a in ha_innobase::write_row (this=0x147b5426b830, record=0x147b5426b3c8 "\375\001") at /data/builds/10.6_dbg/storage/innobase/handler/ha_innodb.cc:7338 #20 0x00005651caf17618 in handler::ha_write_row (this=0x147b5426b830, buf=0x147b5426b3c8 "\375\001") at /data/builds/10.6_dbg/sql/handler.cc:7151 #21 0x00005651cabed4ad in write_record (thd=0x147b54000db8, table=0x147b5402e4b8, info=info@entry=0x147b540145d0, sink=0x0) at /data/builds/10.6_dbg/sql/sql_insert.cc:2106 #22 0x00005651cabed905 in select_insert::send_data (this=0x147b54014580, values=<optimized out>) at /data/builds/10.6_dbg/sql/sql_insert.cc:4076 #23 0x00005651caca2ba8 in select_result_sink::send_data_with_check (sent=<optimized out>, u=<optimized out>, items=@0x147b54013140: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x147b540135a0, last = 0x147b540135a0, elements = 1}, <No data fields>}, this=<optimized out>) at /data/builds/10.6_dbg/sql/sql_class.h:5376 #24 end_send (join=0x147b54014638, join_tab=0x147b54015c00, end_of_records=<optimized out>) at /data/builds/10.6_dbg/sql/sql_select.cc:21802 #25 0x00005651cac7187e in evaluate_join_record (join=join@entry=0x147b54014638, join_tab=join_tab@entry=0x147b54015850, error=error@entry=0) at /data/builds/10.6_dbg/sql/sql_select.cc:20825 #26 0x00005651cac87f2c in sub_select (join=0x147b54014638, join_tab=0x147b54015850, end_of_records=<optimized out>) at /data/builds/10.6_dbg/sql/sql_select.cc:20602 #27 0x00005651cacc0a22 in do_select (procedure=0x0, join=0x147b54014638) at /data/builds/10.6_dbg/sql/sql_select.cc:20149 #28 JOIN::exec_inner (this=this@entry=0x147b54014638) at /data/builds/10.6_dbg/sql/sql_select.cc:4476 #29 0x00005651cacc0e92 in JOIN::exec (this=this@entry=0x147b54014638) at /data/builds/10.6_dbg/sql/sql_select.cc:4256 #30 0x00005651cacbf0f2 in mysql_select (thd=thd@entry=0x147b54000db8, tables=0x147b540135f8, fields=@0x147b54013140: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x147b540135a0, last = 0x147b540135a0, elements = 1}, <No data fields>}, conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2202245794560, result=0x147b54014580, unit=0x147b54004f80, select_lex=0x147b54012ff0) at /data/builds/10.6_dbg/sql/sql_select.cc:4672 #31 0x00005651cacbf3b8 in handle_select (thd=thd@entry=0x147b54000db8, lex=lex@entry=0x147b54004eb8, result=result@entry=0x147b54014580, setup_tables_done_option=setup_tables_done_option@entry=1073741824) at /data/builds/10.6_dbg/sql/sql_select.cc:417 #32 0x00005651cac40e77 in mysql_execute_command (thd=thd@entry=0x147b54000db8) at /data/builds/10.6_dbg/sql/sql_parse.cc:4594 #33 0x00005651cac2b15e in mysql_parse (thd=thd@entry=0x147b54000db8, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x147b988713d0) at /data/builds/10.6_dbg/sql/sql_parse.cc:7901 #34 0x00005651cac3924f in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x147b54000db8, packet=packet@entry=0x147b5401aac9 "INSERT INTO t1(c) SELECT seq FROM seq_1_to_500", packet_length=packet_length@entry=46) at /data/builds/10.6_dbg/sql/sql_class.h:1294 #35 0x00005651cac3c581 in do_command (thd=0x147b54000db8) at /data/builds/10.6_dbg/sql/sql_parse.cc:1365 #36 0x00005651cad98079 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x5651cee1ba58, put_in_cache=put_in_cache@entry=true) at /data/builds/10.6_dbg/sql/sql_connect.cc:1410 #37 0x00005651cad9877d in handle_one_connection (arg=arg@entry=0x5651cee1ba58) at /data/builds/10.6_dbg/sql/sql_connect.cc:1312 #38 0x00005651cb24b43f in pfs_spawn_thread (arg=0x5651ced50108) at /data/builds/10.6_dbg/storage/perfschema/pfs.cc:2201 #39 0x0000147b9b93e609 in start_thread (arg=<optimized out>) at pthread_create.c:477 #40 0x0000147b9b52d293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 And the optimized stack: 10.6.0 3f871b339429441ad907ecf7dfabdc414797e664 (Optimized) Core was generated by `/test/MD260121-mariadb-10.6.0-linux-x86_64-opt/bin/mysqld --no-defaults --core-'. Program terminated with signal SIGSEGV, Segmentation fault. #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=11) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56 [Current thread is 1 (Thread 0x1539b40a6700 (LWP 3634251))] (gdb) bt #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=11) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56 #1 0x000055a40ee5205f in my_write_core (sig=sig@entry=11) at /data/builds/10.6_opt/mysys/stacktrace.c:424 #2 0x000055a40e8c6730 in handle_fatal_signal (sig=11) at /data/builds/10.6_opt/sql/signal_handler.cc:330 #3 <signal handler called> #4 0x000055a40ec7a796 in dict_table_t::not_redundant (this=<optimized out>) at /data/builds/10.6_opt/storage/innobase/include/dict0mem.h:1799 #5 rec_get_offsets_func (rec=rec@entry=0x0, index=0x15397025aad0, offsets=0x1539b40a2460, leaf=leaf@entry=true, n_fields=n_fields@entry=1, heap=0x1539b40a2458) at /data/builds/10.6_opt/storage/innobase/rem/rem0rec.cc:830 #6 0x000055a40ed30a64 in btr_search_check_guess (cursor=0x1539b40a35c0, can_only_compare_to_cursor_rec=<optimized out>, tuple=0x1539702887a0, mode=4) at /data/builds/10.6_opt/storage/innobase/btr/btr0sea.cc:863 #7 0x000055a40ed321d5 in btr_search_guess_on_hash (index=index@entry=0x15397025aad0, info=info@entry=0x15397025ad80, tuple=tuple@entry=0x1539702887a0, mode=mode@entry=4, latch_mode=latch_mode@entry=2, cursor=cursor@entry=0x1539b40a35c0, ahi_latch=<optimized out>, mtr=<optimized out>) at /data/builds/10.6_opt/storage/innobase/include/mach0data.ic:363 #8 0x000055a40ed2941b in btr_cur_search_to_nth_level_func (index=index@entry=0x15397025aad0, level=level@entry=0, tuple=tuple@entry=0x1539702887a0, mode=mode@entry=PAGE_CUR_LE, latch_mode=<optimized out>, latch_mode@entry=2, cursor=cursor@entry=0x1539b40a35c0, ahi_latch=0x0, mtr=0x1539b40a3d10, autoinc=0) at /data/builds/10.6_opt/storage/innobase/include/dict0mem.h:1171 #9 0x000055a40ec91a36 in btr_pcur_open_low (level=0, mtr=0x1539b40a3d10, autoinc=<optimized out>, cursor=0x1539b40a35c0, latch_mode=2, mode=PAGE_CUR_LE, tuple=0x1539702887a0, index=0x15397025aad0) at /data/builds/10.6_opt/storage/innobase/include/btr0pcur.ic:439 #10 row_ins_clust_index_entry_low (flags=2, mode=2, index=0x15397025aad0, n_uniq=0, entry=0x1539702887a0, n_ext=0, thr=0x15397025c470) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:2635 #11 0x000055a40ec93669 in row_ins_clust_index_entry (index=0x15397025aad0, entry=0x1539702887a0, thr=0x15397025c470, n_ext=0) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:3258 #12 0x000055a40ec93d51 in row_ins_index_entry (thr=0x15397025c470, entry=<optimized out>, index=<optimized out>) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:3383 #13 row_ins_index_entry_step (thr=0x15397025c470, node=<optimized out>) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:3552 #14 row_ins (thr=0x15397025c470, node=<optimized out>) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:3698 #15 row_ins_step (thr=thr@entry=0x15397025c470) at /data/builds/10.6_opt/storage/innobase/row/row0ins.cc:3840 #16 0x000055a40eca445d in row_insert_for_mysql (mysql_rec=mysql_rec@entry=0x153970028ee8 "\375\001", prebuilt=0x15397025bd70, ins_mode=ROW_INS_NORMAL) at /data/builds/10.6_opt/storage/innobase/row/row0mysql.cc:1427 #17 0x000055a40ebf4c5b in ha_innobase::write_row (this=0x15397025b540, record=0x153970028ee8 "\375\001") at /data/builds/10.6_opt/storage/innobase/handler/ha_innodb.cc:7338 #18 0x000055a40e8d54f8 in handler::ha_write_row (this=0x15397025b540, buf=0x153970028ee8 "\375\001") at /data/builds/10.6_opt/sql/handler.cc:7151 #19 0x000055a40e6795cd in write_record (thd=0x153970000c58, table=0x15397025b138, info=info@entry=0x1539700122f0, sink=0x0) at /data/builds/10.6_opt/sql/sql_insert.cc:2106 #20 0x000055a40e67a1c3 in select_insert::send_data (this=0x1539700122a0, values=<optimized out>) at /data/builds/10.6_opt/sql/sql_insert.cc:4076 #21 0x000055a40e70975e in select_result_sink::send_data_with_check (u=<optimized out>, sent=<optimized out>, items=@0x153970010e60: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x1539700112c0, last = 0x1539700112c0, elements = 1}, <No data fields>}, this=<optimized out>) at /data/builds/10.6_opt/sql/sql_class.h:5376 #22 select_result_sink::send_data_with_check (sent=<optimized out>, u=<optimized out>, items=@0x153970010e60: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x1539700112c0, last = 0x1539700112c0, elements = 1}, <No data fields>}, this=<optimized out>) at /data/builds/10.6_opt/sql/sql_class.h:5366 #23 end_send (join=0x153970012358, join_tab=0x153970013920, end_of_records=<optimized out>) at /data/builds/10.6_opt/sql/sql_select.cc:21802 #24 0x000055a40e6e0867 in evaluate_join_record (join=join@entry=0x153970012358, join_tab=join_tab@entry=0x153970013570, error=<optimized out>) at /data/builds/10.6_opt/sql/sql_select.cc:20825 #25 0x000055a40e6f262b in sub_select (end_of_records=false, join_tab=0x153970013570, join=0x153970012358) at /data/builds/10.6_opt/sql/sql_select.cc:20602 #26 sub_select (join=0x153970012358, join_tab=0x153970013570, end_of_records=false) at /data/builds/10.6_opt/sql/sql_select.cc:20531 #27 0x000055a40e720ae2 in do_select (procedure=<optimized out>, join=0x153970012358) at /data/builds/10.6_opt/sql/sql_select.cc:20149 #28 JOIN::exec_inner (this=0x153970012358) at /data/builds/10.6_opt/sql/sql_select.cc:4476 #29 0x000055a40e720d78 in JOIN::exec (this=this@entry=0x153970012358) at /data/builds/10.6_opt/sql/sql_select.cc:4256 #30 0x000055a40e71edf8 in mysql_select (thd=0x153970000c58, tables=0x153970011318, fields=<optimized out>, conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2202245794560, result=0x1539700122a0, unit=0x153970004c60, select_lex=0x153970010d10) at /data/builds/10.6_opt/sql/sql_select.cc:4672 #31 0x000055a40e71f7f7 in handle_select (thd=thd@entry=0x153970000c58, lex=lex@entry=0x153970004b98, result=result@entry=0x1539700122a0, setup_tables_done_option=setup_tables_done_option@entry=1073741824) at /data/builds/10.6_opt/sql/sql_select.cc:417 #32 0x000055a40e6bd8bf in mysql_execute_command (thd=0x153970000c58) at /data/builds/10.6_opt/sql/sql_parse.cc:4594 #33 0x000055a40e6a9336 in mysql_parse (thd=0x153970000c58, rawbuf=<optimized out>, length=<optimized out>, parser_state=<optimized out>) at /data/builds/10.6_opt/sql/sql_parse.cc:7901 #34 0x000055a40e6b4c18 in dispatch_command (command=COM_QUERY, thd=0x153970000c58, packet=0x153970008049 "INSERT INTO t1(c) SELECT seq FROM seq_1_to_500", packet_length=46) at /data/builds/10.6_opt/sql/sql_class.h:1294 #35 0x000055a40e6b7016 in do_command (thd=0x153970000c58) at /data/builds/10.6_opt/sql/sql_parse.cc:1365 #36 0x000055a40e7bc0a1 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55a4109cd638, put_in_cache=put_in_cache@entry=true) at /data/builds/10.6_opt/sql/sql_connect.cc:1410 #37 0x000055a40e7bc51d in handle_one_connection (arg=arg@entry=0x55a4109cd638) at /data/builds/10.6_opt/sql/sql_connect.cc:1312 #38 0x000055a40eb452c9 in pfs_spawn_thread (arg=0x55a41093b178) at /data/builds/10.6_opt/storage/perfschema/pfs.cc:2201 #39 0x00001539b618e609 in start_thread (arg=<optimized out>) at pthread_create.c:477 #40 0x00001539b5d7d293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            Roel Roel Van de Paar added a comment - - edited

            Corrupt message (all builds inc post-patch): It would seem that this is to be expected, as the DDL of t3 contains a non-existing table (and this is shown earlier in the output).

            10.6.0 3f871b339429441ad907ecf7dfabdc414797e664 and 786bc312b85e58857cb26a24ab6e997ba0fdfc32 (for both optimized + debug builds)

            10.6.0>LOAD INDEX INTO CACHE t3 KEY(b),t2 KEY(d);
            +---------+--------------+----------+-----------------------------------------------------------------------------------------------------+
            | Table   | Op           | Msg_type | Msg_text                                                                                            |
            +---------+--------------+----------+-----------------------------------------------------------------------------------------------------+
            | test.t3 | preload_keys | Error    | Table 'test.t2' doesn't exist                                                                       |
            | test.t3 | preload_keys | Error    | Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist |
            | test.t3 | preload_keys | error    | Corrupt                                                                                             |
            | test.t2 | preload_keys | Error    | Table 'test.t2' doesn't exist                                                                       |
            | test.t2 | preload_keys | status   | Operation failed                                                                                    |
            +---------+--------------+----------+-----------------------------------------------------------------------------------------------------+
            5 rows in set (0.000 sec)
             
            10.6.0>INSERT INTO t1(c) SELECT seq FROM seq_1_to_500;
            ERROR 2013 (HY000): Lost connection to MySQL server during query
            

            Roel Roel Van de Paar added a comment - - edited Corrupt message (all builds inc post-patch): It would seem that this is to be expected, as the DDL of t3 contains a non-existing table (and this is shown earlier in the output). 10.6.0 3f871b339429441ad907ecf7dfabdc414797e664 and 786bc312b85e58857cb26a24ab6e997ba0fdfc32 (for both optimized + debug builds) 10.6.0>LOAD INDEX INTO CACHE t3 KEY(b),t2 KEY(d); +---------+--------------+----------+-----------------------------------------------------------------------------------------------------+ | Table | Op | Msg_type | Msg_text | +---------+--------------+----------+-----------------------------------------------------------------------------------------------------+ | test.t3 | preload_keys | Error | Table 'test.t2' doesn't exist | | test.t3 | preload_keys | Error | Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist | | test.t3 | preload_keys | error | Corrupt | | test.t2 | preload_keys | Error | Table 'test.t2' doesn't exist | | test.t2 | preload_keys | status | Operation failed | +---------+--------------+----------+-----------------------------------------------------------------------------------------------------+ 5 rows in set (0.000 sec)   10.6.0>INSERT INTO t1(c) SELECT seq FROM seq_1_to_500; ERROR 2013 (HY000): Lost connection to MySQL server during query
            Roel Roel Van de Paar added a comment - - edited

            Retesting on 10/2 build gives yet another stack. I assume stacks are semi-random?

            10.6.0 786bc312b85e58857cb26a24ab6e997ba0fdfc32 (Optimized)

            Core was generated by `/test/MD100221-mariadb-10.6.0-linux-x86_64-opt/bin/mysqld --no-defaults --core-'.
            Program terminated with signal SIGSEGV, Segmentation fault.
            #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=11)
                at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
            [Current thread is 1 (Thread 0x14af6c1bf700 (LWP 3716499))]
            (gdb) bt
            #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=11) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
            #1  0x000055b08d38ed8f in my_write_core (sig=sig@entry=11) at /test/10.6_opt/mysys/stacktrace.c:424
            #2  0x000055b08ce04520 in handle_fatal_signal (sig=11) at /test/10.6_opt/sql/signal_handler.cc:330
            #3  <signal handler called>
            #4  0x000055b08d26f97c in btr_search_guess_on_hash (index=index@entry=0x14af3c25aae0, info=info@entry=0x14af3c25ad90, tuple=tuple@entry=0x14af3c288780, mode=mode@entry=4, latch_mode=latch_mode@entry=2, cursor=cursor@entry=0x14af6c1bc5c0, ahi_latch=0x0, mtr=0x14af6c1bcd10) at /test/10.6_opt/storage/innobase/btr/btr0sea.cc:1092
            #5  0x000055b08d266d4b in btr_cur_search_to_nth_level_func (index=index@entry=0x14af3c25aae0, level=level@entry=0, tuple=tuple@entry=0x14af3c288780, mode=mode@entry=PAGE_CUR_LE, latch_mode=<optimized out>, latch_mode@entry=2, cursor=cursor@entry=0x14af6c1bc5c0, ahi_latch=0x0, mtr=0x14af6c1bcd10, autoinc=0) at /test/10.6_opt/storage/innobase/include/dict0mem.h:1171
            #6  0x000055b08d1cf386 in btr_pcur_open_low (level=0, mtr=0x14af6c1bcd10, autoinc=<optimized out>, cursor=0x14af6c1bc5c0, latch_mode=2, mode=PAGE_CUR_LE, tuple=0x14af3c288780, index=0x14af3c25aae0) at /test/10.6_opt/storage/innobase/include/btr0pcur.ic:439
            #7  row_ins_clust_index_entry_low (flags=2, mode=2, index=0x14af3c25aae0, n_uniq=0, entry=0x14af3c288780, n_ext=0, thr=0x14af3c25c478) at /test/10.6_opt/storage/innobase/row/row0ins.cc:2632
            #8  0x000055b08d1d0fb9 in row_ins_clust_index_entry (index=0x14af3c25aae0, entry=0x14af3c288780, thr=0x14af3c25c478, n_ext=0) at /test/10.6_opt/storage/innobase/row/row0ins.cc:3255
            #9  0x000055b08d1d16a1 in row_ins_index_entry (thr=0x14af3c25c478, entry=<optimized out>, index=<optimized out>) at /test/10.6_opt/storage/innobase/row/row0ins.cc:3380
            #10 row_ins_index_entry_step (thr=0x14af3c25c478, node=<optimized out>) at /test/10.6_opt/storage/innobase/row/row0ins.cc:3549
            #11 row_ins (thr=0x14af3c25c478, node=<optimized out>) at /test/10.6_opt/storage/innobase/row/row0ins.cc:3695
            #12 row_ins_step (thr=thr@entry=0x14af3c25c478) at /test/10.6_opt/storage/innobase/row/row0ins.cc:3837
            #13 0x000055b08d1e1c3d in row_insert_for_mysql (mysql_rec=mysql_rec@entry=0x14af3c028ef8 "\375\001", prebuilt=0x14af3c25bd80, ins_mode=ROW_INS_NORMAL) at /test/10.6_opt/storage/innobase/row/row0mysql.cc:1384
            #14 0x000055b08d1338eb in ha_innobase::write_row (this=0x14af3c25b550, record=0x14af3c028ef8 "\375\001") at /test/10.6_opt/storage/innobase/handler/ha_innodb.cc:7361
            #15 0x000055b08ce132e8 in handler::ha_write_row (this=0x14af3c25b550, buf=0x14af3c028ef8 "\375\001") at /test/10.6_opt/sql/handler.cc:7151
            #16 0x000055b08cbb730d in write_record (thd=0x14af3c000c58, table=0x14af3c25b148, info=info@entry=0x14af3c012300, sink=0x0) at /test/10.6_opt/sql/sql_insert.cc:2106
            #17 0x000055b08cbb7f03 in select_insert::send_data (this=0x14af3c0122b0, values=<optimized out>) at /test/10.6_opt/sql/sql_insert.cc:4076
            #18 0x000055b08cc475fe in select_result_sink::send_data_with_check (u=<optimized out>, sent=<optimized out>, items=@0x14af3c010e70: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14af3c0112d0, last = 0x14af3c0112d0, elements = 1}, <No data fields>}, this=<optimized out>) at /test/10.6_opt/sql/sql_class.h:5377
            #19 select_result_sink::send_data_with_check (sent=<optimized out>, u=<optimized out>, items=@0x14af3c010e70: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14af3c0112d0, last = 0x14af3c0112d0, elements = 1}, <No data fields>}, this=<optimized out>) at /test/10.6_opt/sql/sql_class.h:5367
            #20 end_send (join=0x14af3c012368, join_tab=0x14af3c013930, end_of_records=<optimized out>) at /test/10.6_opt/sql/sql_select.cc:21859
            #21 0x000055b08cc1e617 in evaluate_join_record (join=join@entry=0x14af3c012368, join_tab=join_tab@entry=0x14af3c013580, error=<optimized out>) at /test/10.6_opt/sql/sql_select.cc:20882
            #22 0x000055b08cc304cb in sub_select (end_of_records=false, join_tab=0x14af3c013580, join=0x14af3c012368) at /test/10.6_opt/sql/sql_select.cc:20659
            #23 sub_select (join=0x14af3c012368, join_tab=0x14af3c013580, end_of_records=false) at /test/10.6_opt/sql/sql_select.cc:20588
            #24 0x000055b08cc5e8c2 in do_select (procedure=<optimized out>, join=0x14af3c012368) at /test/10.6_opt/sql/sql_select.cc:20206
            #25 JOIN::exec_inner (this=0x14af3c012368) at /test/10.6_opt/sql/sql_select.cc:4476
            #26 0x000055b08cc5eb58 in JOIN::exec (this=this@entry=0x14af3c012368) at /test/10.6_opt/sql/sql_select.cc:4256
            #27 0x000055b08cc5cbd8 in mysql_select (thd=0x14af3c000c58, tables=0x14af3c011328, fields=<optimized out>, conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2202245794560, result=0x14af3c0122b0, unit=0x14af3c004c68, select_lex=0x14af3c010d20) at /test/10.6_opt/sql/sql_select.cc:4729
            #28 0x000055b08cc5d5d7 in handle_select (thd=thd@entry=0x14af3c000c58, lex=lex@entry=0x14af3c004ba0, result=result@entry=0x14af3c0122b0, setup_tables_done_option=setup_tables_done_option@entry=1073741824) at /test/10.6_opt/sql/sql_select.cc:417
            #29 0x000055b08cbfb8e5 in mysql_execute_command (thd=0x14af3c000c58) at /test/10.6_opt/sql/sql_parse.cc:4599
            #30 0x000055b08cbe7096 in mysql_parse (thd=0x14af3c000c58, rawbuf=<optimized out>, length=<optimized out>, parser_state=<optimized out>) at /test/10.6_opt/sql/sql_parse.cc:7906
            #31 0x000055b08cbf2978 in dispatch_command (command=COM_QUERY, thd=0x14af3c000c58, packet=0x14af3c008059 "INSERT INTO t1(c) SELECT seq FROM seq_1_to_500", packet_length=46) at /test/10.6_opt/sql/sql_class.h:1295
            #32 0x000055b08cbf4d76 in do_command (thd=0x14af3c000c58) at /test/10.6_opt/sql/sql_parse.cc:1365
            #33 0x000055b08ccf9e81 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55b08fa98358, put_in_cache=put_in_cache@entry=true) at /test/10.6_opt/sql/sql_connect.cc:1410
            #34 0x000055b08ccfa2fd in handle_one_connection (arg=arg@entry=0x55b08fa98358) at /test/10.6_opt/sql/sql_connect.cc:1312
            #35 0x000055b08d083b49 in pfs_spawn_thread (arg=0x55b08fa1f118) at /test/10.6_opt/storage/perfschema/pfs.cc:2201
            #36 0x000014af81370609 in start_thread (arg=<optimized out>) at pthread_create.c:477
            #37 0x000014af80f5f293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            

            Roel Roel Van de Paar added a comment - - edited Retesting on 10/2 build gives yet another stack. I assume stacks are semi-random? 10.6.0 786bc312b85e58857cb26a24ab6e997ba0fdfc32 (Optimized) Core was generated by `/test/MD100221-mariadb-10.6.0-linux-x86_64-opt/bin/mysqld --no-defaults --core-'. Program terminated with signal SIGSEGV, Segmentation fault. #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=11) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56 [Current thread is 1 (Thread 0x14af6c1bf700 (LWP 3716499))] (gdb) bt #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=11) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56 #1 0x000055b08d38ed8f in my_write_core (sig=sig@entry=11) at /test/10.6_opt/mysys/stacktrace.c:424 #2 0x000055b08ce04520 in handle_fatal_signal (sig=11) at /test/10.6_opt/sql/signal_handler.cc:330 #3 <signal handler called> #4 0x000055b08d26f97c in btr_search_guess_on_hash (index=index@entry=0x14af3c25aae0, info=info@entry=0x14af3c25ad90, tuple=tuple@entry=0x14af3c288780, mode=mode@entry=4, latch_mode=latch_mode@entry=2, cursor=cursor@entry=0x14af6c1bc5c0, ahi_latch=0x0, mtr=0x14af6c1bcd10) at /test/10.6_opt/storage/innobase/btr/btr0sea.cc:1092 #5 0x000055b08d266d4b in btr_cur_search_to_nth_level_func (index=index@entry=0x14af3c25aae0, level=level@entry=0, tuple=tuple@entry=0x14af3c288780, mode=mode@entry=PAGE_CUR_LE, latch_mode=<optimized out>, latch_mode@entry=2, cursor=cursor@entry=0x14af6c1bc5c0, ahi_latch=0x0, mtr=0x14af6c1bcd10, autoinc=0) at /test/10.6_opt/storage/innobase/include/dict0mem.h:1171 #6 0x000055b08d1cf386 in btr_pcur_open_low (level=0, mtr=0x14af6c1bcd10, autoinc=<optimized out>, cursor=0x14af6c1bc5c0, latch_mode=2, mode=PAGE_CUR_LE, tuple=0x14af3c288780, index=0x14af3c25aae0) at /test/10.6_opt/storage/innobase/include/btr0pcur.ic:439 #7 row_ins_clust_index_entry_low (flags=2, mode=2, index=0x14af3c25aae0, n_uniq=0, entry=0x14af3c288780, n_ext=0, thr=0x14af3c25c478) at /test/10.6_opt/storage/innobase/row/row0ins.cc:2632 #8 0x000055b08d1d0fb9 in row_ins_clust_index_entry (index=0x14af3c25aae0, entry=0x14af3c288780, thr=0x14af3c25c478, n_ext=0) at /test/10.6_opt/storage/innobase/row/row0ins.cc:3255 #9 0x000055b08d1d16a1 in row_ins_index_entry (thr=0x14af3c25c478, entry=<optimized out>, index=<optimized out>) at /test/10.6_opt/storage/innobase/row/row0ins.cc:3380 #10 row_ins_index_entry_step (thr=0x14af3c25c478, node=<optimized out>) at /test/10.6_opt/storage/innobase/row/row0ins.cc:3549 #11 row_ins (thr=0x14af3c25c478, node=<optimized out>) at /test/10.6_opt/storage/innobase/row/row0ins.cc:3695 #12 row_ins_step (thr=thr@entry=0x14af3c25c478) at /test/10.6_opt/storage/innobase/row/row0ins.cc:3837 #13 0x000055b08d1e1c3d in row_insert_for_mysql (mysql_rec=mysql_rec@entry=0x14af3c028ef8 "\375\001", prebuilt=0x14af3c25bd80, ins_mode=ROW_INS_NORMAL) at /test/10.6_opt/storage/innobase/row/row0mysql.cc:1384 #14 0x000055b08d1338eb in ha_innobase::write_row (this=0x14af3c25b550, record=0x14af3c028ef8 "\375\001") at /test/10.6_opt/storage/innobase/handler/ha_innodb.cc:7361 #15 0x000055b08ce132e8 in handler::ha_write_row (this=0x14af3c25b550, buf=0x14af3c028ef8 "\375\001") at /test/10.6_opt/sql/handler.cc:7151 #16 0x000055b08cbb730d in write_record (thd=0x14af3c000c58, table=0x14af3c25b148, info=info@entry=0x14af3c012300, sink=0x0) at /test/10.6_opt/sql/sql_insert.cc:2106 #17 0x000055b08cbb7f03 in select_insert::send_data (this=0x14af3c0122b0, values=<optimized out>) at /test/10.6_opt/sql/sql_insert.cc:4076 #18 0x000055b08cc475fe in select_result_sink::send_data_with_check (u=<optimized out>, sent=<optimized out>, items=@0x14af3c010e70: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14af3c0112d0, last = 0x14af3c0112d0, elements = 1}, <No data fields>}, this=<optimized out>) at /test/10.6_opt/sql/sql_class.h:5377 #19 select_result_sink::send_data_with_check (sent=<optimized out>, u=<optimized out>, items=@0x14af3c010e70: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14af3c0112d0, last = 0x14af3c0112d0, elements = 1}, <No data fields>}, this=<optimized out>) at /test/10.6_opt/sql/sql_class.h:5367 #20 end_send (join=0x14af3c012368, join_tab=0x14af3c013930, end_of_records=<optimized out>) at /test/10.6_opt/sql/sql_select.cc:21859 #21 0x000055b08cc1e617 in evaluate_join_record (join=join@entry=0x14af3c012368, join_tab=join_tab@entry=0x14af3c013580, error=<optimized out>) at /test/10.6_opt/sql/sql_select.cc:20882 #22 0x000055b08cc304cb in sub_select (end_of_records=false, join_tab=0x14af3c013580, join=0x14af3c012368) at /test/10.6_opt/sql/sql_select.cc:20659 #23 sub_select (join=0x14af3c012368, join_tab=0x14af3c013580, end_of_records=false) at /test/10.6_opt/sql/sql_select.cc:20588 #24 0x000055b08cc5e8c2 in do_select (procedure=<optimized out>, join=0x14af3c012368) at /test/10.6_opt/sql/sql_select.cc:20206 #25 JOIN::exec_inner (this=0x14af3c012368) at /test/10.6_opt/sql/sql_select.cc:4476 #26 0x000055b08cc5eb58 in JOIN::exec (this=this@entry=0x14af3c012368) at /test/10.6_opt/sql/sql_select.cc:4256 #27 0x000055b08cc5cbd8 in mysql_select (thd=0x14af3c000c58, tables=0x14af3c011328, fields=<optimized out>, conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2202245794560, result=0x14af3c0122b0, unit=0x14af3c004c68, select_lex=0x14af3c010d20) at /test/10.6_opt/sql/sql_select.cc:4729 #28 0x000055b08cc5d5d7 in handle_select (thd=thd@entry=0x14af3c000c58, lex=lex@entry=0x14af3c004ba0, result=result@entry=0x14af3c0122b0, setup_tables_done_option=setup_tables_done_option@entry=1073741824) at /test/10.6_opt/sql/sql_select.cc:417 #29 0x000055b08cbfb8e5 in mysql_execute_command (thd=0x14af3c000c58) at /test/10.6_opt/sql/sql_parse.cc:4599 #30 0x000055b08cbe7096 in mysql_parse (thd=0x14af3c000c58, rawbuf=<optimized out>, length=<optimized out>, parser_state=<optimized out>) at /test/10.6_opt/sql/sql_parse.cc:7906 #31 0x000055b08cbf2978 in dispatch_command (command=COM_QUERY, thd=0x14af3c000c58, packet=0x14af3c008059 "INSERT INTO t1(c) SELECT seq FROM seq_1_to_500", packet_length=46) at /test/10.6_opt/sql/sql_class.h:1295 #32 0x000055b08cbf4d76 in do_command (thd=0x14af3c000c58) at /test/10.6_opt/sql/sql_parse.cc:1365 #33 0x000055b08ccf9e81 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55b08fa98358, put_in_cache=put_in_cache@entry=true) at /test/10.6_opt/sql/sql_connect.cc:1410 #34 0x000055b08ccfa2fd in handle_one_connection (arg=arg@entry=0x55b08fa98358) at /test/10.6_opt/sql/sql_connect.cc:1312 #35 0x000055b08d083b49 in pfs_spawn_thread (arg=0x55b08fa1f118) at /test/10.6_opt/storage/perfschema/pfs.cc:2201 #36 0x000014af81370609 in start_thread (arg=<optimized out>) at pthread_create.c:477 #37 0x000014af80f5f293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            Roel Roel Van de Paar added a comment - - edited

            Post-patch the testcase (and related ones) do not crash.

            Roel Roel Van de Paar added a comment - - edited Post-patch the testcase (and related ones) do not crash.

            People

              thiru Thirunarayanan Balathandayuthapani
              Roel Roel Van de Paar
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.