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

Assertion `index->n_fields >= index->n_core_fields || index->in_instant_init' failed

    XMLWordPrintable

Details

    • Can result in hang or crash
    • Q4/2026 Server Development

    Description

        --source include/have_innodb.inc
        --source include/have_debug_sync.inc
        CREATE TABLE t1 (a INT PRIMARY KEY, b INT) ENGINE=InnoDB;
        --connect (con1,localhost,root)
        SET DEBUG_SYNC='blob_write_middle SIGNAL s WAIT_FOR ever';
        --send ALTER TABLE t1 DROP COLUMN b, ALGORITHM=INSTANT
        --connection default
        SET DEBUG_SYNC='now WAIT_FOR s';
        FLUSH ENGINE LOGS;
        --source include/kill_mysqld.inc
        --disconnect con1
        --let $restart_parameters= --innodb-log-recovery-target=18446744073709551615
        --source include/start_mysqld.inc
        SELECT COUNT(*) FROM t1;
        --let $restart_parameters=
        --source include/restart_mysqld.inc
        DROP TABLE t1;
      

      Leads to:

      INFO: no cores found at data*/core nor at node*/core, and no *SAN or Valgrind report found in var/log/mysqld.1.err

      CS 13.0.2 620a4b5624222048fece7fe1789978ae0675cae2 (Debug, Clang 22.1.8-20260621) Build 25/09/2026

      mariadbd: /test/13.0_dbg/storage/innobase/rem/rem0rec.cc:839: rec_offs *rec_get_offsets_func(const rec_t *, const dict_index_t *, rec_offs *, ulint, ulint, const char *, unsigned int, mem_heap_t **): Assertion `index->n_fields >= index->n_core_fields || index->in_instant_init' failed.
      

      CS 13.0.2 620a4b5624222048fece7fe1789978ae0675cae2 (Debug, Clang 22.1.8-20260621) Build 25/09/2026

      Core was generated by `/test/MD250926-mariadb-13.0.2-linux-x86_64-dbg/bin/mariadbd --defaults-group-su'.
      Program terminated with signal SIGABRT, Aborted.
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
       
      [Current thread is 1 (LWP 1327239)]
      (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  0x00007c06d2c4527e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
      #4  0x00007c06d2c288ff in __GI_abort () at ./stdlib/abort.c:79
      #5  0x00007c06d2c2881b in __assert_fail_base (fmt=0x7c06d2dd1208 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x56a4607590a0 "index->n_fields >= index->n_core_fields || index->in_instant_init", file=file@entry=0x56a460758aa8 "/test/13.0_dbg/storage/innobase/rem/rem0rec.cc", line=line@entry=839, function=function@entry=0x56a460759017 "rec_offs *rec_get_offsets_func(const rec_t *, const dict_index_t *, rec_offs *, ulint, ulint, const char *, unsigned int, mem_heap_t **)") at ./assert/assert.c:96
      #6  0x00007c06d2c3b517 in __assert_fail (assertion=0x56a4607590a0 "index->n_fields >= index->n_core_fields || index->in_instant_init", file=0x56a460758aa8 "/test/13.0_dbg/storage/innobase/rem/rem0rec.cc", line=839, function=0x56a460759017 "rec_offs *rec_get_offsets_func(const rec_t *, const dict_index_t *, rec_offs *, ulint, ulint, const char *, unsigned int, mem_heap_t **)") at ./assert/assert.c:105
      #7  0x000056a45ff55c91 in rec_get_offsets_func (rec=0x7406ac08007f "\200", index=0x56a495817f48, offsets=0x0, n_core=4, n_fields=18446744073709551615, file=0x56a460793034 "/test/13.0_dbg/storage/innobase/dict/dict0stats.cc", line=966, heap=0x7c06d06d9fe0)at /test/13.0_dbg/storage/innobase/rem/rem0rec.cc:838
      #8  0x000056a46015a894 in btr_estimate_number_of_different_key_vals (index=0x56a495817f48, bulk_trx_id=0)at /test/13.0_dbg/storage/innobase/dict/dict0stats.cc:964
      #9  0x000056a46015510d in dict_stats_update_transient_for_index (trx=0x7c06d1b25680, index=0x56a495817f48)at /test/13.0_dbg/storage/innobase/dict/dict0stats.cc:1167
      #10 0x000056a460154c32 in dict_stats_update_transient (trx=0x7c06d1b25680, table=0x56a49580f6f8)at /test/13.0_dbg/storage/innobase/dict/dict0stats.cc:1225
      #11 0x000056a45fdb44e4 in ha_innobase::statistics_init (this=0x7405e8032e10, table=0x56a49580f6f8, recalc=false)at /test/13.0_dbg/storage/innobase/handler/ha_innodb.cc:5839
      #12 0x000056a45fdcdf13 in ha_innobase::info_low (this=0x7405e8032e10, flag=282, is_analyze=false)at /test/13.0_dbg/storage/innobase/handler/ha_innodb.cc:14914
      #13 0x000056a45fdb671d in ha_innobase::info (this=0x7405e8032e10, flag=282)at /test/13.0_dbg/storage/innobase/handler/ha_innodb.cc:15218
      #14 0x000056a45fdb5468 in ha_innobase::open (this=0x7405e8032e10, name=0x7405e80314b0 "./test/t1")at /test/13.0_dbg/storage/innobase/handler/ha_innodb.cc:6115
      #15 0x000056a45f9e565a in handler::ha_open (this=0x7405e8032e10, table_arg=0x7405e802f770, name=0x7405e80314b0 "./test/t1", mode=2, test_if_locked=18, mem_root=0x0, partitions_to_open=0x0)at /test/13.0_dbg/sql/handler.cc:3984
      #16 0x000056a45f749dd8 in open_table_from_share (thd=0x7405e8000d60, share=0x7405e8030df0, alias=0x7405e8019d00, db_stat=33, prgflag=8, ha_open_flags=18, outparam=0x7405e802f770, is_create_table=false, partitions_to_open=0x0) at /test/13.0_dbg/sql/table.cc:4833
      #17 0x000056a45f515e9e in open_table (thd=0x7405e8000d60, table_list=0x7405e8019cb0, ot_ctx=0x7c06d06dcb68)at /test/13.0_dbg/sql/sql_base.cc:2322
      #18 0x000056a45f51af31 in open_and_process_table (thd=0x7405e8000d60, tables=0x7405e8019cb0, counter=0x7c06d06dcc1c, flags=0, prelocking_strategy=0x7c06d06dcc80, has_prelocking_list=false, ot_ctx=0x7c06d06dcb68) at /test/13.0_dbg/sql/sql_base.cc:4297
      #19 0x000056a45f519d7b in open_tables (thd=0x7405e8000d60, options=@0x7405e800688c: {m_options = DDL_options_st::OPT_NONE}, start=0x7c06d06dcc30, counter=0x7c06d06dcc1c, flags=0, prelocking_strategy=0x7c06d06dcc80) at /test/13.0_dbg/sql/sql_base.cc:4780
      #20 0x000056a45f51cd6a in open_and_lock_tables (thd=0x7405e8000d60, options=@0x7405e800688c: {m_options = DDL_options_st::OPT_NONE}, tables=0x7405e8019cb0, derived=true, flags=0, prelocking_strategy=0x7c06d06dcc80) at /test/13.0_dbg/sql/sql_base.cc:5807
      #21 0x000056a45f52aefe in open_and_lock_tables (thd=0x7405e8000d60, tables=0x7405e8019cb0, derived=true, flags=0)at /test/13.0_dbg/sql/sql_base.h:545
      #22 0x000056a45f5e31da in execute_sqlcom_select (thd=0x7405e8000d60, all_tables=0x7405e8019cb0) at /test/13.0_dbg/sql/sql_parse.cc:6124
      #23 0x000056a45f5d9d18 in mysql_execute_command (thd=0x7405e8000d60, is_called_from_prepared_stmt=false) at /test/13.0_dbg/sql/sql_parse.cc:3983
      #24 0x000056a45f5d2ba8 in mysql_parse (thd=0x7405e8000d60, rawbuf=0x7405e80194c0 "SELECT COUNT(*) FROM t1", length=23, parser_state=0x7c06d06de9f0) at /test/13.0_dbg/sql/sql_parse.cc:7930
      #25 0x000056a45f5d038e in dispatch_command (command=COM_QUERY, thd=0x7405e8000d60, packet=0x7405e800b6d1 "SELECT COUNT(*) FROM t1", packet_length=23, blocking=true) at /test/13.0_dbg/sql/sql_parse.cc:1903
      #26 0x000056a45f5d362a in do_command (thd=0x7405e8000d60, blocking=true)at /test/13.0_dbg/sql/sql_parse.cc:1437
      #27 0x000056a45f7a620e in do_handle_one_connection (connect=0x56a4959bf530, put_in_cache=true) at /test/13.0_dbg/sql/sql_connect.cc:1514
      #28 0x000056a45f7a5ff1 in handle_one_connection (arg=0x56a4959bf530)at /test/13.0_dbg/sql/sql_connect.cc:1426
      #29 0x00007c06d2c9cb84 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
      #30 0x00007c06d2d29ecc in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
      

      Bug Detection Matrix

          Rel    o/d  Build   Commit                                    UniqueID observed             
      CS  10.11  dbg  250926  307a82c97316ea0ed3fde318d19c0770ab898d89  INNODB_ERROR|Table X.X contains unrecognizable instant ALTER metadata
      CS  10.11  opt  250926  307a82c97316ea0ed3fde318d19c0770ab898d89  No bug found                  
      CS  11.4   dbg  250926  511d7527eb356aab52fa183456333c5ba9741bcf  INNODB_ERROR|Table X.X contains unrecognizable instant ALTER metadata
      CS  11.4   opt  250926  511d7527eb356aab52fa183456333c5ba9741bcf  No bug found                  
      CS  11.8   dbg  250926  e87b958d2e411af8e088d1716f99d06534e932f3  INNODB_ERROR|Table X.X contains unrecognizable instant ALTER metadata
      CS  11.8   opt  250926  e87b958d2e411af8e088d1716f99d06534e932f3  No bug found                  
      CS  12.3   dbg  250926  881b64e8add374802e1871814dd0a3a673a9b3e6  INNODB_ERROR|Table X.X contains unrecognizable instant ALTER metadata
      CS  12.3   opt  250926  881b64e8add374802e1871814dd0a3a673a9b3e6  No bug found                  
      CS  13.0   dbg  250926  620a4b5624222048fece7fe1789978ae0675cae2  index->n_fields >= index->n_core_fields || index->in_instant_init|SIGABRT|rec_get_offsets_func|btr_estimate_number_of_different_key_vals|dict_stats_update_transient_for_index|dict_stats_update_transient
      CS  13.0   opt  250926  620a4b5624222048fece7fe1789978ae0675cae2  No bug found                  
      CS  13.2   dbg  250926  45717ef4c736a6a92e0acf49399ce677bfcaea89  index->n_fields >= index->n_core_fields || index->in_instant_init|SIGABRT|rec_get_offsets_func|btr_estimate_number_of_different_key_vals|dict_stats_update_transient_for_index|dict_stats_update_transient
      CS  13.2   opt  250926  45717ef4c736a6a92e0acf49399ce677bfcaea89  No bug found                  
      ES  10.6   dbg  250926  aa3fb9800c358182ee2a1f8cca8ffbdd6d0a37eb  INNODB_ERROR|Table X.X contains unrecognizable instant ALTER metadata
      ES  10.6   opt  250926  aa3fb9800c358182ee2a1f8cca8ffbdd6d0a37eb  No bug found                  
      ES  11.4   dbg  250926  5fa1ee1c7342644dda74ff137ff55c4df79939cf  INNODB_ERROR|Table X.X contains unrecognizable instant ALTER metadata
      ES  11.4   opt  250926  5fa1ee1c7342644dda74ff137ff55c4df79939cf  No bug found                  
      ES  11.8   dbg  250926  1eae6f8f0c743cbff67675ae3e5cf9d25a5d8f61  INNODB_ERROR|Table X.X contains unrecognizable instant ALTER metadata
      ES  11.8   opt  250926  1eae6f8f0c743cbff67675ae3e5cf9d25a5d8f61  No bug found                  
      ES  12.3   dbg  250926  f46597716bc5fbf9081c0fa17bd3e0d6c9e9db1d  INNODB_ERROR|Table X.X contains unrecognizable instant ALTER metadata
      ES  12.3   opt  250926  f46597716bc5fbf9081c0fa17bd3e0d6c9e9db1d  No bug found                  
      

      Attachments

        Issue Links

          Activity

            People

              tafzeel Mohammad Tafzeel Shams
              saahil Saahil Alam
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:

                Time Tracking

                  Estimated:
                  Original Estimate - 0d
                  0d
                  Remaining:
                  Time Spent - 1.75h Remaining Estimate - 3.5d
                  3.5d
                  Logged:
                  Time Spent - 1.75h Remaining Estimate - 3.5d
                  1.75h

                  Git Integration

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